From 0201841b90d3a78ccec055fb58b0b797dc9f42c6 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 18 Jan 2022 09:39:19 +0000 Subject: [PATCH 01/63] Add initial work on frontend-core refactor --- packages/bbui/src/index.js | 3 - packages/builder/src/builderStore/uuid.js | 9 - packages/builder/src/constants/lucene.js | 55 - packages/client/package.json | 1 + packages/client/src/api/api.js | 97 - .../src/components/app/DataProvider.svelte | 5 +- .../app/dynamic-filter/DynamicFilter.svelte | 4 +- .../app/dynamic-filter/FilterModal.svelte | 22 +- packages/client/src/constants.js | 8 - packages/client/src/stores/state.js | 4 +- packages/client/src/utils/conditions.js | 6 +- packages/client/src/utils/helpers.js | 57 - .../frontend-core/node_modules/lodash/LICENSE | 47 + .../node_modules/lodash/README.md | 39 + .../node_modules/lodash/_DataView.js | 7 + .../node_modules/lodash/_Hash.js | 32 + .../node_modules/lodash/_LazyWrapper.js | 28 + .../node_modules/lodash/_ListCache.js | 32 + .../node_modules/lodash/_LodashWrapper.js | 22 + .../frontend-core/node_modules/lodash/_Map.js | 7 + .../node_modules/lodash/_MapCache.js | 32 + .../node_modules/lodash/_Promise.js | 7 + .../frontend-core/node_modules/lodash/_Set.js | 7 + .../node_modules/lodash/_SetCache.js | 27 + .../node_modules/lodash/_Stack.js | 27 + .../node_modules/lodash/_Symbol.js | 6 + .../node_modules/lodash/_Uint8Array.js | 6 + .../node_modules/lodash/_WeakMap.js | 7 + .../node_modules/lodash/_apply.js | 21 + .../node_modules/lodash/_arrayAggregator.js | 22 + .../node_modules/lodash/_arrayEach.js | 22 + .../node_modules/lodash/_arrayEachRight.js | 21 + .../node_modules/lodash/_arrayEvery.js | 23 + .../node_modules/lodash/_arrayFilter.js | 25 + .../node_modules/lodash/_arrayIncludes.js | 17 + .../node_modules/lodash/_arrayIncludesWith.js | 22 + .../node_modules/lodash/_arrayLikeKeys.js | 49 + .../node_modules/lodash/_arrayMap.js | 21 + .../node_modules/lodash/_arrayPush.js | 20 + .../node_modules/lodash/_arrayReduce.js | 26 + .../node_modules/lodash/_arrayReduceRight.js | 24 + .../node_modules/lodash/_arraySample.js | 15 + .../node_modules/lodash/_arraySampleSize.js | 17 + .../node_modules/lodash/_arrayShuffle.js | 15 + .../node_modules/lodash/_arraySome.js | 23 + .../node_modules/lodash/_asciiSize.js | 12 + .../node_modules/lodash/_asciiToArray.js | 12 + .../node_modules/lodash/_asciiWords.js | 15 + .../node_modules/lodash/_assignMergeValue.js | 20 + .../node_modules/lodash/_assignValue.js | 28 + .../node_modules/lodash/_assocIndexOf.js | 21 + .../node_modules/lodash/_baseAggregator.js | 21 + .../node_modules/lodash/_baseAssign.js | 17 + .../node_modules/lodash/_baseAssignIn.js | 17 + .../node_modules/lodash/_baseAssignValue.js | 25 + .../node_modules/lodash/_baseAt.js | 23 + .../node_modules/lodash/_baseClamp.js | 22 + .../node_modules/lodash/_baseClone.js | 166 + .../node_modules/lodash/_baseConforms.js | 18 + .../node_modules/lodash/_baseConformsTo.js | 27 + .../node_modules/lodash/_baseCreate.js | 30 + .../node_modules/lodash/_baseDelay.js | 21 + .../node_modules/lodash/_baseDifference.js | 67 + .../node_modules/lodash/_baseEach.js | 14 + .../node_modules/lodash/_baseEachRight.js | 14 + .../node_modules/lodash/_baseEvery.js | 21 + .../node_modules/lodash/_baseExtremum.js | 32 + .../node_modules/lodash/_baseFill.js | 32 + .../node_modules/lodash/_baseFilter.js | 21 + .../node_modules/lodash/_baseFindIndex.js | 24 + .../node_modules/lodash/_baseFindKey.js | 23 + .../node_modules/lodash/_baseFlatten.js | 38 + .../node_modules/lodash/_baseFor.js | 16 + .../node_modules/lodash/_baseForOwn.js | 16 + .../node_modules/lodash/_baseForOwnRight.js | 16 + .../node_modules/lodash/_baseForRight.js | 15 + .../node_modules/lodash/_baseFunctions.js | 19 + .../node_modules/lodash/_baseGet.js | 24 + .../node_modules/lodash/_baseGetAllKeys.js | 20 + .../node_modules/lodash/_baseGetTag.js | 28 + .../node_modules/lodash/_baseGt.js | 14 + .../node_modules/lodash/_baseHas.js | 19 + .../node_modules/lodash/_baseHasIn.js | 13 + .../node_modules/lodash/_baseInRange.js | 18 + .../node_modules/lodash/_baseIndexOf.js | 20 + .../node_modules/lodash/_baseIndexOfWith.js | 23 + .../node_modules/lodash/_baseIntersection.js | 74 + .../node_modules/lodash/_baseInverter.js | 21 + .../node_modules/lodash/_baseInvoke.js | 24 + .../node_modules/lodash/_baseIsArguments.js | 18 + .../node_modules/lodash/_baseIsArrayBuffer.js | 17 + .../node_modules/lodash/_baseIsDate.js | 18 + .../node_modules/lodash/_baseIsEqual.js | 28 + .../node_modules/lodash/_baseIsEqualDeep.js | 83 + .../node_modules/lodash/_baseIsMap.js | 18 + .../node_modules/lodash/_baseIsMatch.js | 62 + .../node_modules/lodash/_baseIsNaN.js | 12 + .../node_modules/lodash/_baseIsNative.js | 47 + .../node_modules/lodash/_baseIsRegExp.js | 18 + .../node_modules/lodash/_baseIsSet.js | 18 + .../node_modules/lodash/_baseIsTypedArray.js | 60 + .../node_modules/lodash/_baseIteratee.js | 31 + .../node_modules/lodash/_baseKeys.js | 30 + .../node_modules/lodash/_baseKeysIn.js | 33 + .../node_modules/lodash/_baseLodash.js | 10 + .../node_modules/lodash/_baseLt.js | 14 + .../node_modules/lodash/_baseMap.js | 22 + .../node_modules/lodash/_baseMatches.js | 22 + .../lodash/_baseMatchesProperty.js | 33 + .../node_modules/lodash/_baseMean.js | 20 + .../node_modules/lodash/_baseMerge.js | 42 + .../node_modules/lodash/_baseMergeDeep.js | 94 + .../node_modules/lodash/_baseNth.js | 20 + .../node_modules/lodash/_baseOrderBy.js | 49 + .../node_modules/lodash/_basePick.js | 19 + .../node_modules/lodash/_basePickBy.js | 30 + .../node_modules/lodash/_baseProperty.js | 14 + .../node_modules/lodash/_basePropertyDeep.js | 16 + .../node_modules/lodash/_basePropertyOf.js | 14 + .../node_modules/lodash/_basePullAll.js | 51 + .../node_modules/lodash/_basePullAt.js | 37 + .../node_modules/lodash/_baseRandom.js | 18 + .../node_modules/lodash/_baseRange.js | 28 + .../node_modules/lodash/_baseReduce.js | 23 + .../node_modules/lodash/_baseRepeat.js | 35 + .../node_modules/lodash/_baseRest.js | 17 + .../node_modules/lodash/_baseSample.js | 15 + .../node_modules/lodash/_baseSampleSize.js | 18 + .../node_modules/lodash/_baseSet.js | 51 + .../node_modules/lodash/_baseSetData.js | 17 + .../node_modules/lodash/_baseSetToString.js | 22 + .../node_modules/lodash/_baseShuffle.js | 15 + .../node_modules/lodash/_baseSlice.js | 31 + .../node_modules/lodash/_baseSome.js | 22 + .../node_modules/lodash/_baseSortBy.js | 21 + .../node_modules/lodash/_baseSortedIndex.js | 42 + .../node_modules/lodash/_baseSortedIndexBy.js | 67 + .../node_modules/lodash/_baseSortedUniq.js | 30 + .../node_modules/lodash/_baseSum.js | 24 + .../node_modules/lodash/_baseTimes.js | 20 + .../node_modules/lodash/_baseToNumber.js | 24 + .../node_modules/lodash/_baseToPairs.js | 18 + .../node_modules/lodash/_baseToString.js | 37 + .../node_modules/lodash/_baseTrim.js | 19 + .../node_modules/lodash/_baseUnary.js | 14 + .../node_modules/lodash/_baseUniq.js | 72 + .../node_modules/lodash/_baseUnset.js | 20 + .../node_modules/lodash/_baseUpdate.js | 18 + .../node_modules/lodash/_baseValues.js | 19 + .../node_modules/lodash/_baseWhile.js | 26 + .../node_modules/lodash/_baseWrapperValue.js | 25 + .../node_modules/lodash/_baseXor.js | 36 + .../node_modules/lodash/_baseZipObject.js | 23 + .../node_modules/lodash/_cacheHas.js | 13 + .../lodash/_castArrayLikeObject.js | 14 + .../node_modules/lodash/_castFunction.js | 14 + .../node_modules/lodash/_castPath.js | 21 + .../node_modules/lodash/_castRest.js | 14 + .../node_modules/lodash/_castSlice.js | 18 + .../node_modules/lodash/_charsEndIndex.js | 19 + .../node_modules/lodash/_charsStartIndex.js | 20 + .../node_modules/lodash/_cloneArrayBuffer.js | 16 + .../node_modules/lodash/_cloneBuffer.js | 35 + .../node_modules/lodash/_cloneDataView.js | 16 + .../node_modules/lodash/_cloneRegExp.js | 17 + .../node_modules/lodash/_cloneSymbol.js | 18 + .../node_modules/lodash/_cloneTypedArray.js | 16 + .../node_modules/lodash/_compareAscending.js | 41 + .../node_modules/lodash/_compareMultiple.js | 44 + .../node_modules/lodash/_composeArgs.js | 39 + .../node_modules/lodash/_composeArgsRight.js | 41 + .../node_modules/lodash/_copyArray.js | 20 + .../node_modules/lodash/_copyObject.js | 40 + .../node_modules/lodash/_copySymbols.js | 16 + .../node_modules/lodash/_copySymbolsIn.js | 16 + .../node_modules/lodash/_coreJsData.js | 6 + .../node_modules/lodash/_countHolders.js | 21 + .../node_modules/lodash/_createAggregator.js | 23 + .../node_modules/lodash/_createAssigner.js | 37 + .../node_modules/lodash/_createBaseEach.js | 32 + .../node_modules/lodash/_createBaseFor.js | 25 + .../node_modules/lodash/_createBind.js | 28 + .../node_modules/lodash/_createCaseFirst.js | 33 + .../node_modules/lodash/_createCompounder.js | 24 + .../node_modules/lodash/_createCtor.js | 37 + .../node_modules/lodash/_createCurry.js | 46 + .../node_modules/lodash/_createFind.js | 25 + .../node_modules/lodash/_createFlow.js | 78 + .../node_modules/lodash/_createHybrid.js | 92 + .../node_modules/lodash/_createInverter.js | 17 + .../lodash/_createMathOperation.js | 38 + .../node_modules/lodash/_createOver.js | 27 + .../node_modules/lodash/_createPadding.js | 33 + .../node_modules/lodash/_createPartial.js | 43 + .../node_modules/lodash/_createRange.js | 30 + .../node_modules/lodash/_createRecurry.js | 56 + .../lodash/_createRelationalOperation.js | 20 + .../node_modules/lodash/_createRound.js | 35 + .../node_modules/lodash/_createSet.js | 19 + .../node_modules/lodash/_createToPairs.js | 30 + .../node_modules/lodash/_createWrap.js | 106 + .../lodash/_customDefaultsAssignIn.js | 29 + .../lodash/_customDefaultsMerge.js | 28 + .../node_modules/lodash/_customOmitClone.js | 16 + .../node_modules/lodash/_deburrLetter.js | 71 + .../node_modules/lodash/_defineProperty.js | 11 + .../node_modules/lodash/_equalArrays.js | 84 + .../node_modules/lodash/_equalByTag.js | 112 + .../node_modules/lodash/_equalObjects.js | 90 + .../node_modules/lodash/_escapeHtmlChar.js | 21 + .../node_modules/lodash/_escapeStringChar.js | 22 + .../node_modules/lodash/_flatRest.js | 16 + .../node_modules/lodash/_freeGlobal.js | 4 + .../node_modules/lodash/_getAllKeys.js | 16 + .../node_modules/lodash/_getAllKeysIn.js | 17 + .../node_modules/lodash/_getData.js | 15 + .../node_modules/lodash/_getFuncName.js | 31 + .../node_modules/lodash/_getHolder.js | 13 + .../node_modules/lodash/_getMapData.js | 18 + .../node_modules/lodash/_getMatchData.js | 24 + .../node_modules/lodash/_getNative.js | 17 + .../node_modules/lodash/_getPrototype.js | 6 + .../node_modules/lodash/_getRawTag.js | 46 + .../node_modules/lodash/_getSymbols.js | 30 + .../node_modules/lodash/_getSymbolsIn.js | 25 + .../node_modules/lodash/_getTag.js | 58 + .../node_modules/lodash/_getValue.js | 13 + .../node_modules/lodash/_getView.js | 33 + .../node_modules/lodash/_getWrapDetails.js | 17 + .../node_modules/lodash/_hasPath.js | 39 + .../node_modules/lodash/_hasUnicode.js | 26 + .../node_modules/lodash/_hasUnicodeWord.js | 15 + .../node_modules/lodash/_hashClear.js | 15 + .../node_modules/lodash/_hashDelete.js | 17 + .../node_modules/lodash/_hashGet.js | 30 + .../node_modules/lodash/_hashHas.js | 23 + .../node_modules/lodash/_hashSet.js | 23 + .../node_modules/lodash/_initCloneArray.js | 26 + .../node_modules/lodash/_initCloneByTag.js | 77 + .../node_modules/lodash/_initCloneObject.js | 18 + .../node_modules/lodash/_insertWrapDetails.js | 23 + .../node_modules/lodash/_isFlattenable.js | 20 + .../node_modules/lodash/_isIndex.js | 25 + .../node_modules/lodash/_isIterateeCall.js | 30 + .../node_modules/lodash/_isKey.js | 29 + .../node_modules/lodash/_isKeyable.js | 15 + .../node_modules/lodash/_isLaziable.js | 28 + .../node_modules/lodash/_isMaskable.js | 14 + .../node_modules/lodash/_isMasked.js | 20 + .../node_modules/lodash/_isPrototype.js | 18 + .../lodash/_isStrictComparable.js | 15 + .../node_modules/lodash/_iteratorToArray.js | 18 + .../node_modules/lodash/_lazyClone.js | 23 + .../node_modules/lodash/_lazyReverse.js | 23 + .../node_modules/lodash/_lazyValue.js | 69 + .../node_modules/lodash/_listCacheClear.js | 13 + .../node_modules/lodash/_listCacheDelete.js | 35 + .../node_modules/lodash/_listCacheGet.js | 19 + .../node_modules/lodash/_listCacheHas.js | 16 + .../node_modules/lodash/_listCacheSet.js | 26 + .../node_modules/lodash/_mapCacheClear.js | 21 + .../node_modules/lodash/_mapCacheDelete.js | 18 + .../node_modules/lodash/_mapCacheGet.js | 16 + .../node_modules/lodash/_mapCacheHas.js | 16 + .../node_modules/lodash/_mapCacheSet.js | 22 + .../node_modules/lodash/_mapToArray.js | 18 + .../lodash/_matchesStrictComparable.js | 20 + .../node_modules/lodash/_memoizeCapped.js | 26 + .../node_modules/lodash/_mergeData.js | 90 + .../node_modules/lodash/_metaMap.js | 6 + .../node_modules/lodash/_nativeCreate.js | 6 + .../node_modules/lodash/_nativeKeys.js | 6 + .../node_modules/lodash/_nativeKeysIn.js | 20 + .../node_modules/lodash/_nodeUtil.js | 30 + .../node_modules/lodash/_objectToString.js | 22 + .../node_modules/lodash/_overArg.js | 15 + .../node_modules/lodash/_overRest.js | 36 + .../node_modules/lodash/_parent.js | 16 + .../node_modules/lodash/_reEscape.js | 4 + .../node_modules/lodash/_reEvaluate.js | 4 + .../node_modules/lodash/_reInterpolate.js | 4 + .../node_modules/lodash/_realNames.js | 4 + .../node_modules/lodash/_reorder.js | 29 + .../node_modules/lodash/_replaceHolders.js | 29 + .../node_modules/lodash/_root.js | 9 + .../node_modules/lodash/_safeGet.js | 21 + .../node_modules/lodash/_setCacheAdd.js | 19 + .../node_modules/lodash/_setCacheHas.js | 14 + .../node_modules/lodash/_setData.js | 20 + .../node_modules/lodash/_setToArray.js | 18 + .../node_modules/lodash/_setToPairs.js | 18 + .../node_modules/lodash/_setToString.js | 14 + .../node_modules/lodash/_setWrapToString.js | 21 + .../node_modules/lodash/_shortOut.js | 37 + .../node_modules/lodash/_shuffleSelf.js | 28 + .../node_modules/lodash/_stackClear.js | 15 + .../node_modules/lodash/_stackDelete.js | 18 + .../node_modules/lodash/_stackGet.js | 14 + .../node_modules/lodash/_stackHas.js | 14 + .../node_modules/lodash/_stackSet.js | 34 + .../node_modules/lodash/_strictIndexOf.js | 23 + .../node_modules/lodash/_strictLastIndexOf.js | 21 + .../node_modules/lodash/_stringSize.js | 18 + .../node_modules/lodash/_stringToArray.js | 18 + .../node_modules/lodash/_stringToPath.js | 27 + .../node_modules/lodash/_toKey.js | 21 + .../node_modules/lodash/_toSource.js | 26 + .../node_modules/lodash/_trimmedEndIndex.js | 19 + .../node_modules/lodash/_unescapeHtmlChar.js | 21 + .../node_modules/lodash/_unicodeSize.js | 44 + .../node_modules/lodash/_unicodeToArray.js | 40 + .../node_modules/lodash/_unicodeWords.js | 69 + .../node_modules/lodash/_updateWrapDetails.js | 46 + .../node_modules/lodash/_wrapperClone.js | 23 + .../frontend-core/node_modules/lodash/add.js | 22 + .../node_modules/lodash/after.js | 42 + .../node_modules/lodash/array.js | 67 + .../frontend-core/node_modules/lodash/ary.js | 29 + .../node_modules/lodash/assign.js | 58 + .../node_modules/lodash/assignIn.js | 40 + .../node_modules/lodash/assignInWith.js | 38 + .../node_modules/lodash/assignWith.js | 37 + .../frontend-core/node_modules/lodash/at.js | 23 + .../node_modules/lodash/attempt.js | 35 + .../node_modules/lodash/before.js | 40 + .../frontend-core/node_modules/lodash/bind.js | 57 + .../node_modules/lodash/bindAll.js | 41 + .../node_modules/lodash/bindKey.js | 68 + .../node_modules/lodash/camelCase.js | 29 + .../node_modules/lodash/capitalize.js | 23 + .../node_modules/lodash/castArray.js | 44 + .../frontend-core/node_modules/lodash/ceil.js | 26 + .../node_modules/lodash/chain.js | 38 + .../node_modules/lodash/chunk.js | 50 + .../node_modules/lodash/clamp.js | 39 + .../node_modules/lodash/clone.js | 36 + .../node_modules/lodash/cloneDeep.js | 29 + .../node_modules/lodash/cloneDeepWith.js | 40 + .../node_modules/lodash/cloneWith.js | 42 + .../node_modules/lodash/collection.js | 30 + .../node_modules/lodash/commit.js | 33 + .../node_modules/lodash/compact.js | 31 + .../node_modules/lodash/concat.js | 43 + .../frontend-core/node_modules/lodash/cond.js | 60 + .../node_modules/lodash/conforms.js | 35 + .../node_modules/lodash/conformsTo.js | 32 + .../node_modules/lodash/constant.js | 26 + .../frontend-core/node_modules/lodash/core.js | 3877 ++ .../node_modules/lodash/core.min.js | 29 + .../node_modules/lodash/countBy.js | 40 + .../node_modules/lodash/create.js | 43 + .../node_modules/lodash/curry.js | 57 + .../node_modules/lodash/curryRight.js | 54 + .../frontend-core/node_modules/lodash/date.js | 3 + .../node_modules/lodash/debounce.js | 191 + .../node_modules/lodash/deburr.js | 45 + .../node_modules/lodash/defaultTo.js | 25 + .../node_modules/lodash/defaults.js | 64 + .../node_modules/lodash/defaultsDeep.js | 30 + .../node_modules/lodash/defer.js | 26 + .../node_modules/lodash/delay.js | 28 + .../node_modules/lodash/difference.js | 33 + .../node_modules/lodash/differenceBy.js | 44 + .../node_modules/lodash/differenceWith.js | 40 + .../node_modules/lodash/divide.js | 22 + .../frontend-core/node_modules/lodash/drop.js | 38 + .../node_modules/lodash/dropRight.js | 39 + .../node_modules/lodash/dropRightWhile.js | 45 + .../node_modules/lodash/dropWhile.js | 45 + .../frontend-core/node_modules/lodash/each.js | 1 + .../node_modules/lodash/eachRight.js | 1 + .../node_modules/lodash/endsWith.js | 43 + .../node_modules/lodash/entries.js | 1 + .../node_modules/lodash/entriesIn.js | 1 + .../frontend-core/node_modules/lodash/eq.js | 37 + .../node_modules/lodash/escape.js | 43 + .../node_modules/lodash/escapeRegExp.js | 32 + .../node_modules/lodash/every.js | 56 + .../node_modules/lodash/extend.js | 1 + .../node_modules/lodash/extendWith.js | 1 + .../frontend-core/node_modules/lodash/fill.js | 45 + .../node_modules/lodash/filter.js | 52 + .../frontend-core/node_modules/lodash/find.js | 42 + .../node_modules/lodash/findIndex.js | 55 + .../node_modules/lodash/findKey.js | 44 + .../node_modules/lodash/findLast.js | 25 + .../node_modules/lodash/findLastIndex.js | 59 + .../node_modules/lodash/findLastKey.js | 44 + .../node_modules/lodash/first.js | 1 + .../node_modules/lodash/flake.lock | 40 + .../node_modules/lodash/flake.nix | 20 + .../node_modules/lodash/flatMap.js | 29 + .../node_modules/lodash/flatMapDeep.js | 31 + .../node_modules/lodash/flatMapDepth.js | 31 + .../node_modules/lodash/flatten.js | 22 + .../node_modules/lodash/flattenDeep.js | 25 + .../node_modules/lodash/flattenDepth.js | 33 + .../frontend-core/node_modules/lodash/flip.js | 28 + .../node_modules/lodash/floor.js | 26 + .../frontend-core/node_modules/lodash/flow.js | 27 + .../node_modules/lodash/flowRight.js | 26 + .../node_modules/lodash/forEach.js | 41 + .../node_modules/lodash/forEachRight.js | 31 + .../node_modules/lodash/forIn.js | 39 + .../node_modules/lodash/forInRight.js | 37 + .../node_modules/lodash/forOwn.js | 36 + .../node_modules/lodash/forOwnRight.js | 34 + .../frontend-core/node_modules/lodash/fp.js | 2 + .../frontend-core/node_modules/lodash/fp/F.js | 1 + .../frontend-core/node_modules/lodash/fp/T.js | 1 + .../node_modules/lodash/fp/__.js | 1 + .../node_modules/lodash/fp/_baseConvert.js | 569 + .../node_modules/lodash/fp/_convertBrowser.js | 18 + .../node_modules/lodash/fp/_falseOptions.js | 7 + .../node_modules/lodash/fp/_mapping.js | 358 + .../node_modules/lodash/fp/_util.js | 16 + .../node_modules/lodash/fp/add.js | 5 + .../node_modules/lodash/fp/after.js | 5 + .../node_modules/lodash/fp/all.js | 1 + .../node_modules/lodash/fp/allPass.js | 1 + .../node_modules/lodash/fp/always.js | 1 + .../node_modules/lodash/fp/any.js | 1 + .../node_modules/lodash/fp/anyPass.js | 1 + .../node_modules/lodash/fp/apply.js | 1 + .../node_modules/lodash/fp/array.js | 2 + .../node_modules/lodash/fp/ary.js | 5 + .../node_modules/lodash/fp/assign.js | 5 + .../node_modules/lodash/fp/assignAll.js | 5 + .../node_modules/lodash/fp/assignAllWith.js | 5 + .../node_modules/lodash/fp/assignIn.js | 5 + .../node_modules/lodash/fp/assignInAll.js | 5 + .../node_modules/lodash/fp/assignInAllWith.js | 5 + .../node_modules/lodash/fp/assignInWith.js | 5 + .../node_modules/lodash/fp/assignWith.js | 5 + .../node_modules/lodash/fp/assoc.js | 1 + .../node_modules/lodash/fp/assocPath.js | 1 + .../node_modules/lodash/fp/at.js | 5 + .../node_modules/lodash/fp/attempt.js | 5 + .../node_modules/lodash/fp/before.js | 5 + .../node_modules/lodash/fp/bind.js | 5 + .../node_modules/lodash/fp/bindAll.js | 5 + .../node_modules/lodash/fp/bindKey.js | 5 + .../node_modules/lodash/fp/camelCase.js | 5 + .../node_modules/lodash/fp/capitalize.js | 5 + .../node_modules/lodash/fp/castArray.js | 5 + .../node_modules/lodash/fp/ceil.js | 5 + .../node_modules/lodash/fp/chain.js | 5 + .../node_modules/lodash/fp/chunk.js | 5 + .../node_modules/lodash/fp/clamp.js | 5 + .../node_modules/lodash/fp/clone.js | 5 + .../node_modules/lodash/fp/cloneDeep.js | 5 + .../node_modules/lodash/fp/cloneDeepWith.js | 5 + .../node_modules/lodash/fp/cloneWith.js | 5 + .../node_modules/lodash/fp/collection.js | 2 + .../node_modules/lodash/fp/commit.js | 5 + .../node_modules/lodash/fp/compact.js | 5 + .../node_modules/lodash/fp/complement.js | 1 + .../node_modules/lodash/fp/compose.js | 1 + .../node_modules/lodash/fp/concat.js | 5 + .../node_modules/lodash/fp/cond.js | 5 + .../node_modules/lodash/fp/conforms.js | 1 + .../node_modules/lodash/fp/conformsTo.js | 5 + .../node_modules/lodash/fp/constant.js | 5 + .../node_modules/lodash/fp/contains.js | 1 + .../node_modules/lodash/fp/convert.js | 18 + .../node_modules/lodash/fp/countBy.js | 5 + .../node_modules/lodash/fp/create.js | 5 + .../node_modules/lodash/fp/curry.js | 5 + .../node_modules/lodash/fp/curryN.js | 5 + .../node_modules/lodash/fp/curryRight.js | 5 + .../node_modules/lodash/fp/curryRightN.js | 5 + .../node_modules/lodash/fp/date.js | 2 + .../node_modules/lodash/fp/debounce.js | 5 + .../node_modules/lodash/fp/deburr.js | 5 + .../node_modules/lodash/fp/defaultTo.js | 5 + .../node_modules/lodash/fp/defaults.js | 5 + .../node_modules/lodash/fp/defaultsAll.js | 5 + .../node_modules/lodash/fp/defaultsDeep.js | 5 + .../node_modules/lodash/fp/defaultsDeepAll.js | 5 + .../node_modules/lodash/fp/defer.js | 5 + .../node_modules/lodash/fp/delay.js | 5 + .../node_modules/lodash/fp/difference.js | 5 + .../node_modules/lodash/fp/differenceBy.js | 5 + .../node_modules/lodash/fp/differenceWith.js | 5 + .../node_modules/lodash/fp/dissoc.js | 1 + .../node_modules/lodash/fp/dissocPath.js | 1 + .../node_modules/lodash/fp/divide.js | 5 + .../node_modules/lodash/fp/drop.js | 5 + .../node_modules/lodash/fp/dropLast.js | 1 + .../node_modules/lodash/fp/dropLastWhile.js | 1 + .../node_modules/lodash/fp/dropRight.js | 5 + .../node_modules/lodash/fp/dropRightWhile.js | 5 + .../node_modules/lodash/fp/dropWhile.js | 5 + .../node_modules/lodash/fp/each.js | 1 + .../node_modules/lodash/fp/eachRight.js | 1 + .../node_modules/lodash/fp/endsWith.js | 5 + .../node_modules/lodash/fp/entries.js | 1 + .../node_modules/lodash/fp/entriesIn.js | 1 + .../node_modules/lodash/fp/eq.js | 5 + .../node_modules/lodash/fp/equals.js | 1 + .../node_modules/lodash/fp/escape.js | 5 + .../node_modules/lodash/fp/escapeRegExp.js | 5 + .../node_modules/lodash/fp/every.js | 5 + .../node_modules/lodash/fp/extend.js | 1 + .../node_modules/lodash/fp/extendAll.js | 1 + .../node_modules/lodash/fp/extendAllWith.js | 1 + .../node_modules/lodash/fp/extendWith.js | 1 + .../node_modules/lodash/fp/fill.js | 5 + .../node_modules/lodash/fp/filter.js | 5 + .../node_modules/lodash/fp/find.js | 5 + .../node_modules/lodash/fp/findFrom.js | 5 + .../node_modules/lodash/fp/findIndex.js | 5 + .../node_modules/lodash/fp/findIndexFrom.js | 5 + .../node_modules/lodash/fp/findKey.js | 5 + .../node_modules/lodash/fp/findLast.js | 5 + .../node_modules/lodash/fp/findLastFrom.js | 5 + .../node_modules/lodash/fp/findLastIndex.js | 5 + .../lodash/fp/findLastIndexFrom.js | 5 + .../node_modules/lodash/fp/findLastKey.js | 5 + .../node_modules/lodash/fp/first.js | 1 + .../node_modules/lodash/fp/flatMap.js | 5 + .../node_modules/lodash/fp/flatMapDeep.js | 5 + .../node_modules/lodash/fp/flatMapDepth.js | 5 + .../node_modules/lodash/fp/flatten.js | 5 + .../node_modules/lodash/fp/flattenDeep.js | 5 + .../node_modules/lodash/fp/flattenDepth.js | 5 + .../node_modules/lodash/fp/flip.js | 5 + .../node_modules/lodash/fp/floor.js | 5 + .../node_modules/lodash/fp/flow.js | 5 + .../node_modules/lodash/fp/flowRight.js | 5 + .../node_modules/lodash/fp/forEach.js | 5 + .../node_modules/lodash/fp/forEachRight.js | 5 + .../node_modules/lodash/fp/forIn.js | 5 + .../node_modules/lodash/fp/forInRight.js | 5 + .../node_modules/lodash/fp/forOwn.js | 5 + .../node_modules/lodash/fp/forOwnRight.js | 5 + .../node_modules/lodash/fp/fromPairs.js | 5 + .../node_modules/lodash/fp/function.js | 2 + .../node_modules/lodash/fp/functions.js | 5 + .../node_modules/lodash/fp/functionsIn.js | 5 + .../node_modules/lodash/fp/get.js | 5 + .../node_modules/lodash/fp/getOr.js | 5 + .../node_modules/lodash/fp/groupBy.js | 5 + .../node_modules/lodash/fp/gt.js | 5 + .../node_modules/lodash/fp/gte.js | 5 + .../node_modules/lodash/fp/has.js | 5 + .../node_modules/lodash/fp/hasIn.js | 5 + .../node_modules/lodash/fp/head.js | 5 + .../node_modules/lodash/fp/identical.js | 1 + .../node_modules/lodash/fp/identity.js | 5 + .../node_modules/lodash/fp/inRange.js | 5 + .../node_modules/lodash/fp/includes.js | 5 + .../node_modules/lodash/fp/includesFrom.js | 5 + .../node_modules/lodash/fp/indexBy.js | 1 + .../node_modules/lodash/fp/indexOf.js | 5 + .../node_modules/lodash/fp/indexOfFrom.js | 5 + .../node_modules/lodash/fp/init.js | 1 + .../node_modules/lodash/fp/initial.js | 5 + .../node_modules/lodash/fp/intersection.js | 5 + .../node_modules/lodash/fp/intersectionBy.js | 5 + .../lodash/fp/intersectionWith.js | 5 + .../node_modules/lodash/fp/invert.js | 5 + .../node_modules/lodash/fp/invertBy.js | 5 + .../node_modules/lodash/fp/invertObj.js | 1 + .../node_modules/lodash/fp/invoke.js | 5 + .../node_modules/lodash/fp/invokeArgs.js | 5 + .../node_modules/lodash/fp/invokeArgsMap.js | 5 + .../node_modules/lodash/fp/invokeMap.js | 5 + .../node_modules/lodash/fp/isArguments.js | 5 + .../node_modules/lodash/fp/isArray.js | 5 + .../node_modules/lodash/fp/isArrayBuffer.js | 5 + .../node_modules/lodash/fp/isArrayLike.js | 5 + .../lodash/fp/isArrayLikeObject.js | 5 + .../node_modules/lodash/fp/isBoolean.js | 5 + .../node_modules/lodash/fp/isBuffer.js | 5 + .../node_modules/lodash/fp/isDate.js | 5 + .../node_modules/lodash/fp/isElement.js | 5 + .../node_modules/lodash/fp/isEmpty.js | 5 + .../node_modules/lodash/fp/isEqual.js | 5 + .../node_modules/lodash/fp/isEqualWith.js | 5 + .../node_modules/lodash/fp/isError.js | 5 + .../node_modules/lodash/fp/isFinite.js | 5 + .../node_modules/lodash/fp/isFunction.js | 5 + .../node_modules/lodash/fp/isInteger.js | 5 + .../node_modules/lodash/fp/isLength.js | 5 + .../node_modules/lodash/fp/isMap.js | 5 + .../node_modules/lodash/fp/isMatch.js | 5 + .../node_modules/lodash/fp/isMatchWith.js | 5 + .../node_modules/lodash/fp/isNaN.js | 5 + .../node_modules/lodash/fp/isNative.js | 5 + .../node_modules/lodash/fp/isNil.js | 5 + .../node_modules/lodash/fp/isNull.js | 5 + .../node_modules/lodash/fp/isNumber.js | 5 + .../node_modules/lodash/fp/isObject.js | 5 + .../node_modules/lodash/fp/isObjectLike.js | 5 + .../node_modules/lodash/fp/isPlainObject.js | 5 + .../node_modules/lodash/fp/isRegExp.js | 5 + .../node_modules/lodash/fp/isSafeInteger.js | 5 + .../node_modules/lodash/fp/isSet.js | 5 + .../node_modules/lodash/fp/isString.js | 5 + .../node_modules/lodash/fp/isSymbol.js | 5 + .../node_modules/lodash/fp/isTypedArray.js | 5 + .../node_modules/lodash/fp/isUndefined.js | 5 + .../node_modules/lodash/fp/isWeakMap.js | 5 + .../node_modules/lodash/fp/isWeakSet.js | 5 + .../node_modules/lodash/fp/iteratee.js | 5 + .../node_modules/lodash/fp/join.js | 5 + .../node_modules/lodash/fp/juxt.js | 1 + .../node_modules/lodash/fp/kebabCase.js | 5 + .../node_modules/lodash/fp/keyBy.js | 5 + .../node_modules/lodash/fp/keys.js | 5 + .../node_modules/lodash/fp/keysIn.js | 5 + .../node_modules/lodash/fp/lang.js | 2 + .../node_modules/lodash/fp/last.js | 5 + .../node_modules/lodash/fp/lastIndexOf.js | 5 + .../node_modules/lodash/fp/lastIndexOfFrom.js | 5 + .../node_modules/lodash/fp/lowerCase.js | 5 + .../node_modules/lodash/fp/lowerFirst.js | 5 + .../node_modules/lodash/fp/lt.js | 5 + .../node_modules/lodash/fp/lte.js | 5 + .../node_modules/lodash/fp/map.js | 5 + .../node_modules/lodash/fp/mapKeys.js | 5 + .../node_modules/lodash/fp/mapValues.js | 5 + .../node_modules/lodash/fp/matches.js | 1 + .../node_modules/lodash/fp/matchesProperty.js | 5 + .../node_modules/lodash/fp/math.js | 2 + .../node_modules/lodash/fp/max.js | 5 + .../node_modules/lodash/fp/maxBy.js | 5 + .../node_modules/lodash/fp/mean.js | 5 + .../node_modules/lodash/fp/meanBy.js | 5 + .../node_modules/lodash/fp/memoize.js | 5 + .../node_modules/lodash/fp/merge.js | 5 + .../node_modules/lodash/fp/mergeAll.js | 5 + .../node_modules/lodash/fp/mergeAllWith.js | 5 + .../node_modules/lodash/fp/mergeWith.js | 5 + .../node_modules/lodash/fp/method.js | 5 + .../node_modules/lodash/fp/methodOf.js | 5 + .../node_modules/lodash/fp/min.js | 5 + .../node_modules/lodash/fp/minBy.js | 5 + .../node_modules/lodash/fp/mixin.js | 5 + .../node_modules/lodash/fp/multiply.js | 5 + .../node_modules/lodash/fp/nAry.js | 1 + .../node_modules/lodash/fp/negate.js | 5 + .../node_modules/lodash/fp/next.js | 5 + .../node_modules/lodash/fp/noop.js | 5 + .../node_modules/lodash/fp/now.js | 5 + .../node_modules/lodash/fp/nth.js | 5 + .../node_modules/lodash/fp/nthArg.js | 5 + .../node_modules/lodash/fp/number.js | 2 + .../node_modules/lodash/fp/object.js | 2 + .../node_modules/lodash/fp/omit.js | 5 + .../node_modules/lodash/fp/omitAll.js | 1 + .../node_modules/lodash/fp/omitBy.js | 5 + .../node_modules/lodash/fp/once.js | 5 + .../node_modules/lodash/fp/orderBy.js | 5 + .../node_modules/lodash/fp/over.js | 5 + .../node_modules/lodash/fp/overArgs.js | 5 + .../node_modules/lodash/fp/overEvery.js | 5 + .../node_modules/lodash/fp/overSome.js | 5 + .../node_modules/lodash/fp/pad.js | 5 + .../node_modules/lodash/fp/padChars.js | 5 + .../node_modules/lodash/fp/padCharsEnd.js | 5 + .../node_modules/lodash/fp/padCharsStart.js | 5 + .../node_modules/lodash/fp/padEnd.js | 5 + .../node_modules/lodash/fp/padStart.js | 5 + .../node_modules/lodash/fp/parseInt.js | 5 + .../node_modules/lodash/fp/partial.js | 5 + .../node_modules/lodash/fp/partialRight.js | 5 + .../node_modules/lodash/fp/partition.js | 5 + .../node_modules/lodash/fp/path.js | 1 + .../node_modules/lodash/fp/pathEq.js | 1 + .../node_modules/lodash/fp/pathOr.js | 1 + .../node_modules/lodash/fp/paths.js | 1 + .../node_modules/lodash/fp/pick.js | 5 + .../node_modules/lodash/fp/pickAll.js | 1 + .../node_modules/lodash/fp/pickBy.js | 5 + .../node_modules/lodash/fp/pipe.js | 1 + .../node_modules/lodash/fp/placeholder.js | 6 + .../node_modules/lodash/fp/plant.js | 5 + .../node_modules/lodash/fp/pluck.js | 1 + .../node_modules/lodash/fp/prop.js | 1 + .../node_modules/lodash/fp/propEq.js | 1 + .../node_modules/lodash/fp/propOr.js | 1 + .../node_modules/lodash/fp/property.js | 1 + .../node_modules/lodash/fp/propertyOf.js | 5 + .../node_modules/lodash/fp/props.js | 1 + .../node_modules/lodash/fp/pull.js | 5 + .../node_modules/lodash/fp/pullAll.js | 5 + .../node_modules/lodash/fp/pullAllBy.js | 5 + .../node_modules/lodash/fp/pullAllWith.js | 5 + .../node_modules/lodash/fp/pullAt.js | 5 + .../node_modules/lodash/fp/random.js | 5 + .../node_modules/lodash/fp/range.js | 5 + .../node_modules/lodash/fp/rangeRight.js | 5 + .../node_modules/lodash/fp/rangeStep.js | 5 + .../node_modules/lodash/fp/rangeStepRight.js | 5 + .../node_modules/lodash/fp/rearg.js | 5 + .../node_modules/lodash/fp/reduce.js | 5 + .../node_modules/lodash/fp/reduceRight.js | 5 + .../node_modules/lodash/fp/reject.js | 5 + .../node_modules/lodash/fp/remove.js | 5 + .../node_modules/lodash/fp/repeat.js | 5 + .../node_modules/lodash/fp/replace.js | 5 + .../node_modules/lodash/fp/rest.js | 5 + .../node_modules/lodash/fp/restFrom.js | 5 + .../node_modules/lodash/fp/result.js | 5 + .../node_modules/lodash/fp/reverse.js | 5 + .../node_modules/lodash/fp/round.js | 5 + .../node_modules/lodash/fp/sample.js | 5 + .../node_modules/lodash/fp/sampleSize.js | 5 + .../node_modules/lodash/fp/seq.js | 2 + .../node_modules/lodash/fp/set.js | 5 + .../node_modules/lodash/fp/setWith.js | 5 + .../node_modules/lodash/fp/shuffle.js | 5 + .../node_modules/lodash/fp/size.js | 5 + .../node_modules/lodash/fp/slice.js | 5 + .../node_modules/lodash/fp/snakeCase.js | 5 + .../node_modules/lodash/fp/some.js | 5 + .../node_modules/lodash/fp/sortBy.js | 5 + .../node_modules/lodash/fp/sortedIndex.js | 5 + .../node_modules/lodash/fp/sortedIndexBy.js | 5 + .../node_modules/lodash/fp/sortedIndexOf.js | 5 + .../node_modules/lodash/fp/sortedLastIndex.js | 5 + .../lodash/fp/sortedLastIndexBy.js | 5 + .../lodash/fp/sortedLastIndexOf.js | 5 + .../node_modules/lodash/fp/sortedUniq.js | 5 + .../node_modules/lodash/fp/sortedUniqBy.js | 5 + .../node_modules/lodash/fp/split.js | 5 + .../node_modules/lodash/fp/spread.js | 5 + .../node_modules/lodash/fp/spreadFrom.js | 5 + .../node_modules/lodash/fp/startCase.js | 5 + .../node_modules/lodash/fp/startsWith.js | 5 + .../node_modules/lodash/fp/string.js | 2 + .../node_modules/lodash/fp/stubArray.js | 5 + .../node_modules/lodash/fp/stubFalse.js | 5 + .../node_modules/lodash/fp/stubObject.js | 5 + .../node_modules/lodash/fp/stubString.js | 5 + .../node_modules/lodash/fp/stubTrue.js | 5 + .../node_modules/lodash/fp/subtract.js | 5 + .../node_modules/lodash/fp/sum.js | 5 + .../node_modules/lodash/fp/sumBy.js | 5 + .../lodash/fp/symmetricDifference.js | 1 + .../lodash/fp/symmetricDifferenceBy.js | 1 + .../lodash/fp/symmetricDifferenceWith.js | 1 + .../node_modules/lodash/fp/tail.js | 5 + .../node_modules/lodash/fp/take.js | 5 + .../node_modules/lodash/fp/takeLast.js | 1 + .../node_modules/lodash/fp/takeLastWhile.js | 1 + .../node_modules/lodash/fp/takeRight.js | 5 + .../node_modules/lodash/fp/takeRightWhile.js | 5 + .../node_modules/lodash/fp/takeWhile.js | 5 + .../node_modules/lodash/fp/tap.js | 5 + .../node_modules/lodash/fp/template.js | 5 + .../lodash/fp/templateSettings.js | 5 + .../node_modules/lodash/fp/throttle.js | 5 + .../node_modules/lodash/fp/thru.js | 5 + .../node_modules/lodash/fp/times.js | 5 + .../node_modules/lodash/fp/toArray.js | 5 + .../node_modules/lodash/fp/toFinite.js | 5 + .../node_modules/lodash/fp/toInteger.js | 5 + .../node_modules/lodash/fp/toIterator.js | 5 + .../node_modules/lodash/fp/toJSON.js | 5 + .../node_modules/lodash/fp/toLength.js | 5 + .../node_modules/lodash/fp/toLower.js | 5 + .../node_modules/lodash/fp/toNumber.js | 5 + .../node_modules/lodash/fp/toPairs.js | 5 + .../node_modules/lodash/fp/toPairsIn.js | 5 + .../node_modules/lodash/fp/toPath.js | 5 + .../node_modules/lodash/fp/toPlainObject.js | 5 + .../node_modules/lodash/fp/toSafeInteger.js | 5 + .../node_modules/lodash/fp/toString.js | 5 + .../node_modules/lodash/fp/toUpper.js | 5 + .../node_modules/lodash/fp/transform.js | 5 + .../node_modules/lodash/fp/trim.js | 5 + .../node_modules/lodash/fp/trimChars.js | 5 + .../node_modules/lodash/fp/trimCharsEnd.js | 5 + .../node_modules/lodash/fp/trimCharsStart.js | 5 + .../node_modules/lodash/fp/trimEnd.js | 5 + .../node_modules/lodash/fp/trimStart.js | 5 + .../node_modules/lodash/fp/truncate.js | 5 + .../node_modules/lodash/fp/unapply.js | 1 + .../node_modules/lodash/fp/unary.js | 5 + .../node_modules/lodash/fp/unescape.js | 5 + .../node_modules/lodash/fp/union.js | 5 + .../node_modules/lodash/fp/unionBy.js | 5 + .../node_modules/lodash/fp/unionWith.js | 5 + .../node_modules/lodash/fp/uniq.js | 5 + .../node_modules/lodash/fp/uniqBy.js | 5 + .../node_modules/lodash/fp/uniqWith.js | 5 + .../node_modules/lodash/fp/uniqueId.js | 5 + .../node_modules/lodash/fp/unnest.js | 1 + .../node_modules/lodash/fp/unset.js | 5 + .../node_modules/lodash/fp/unzip.js | 5 + .../node_modules/lodash/fp/unzipWith.js | 5 + .../node_modules/lodash/fp/update.js | 5 + .../node_modules/lodash/fp/updateWith.js | 5 + .../node_modules/lodash/fp/upperCase.js | 5 + .../node_modules/lodash/fp/upperFirst.js | 5 + .../node_modules/lodash/fp/useWith.js | 1 + .../node_modules/lodash/fp/util.js | 2 + .../node_modules/lodash/fp/value.js | 5 + .../node_modules/lodash/fp/valueOf.js | 5 + .../node_modules/lodash/fp/values.js | 5 + .../node_modules/lodash/fp/valuesIn.js | 5 + .../node_modules/lodash/fp/where.js | 1 + .../node_modules/lodash/fp/whereEq.js | 1 + .../node_modules/lodash/fp/without.js | 5 + .../node_modules/lodash/fp/words.js | 5 + .../node_modules/lodash/fp/wrap.js | 5 + .../node_modules/lodash/fp/wrapperAt.js | 5 + .../node_modules/lodash/fp/wrapperChain.js | 5 + .../node_modules/lodash/fp/wrapperLodash.js | 5 + .../node_modules/lodash/fp/wrapperReverse.js | 5 + .../node_modules/lodash/fp/wrapperValue.js | 5 + .../node_modules/lodash/fp/xor.js | 5 + .../node_modules/lodash/fp/xorBy.js | 5 + .../node_modules/lodash/fp/xorWith.js | 5 + .../node_modules/lodash/fp/zip.js | 5 + .../node_modules/lodash/fp/zipAll.js | 5 + .../node_modules/lodash/fp/zipObj.js | 1 + .../node_modules/lodash/fp/zipObject.js | 5 + .../node_modules/lodash/fp/zipObjectDeep.js | 5 + .../node_modules/lodash/fp/zipWith.js | 5 + .../node_modules/lodash/fromPairs.js | 28 + .../node_modules/lodash/function.js | 25 + .../node_modules/lodash/functions.js | 31 + .../node_modules/lodash/functionsIn.js | 31 + .../frontend-core/node_modules/lodash/get.js | 33 + .../node_modules/lodash/groupBy.js | 41 + .../frontend-core/node_modules/lodash/gt.js | 29 + .../frontend-core/node_modules/lodash/gte.js | 30 + .../frontend-core/node_modules/lodash/has.js | 35 + .../node_modules/lodash/hasIn.js | 34 + .../frontend-core/node_modules/lodash/head.js | 23 + .../node_modules/lodash/identity.js | 21 + .../node_modules/lodash/inRange.js | 55 + .../node_modules/lodash/includes.js | 53 + .../node_modules/lodash/index.js | 1 + .../node_modules/lodash/indexOf.js | 42 + .../node_modules/lodash/initial.js | 22 + .../node_modules/lodash/intersection.js | 30 + .../node_modules/lodash/intersectionBy.js | 45 + .../node_modules/lodash/intersectionWith.js | 41 + .../node_modules/lodash/invert.js | 42 + .../node_modules/lodash/invertBy.js | 56 + .../node_modules/lodash/invoke.js | 24 + .../node_modules/lodash/invokeMap.js | 41 + .../node_modules/lodash/isArguments.js | 36 + .../node_modules/lodash/isArray.js | 26 + .../node_modules/lodash/isArrayBuffer.js | 27 + .../node_modules/lodash/isArrayLike.js | 33 + .../node_modules/lodash/isArrayLikeObject.js | 33 + .../node_modules/lodash/isBoolean.js | 29 + .../node_modules/lodash/isBuffer.js | 38 + .../node_modules/lodash/isDate.js | 27 + .../node_modules/lodash/isElement.js | 25 + .../node_modules/lodash/isEmpty.js | 77 + .../node_modules/lodash/isEqual.js | 35 + .../node_modules/lodash/isEqualWith.js | 41 + .../node_modules/lodash/isError.js | 36 + .../node_modules/lodash/isFinite.js | 36 + .../node_modules/lodash/isFunction.js | 37 + .../node_modules/lodash/isInteger.js | 33 + .../node_modules/lodash/isLength.js | 35 + .../node_modules/lodash/isMap.js | 27 + .../node_modules/lodash/isMatch.js | 36 + .../node_modules/lodash/isMatchWith.js | 41 + .../node_modules/lodash/isNaN.js | 38 + .../node_modules/lodash/isNative.js | 40 + .../node_modules/lodash/isNil.js | 25 + .../node_modules/lodash/isNull.js | 22 + .../node_modules/lodash/isNumber.js | 38 + .../node_modules/lodash/isObject.js | 31 + .../node_modules/lodash/isObjectLike.js | 29 + .../node_modules/lodash/isPlainObject.js | 62 + .../node_modules/lodash/isRegExp.js | 27 + .../node_modules/lodash/isSafeInteger.js | 37 + .../node_modules/lodash/isSet.js | 27 + .../node_modules/lodash/isString.js | 30 + .../node_modules/lodash/isSymbol.js | 29 + .../node_modules/lodash/isTypedArray.js | 27 + .../node_modules/lodash/isUndefined.js | 22 + .../node_modules/lodash/isWeakMap.js | 28 + .../node_modules/lodash/isWeakSet.js | 28 + .../node_modules/lodash/iteratee.js | 53 + .../frontend-core/node_modules/lodash/join.js | 26 + .../node_modules/lodash/kebabCase.js | 28 + .../node_modules/lodash/keyBy.js | 36 + .../frontend-core/node_modules/lodash/keys.js | 37 + .../node_modules/lodash/keysIn.js | 32 + .../frontend-core/node_modules/lodash/lang.js | 58 + .../frontend-core/node_modules/lodash/last.js | 20 + .../node_modules/lodash/lastIndexOf.js | 46 + .../node_modules/lodash/lodash.js | 17209 +++++++++ .../node_modules/lodash/lodash.min.js | 140 + .../node_modules/lodash/lowerCase.js | 27 + .../node_modules/lodash/lowerFirst.js | 22 + .../frontend-core/node_modules/lodash/lt.js | 29 + .../frontend-core/node_modules/lodash/lte.js | 30 + .../frontend-core/node_modules/lodash/map.js | 53 + .../node_modules/lodash/mapKeys.js | 36 + .../node_modules/lodash/mapValues.js | 43 + .../node_modules/lodash/matches.js | 46 + .../node_modules/lodash/matchesProperty.js | 44 + .../frontend-core/node_modules/lodash/math.js | 17 + .../frontend-core/node_modules/lodash/max.js | 29 + .../node_modules/lodash/maxBy.js | 34 + .../frontend-core/node_modules/lodash/mean.js | 22 + .../node_modules/lodash/meanBy.js | 31 + .../node_modules/lodash/memoize.js | 73 + .../node_modules/lodash/merge.js | 39 + .../node_modules/lodash/mergeWith.js | 39 + .../node_modules/lodash/method.js | 34 + .../node_modules/lodash/methodOf.js | 33 + .../frontend-core/node_modules/lodash/min.js | 29 + .../node_modules/lodash/minBy.js | 34 + .../node_modules/lodash/mixin.js | 74 + .../node_modules/lodash/multiply.js | 22 + .../node_modules/lodash/negate.js | 40 + .../frontend-core/node_modules/lodash/next.js | 35 + .../frontend-core/node_modules/lodash/noop.js | 17 + .../frontend-core/node_modules/lodash/now.js | 23 + .../frontend-core/node_modules/lodash/nth.js | 29 + .../node_modules/lodash/nthArg.js | 32 + .../node_modules/lodash/number.js | 5 + .../node_modules/lodash/object.js | 49 + .../frontend-core/node_modules/lodash/omit.js | 57 + .../node_modules/lodash/omitBy.js | 29 + .../frontend-core/node_modules/lodash/once.js | 25 + .../node_modules/lodash/orderBy.js | 47 + .../frontend-core/node_modules/lodash/over.js | 24 + .../node_modules/lodash/overArgs.js | 61 + .../node_modules/lodash/overEvery.js | 34 + .../node_modules/lodash/overSome.js | 37 + .../node_modules/lodash/package.json | 17 + .../frontend-core/node_modules/lodash/pad.js | 49 + .../node_modules/lodash/padEnd.js | 39 + .../node_modules/lodash/padStart.js | 39 + .../node_modules/lodash/parseInt.js | 43 + .../node_modules/lodash/partial.js | 50 + .../node_modules/lodash/partialRight.js | 49 + .../node_modules/lodash/partition.js | 43 + .../frontend-core/node_modules/lodash/pick.js | 25 + .../node_modules/lodash/pickBy.js | 37 + .../node_modules/lodash/plant.js | 48 + .../node_modules/lodash/property.js | 32 + .../node_modules/lodash/propertyOf.js | 30 + .../frontend-core/node_modules/lodash/pull.js | 29 + .../node_modules/lodash/pullAll.js | 29 + .../node_modules/lodash/pullAllBy.js | 33 + .../node_modules/lodash/pullAllWith.js | 32 + .../node_modules/lodash/pullAt.js | 43 + .../node_modules/lodash/random.js | 82 + .../node_modules/lodash/range.js | 46 + .../node_modules/lodash/rangeRight.js | 41 + .../node_modules/lodash/rearg.js | 33 + .../node_modules/lodash/reduce.js | 51 + .../node_modules/lodash/reduceRight.js | 36 + .../node_modules/lodash/reject.js | 46 + .../node_modules/lodash/release.md | 48 + .../node_modules/lodash/remove.js | 53 + .../node_modules/lodash/repeat.js | 37 + .../node_modules/lodash/replace.js | 29 + .../frontend-core/node_modules/lodash/rest.js | 40 + .../node_modules/lodash/result.js | 56 + .../node_modules/lodash/reverse.js | 34 + .../node_modules/lodash/round.js | 26 + .../node_modules/lodash/sample.js | 24 + .../node_modules/lodash/sampleSize.js | 37 + .../frontend-core/node_modules/lodash/seq.js | 16 + .../frontend-core/node_modules/lodash/set.js | 35 + .../node_modules/lodash/setWith.js | 32 + .../node_modules/lodash/shuffle.js | 25 + .../frontend-core/node_modules/lodash/size.js | 46 + .../node_modules/lodash/slice.js | 37 + .../node_modules/lodash/snakeCase.js | 28 + .../frontend-core/node_modules/lodash/some.js | 51 + .../node_modules/lodash/sortBy.js | 48 + .../node_modules/lodash/sortedIndex.js | 24 + .../node_modules/lodash/sortedIndexBy.js | 33 + .../node_modules/lodash/sortedIndexOf.js | 31 + .../node_modules/lodash/sortedLastIndex.js | 25 + .../node_modules/lodash/sortedLastIndexBy.js | 33 + .../node_modules/lodash/sortedLastIndexOf.js | 31 + .../node_modules/lodash/sortedUniq.js | 24 + .../node_modules/lodash/sortedUniqBy.js | 26 + .../node_modules/lodash/split.js | 52 + .../node_modules/lodash/spread.js | 63 + .../node_modules/lodash/startCase.js | 29 + .../node_modules/lodash/startsWith.js | 39 + .../node_modules/lodash/string.js | 33 + .../node_modules/lodash/stubArray.js | 23 + .../node_modules/lodash/stubFalse.js | 18 + .../node_modules/lodash/stubObject.js | 23 + .../node_modules/lodash/stubString.js | 18 + .../node_modules/lodash/stubTrue.js | 18 + .../node_modules/lodash/subtract.js | 22 + .../frontend-core/node_modules/lodash/sum.js | 24 + .../node_modules/lodash/sumBy.js | 33 + .../frontend-core/node_modules/lodash/tail.js | 22 + .../frontend-core/node_modules/lodash/take.js | 37 + .../node_modules/lodash/takeRight.js | 39 + .../node_modules/lodash/takeRightWhile.js | 45 + .../node_modules/lodash/takeWhile.js | 45 + .../frontend-core/node_modules/lodash/tap.js | 29 + .../node_modules/lodash/template.js | 272 + .../node_modules/lodash/templateSettings.js | 67 + .../node_modules/lodash/throttle.js | 69 + .../frontend-core/node_modules/lodash/thru.js | 28 + .../node_modules/lodash/times.js | 51 + .../node_modules/lodash/toArray.js | 58 + .../node_modules/lodash/toFinite.js | 42 + .../node_modules/lodash/toInteger.js | 36 + .../node_modules/lodash/toIterator.js | 23 + .../node_modules/lodash/toJSON.js | 1 + .../node_modules/lodash/toLength.js | 38 + .../node_modules/lodash/toLower.js | 28 + .../node_modules/lodash/toNumber.js | 64 + .../node_modules/lodash/toPairs.js | 30 + .../node_modules/lodash/toPairsIn.js | 30 + .../node_modules/lodash/toPath.js | 33 + .../node_modules/lodash/toPlainObject.js | 32 + .../node_modules/lodash/toSafeInteger.js | 37 + .../node_modules/lodash/toString.js | 28 + .../node_modules/lodash/toUpper.js | 28 + .../node_modules/lodash/transform.js | 65 + .../frontend-core/node_modules/lodash/trim.js | 47 + .../node_modules/lodash/trimEnd.js | 41 + .../node_modules/lodash/trimStart.js | 43 + .../node_modules/lodash/truncate.js | 111 + .../node_modules/lodash/unary.js | 22 + .../node_modules/lodash/unescape.js | 34 + .../node_modules/lodash/union.js | 26 + .../node_modules/lodash/unionBy.js | 39 + .../node_modules/lodash/unionWith.js | 34 + .../frontend-core/node_modules/lodash/uniq.js | 25 + .../node_modules/lodash/uniqBy.js | 31 + .../node_modules/lodash/uniqWith.js | 28 + .../node_modules/lodash/uniqueId.js | 28 + .../node_modules/lodash/unset.js | 34 + .../node_modules/lodash/unzip.js | 45 + .../node_modules/lodash/unzipWith.js | 39 + .../node_modules/lodash/update.js | 35 + .../node_modules/lodash/updateWith.js | 33 + .../node_modules/lodash/upperCase.js | 27 + .../node_modules/lodash/upperFirst.js | 22 + .../frontend-core/node_modules/lodash/util.js | 34 + .../node_modules/lodash/value.js | 1 + .../node_modules/lodash/valueOf.js | 1 + .../node_modules/lodash/values.js | 34 + .../node_modules/lodash/valuesIn.js | 32 + .../node_modules/lodash/without.js | 31 + .../node_modules/lodash/words.js | 35 + .../frontend-core/node_modules/lodash/wrap.js | 30 + .../node_modules/lodash/wrapperAt.js | 48 + .../node_modules/lodash/wrapperChain.js | 34 + .../node_modules/lodash/wrapperLodash.js | 147 + .../node_modules/lodash/wrapperReverse.js | 44 + .../node_modules/lodash/wrapperValue.js | 21 + .../frontend-core/node_modules/lodash/xor.js | 28 + .../node_modules/lodash/xorBy.js | 39 + .../node_modules/lodash/xorWith.js | 34 + .../frontend-core/node_modules/lodash/zip.js | 22 + .../node_modules/lodash/zipObject.js | 24 + .../node_modules/lodash/zipObjectDeep.js | 23 + .../node_modules/lodash/zipWith.js | 32 + .../node_modules/svelte/CHANGELOG.md | 2387 ++ .../node_modules/svelte/LICENSE.md | 7 + .../node_modules/svelte/README.md | 75 + .../node_modules/svelte/animate/index.d.ts | 1 + .../node_modules/svelte/animate/index.js | 29 + .../node_modules/svelte/animate/index.mjs | 25 + .../node_modules/svelte/animate/package.json | 5 + .../node_modules/svelte/compiler.d.ts | 1 + .../node_modules/svelte/compiler.js | 32182 ++++++++++++++++ .../node_modules/svelte/compiler.js.map | 1 + .../node_modules/svelte/compiler.mjs | 32168 +++++++++++++++ .../node_modules/svelte/compiler.mjs.map | 1 + .../node_modules/svelte/easing/index.d.ts | 1 + .../node_modules/svelte/easing/index.js | 183 + .../node_modules/svelte/easing/index.mjs | 144 + .../node_modules/svelte/easing/package.json | 5 + .../node_modules/svelte/index.js | 80 + .../node_modules/svelte/index.mjs | 1 + .../node_modules/svelte/internal/index.d.ts | 1 + .../node_modules/svelte/internal/index.js | 2294 ++ .../node_modules/svelte/internal/index.mjs | 2122 + .../node_modules/svelte/internal/package.json | 5 + .../node_modules/svelte/motion/index.d.ts | 1 + .../node_modules/svelte/motion/index.js | 216 + .../node_modules/svelte/motion/index.mjs | 211 + .../node_modules/svelte/motion/package.json | 5 + .../node_modules/svelte/package.json | 166 + .../node_modules/svelte/register.js | 56 + .../frontend-core/node_modules/svelte/ssr.js | 67 + .../frontend-core/node_modules/svelte/ssr.mjs | 7 + .../node_modules/svelte/store/index.d.ts | 1 + .../node_modules/svelte/store/index.js | 114 + .../node_modules/svelte/store/index.mjs | 103 + .../node_modules/svelte/store/package.json | 5 + .../node_modules/svelte/transition/index.d.ts | 1 + .../node_modules/svelte/transition/index.js | 192 + .../node_modules/svelte/transition/index.mjs | 182 + .../svelte/transition/package.json | 5 + .../svelte/types/compiler/Stats.d.ts | 22 + .../types/compiler/compile/Component.d.ts | 124 + .../compiler/compile/compiler_errors.d.ts | 1 + .../compiler/compile/compiler_warnings.d.ts | 1 + .../types/compiler/compile/create_module.d.ts | 14 + .../types/compiler/compile/css/Selector.d.ts | 32 + .../compiler/compile/css/Stylesheet.d.ts | 67 + .../compile/css/gather_possible_values.d.ts | 3 + .../compiler/compile/css/interfaces.d.ts | 6 + .../svelte/types/compiler/compile/index.d.ts | 13 + .../compiler/compile/internal_exports.d.ts | 2 + .../types/compiler/compile/nodes/Action.d.ts | 13 + .../compiler/compile/nodes/Animation.d.ts | 12 + .../compiler/compile/nodes/Attribute.d.ts | 30 + .../compiler/compile/nodes/AwaitBlock.d.ts | 22 + .../types/compiler/compile/nodes/Binding.d.ts | 19 + .../types/compiler/compile/nodes/Body.d.ts | 12 + .../compiler/compile/nodes/CatchBlock.d.ts | 12 + .../types/compiler/compile/nodes/Class.d.ts | 11 + .../types/compiler/compile/nodes/Comment.d.ts | 10 + .../compiler/compile/nodes/ConstTag.d.ts | 18 + .../compiler/compile/nodes/DebugTag.d.ts | 11 + .../compile/nodes/DefaultSlotTemplate.d.ts | 13 + .../compiler/compile/nodes/EachBlock.d.ts | 26 + .../types/compiler/compile/nodes/Element.d.ts | 44 + .../compiler/compile/nodes/ElseBlock.d.ts | 9 + .../compiler/compile/nodes/EventHandler.d.ts | 17 + .../compiler/compile/nodes/Fragment.d.ts | 13 + .../types/compiler/compile/nodes/Head.d.ts | 10 + .../types/compiler/compile/nodes/IfBlock.d.ts | 13 + .../compile/nodes/InlineComponent.d.ts | 24 + .../compiler/compile/nodes/KeyBlock.d.ts | 11 + .../types/compiler/compile/nodes/Let.d.ts | 12 + .../compiler/compile/nodes/MustacheTag.d.ts | 4 + .../types/compiler/compile/nodes/Options.d.ts | 4 + .../compiler/compile/nodes/PendingBlock.d.ts | 9 + .../compile/nodes/RawMustacheTag.d.ts | 4 + .../types/compiler/compile/nodes/Slot.d.ts | 14 + .../compiler/compile/nodes/SlotTemplate.d.ts | 18 + .../types/compiler/compile/nodes/Style.d.ts | 12 + .../compile/nodes/StyleDirective.d.ts | 12 + .../types/compiler/compile/nodes/Text.d.ts | 12 + .../compiler/compile/nodes/ThenBlock.d.ts | 12 + .../types/compiler/compile/nodes/Title.d.ts | 11 + .../compiler/compile/nodes/Transition.d.ts | 14 + .../types/compiler/compile/nodes/Window.d.ts | 14 + .../compiler/compile/nodes/interfaces.d.ts | 36 + .../compile/nodes/shared/AbstractBlock.d.ts | 10 + .../compile/nodes/shared/Context.d.ts | 17 + .../compile/nodes/shared/Expression.d.ts | 26 + .../compiler/compile/nodes/shared/Node.d.ts | 21 + .../compiler/compile/nodes/shared/Tag.d.ts | 8 + .../compile/nodes/shared/TemplateScope.d.ts | 23 + .../compile/nodes/shared/get_const_tags.d.ts | 5 + .../compile/nodes/shared/is_contextual.d.ts | 3 + .../compile/nodes/shared/map_children.d.ts | 21 + .../compiler/compile/render_dom/Block.d.ts | 81 + .../compiler/compile/render_dom/Renderer.d.ts | 46 + .../compiler/compile/render_dom/index.d.ts | 7 + .../compile/render_dom/invalidate.d.ts | 5 + .../render_dom/wrappers/AwaitBlock.d.ts | 39 + .../compile/render_dom/wrappers/Body.d.ts | 13 + .../compile/render_dom/wrappers/DebugTag.d.ts | 10 + .../render_dom/wrappers/EachBlock.d.ts | 56 + .../wrappers/Element/Attribute.d.ts | 42 + .../render_dom/wrappers/Element/Binding.d.ts | 24 + .../wrappers/Element/EventHandler.d.ts | 11 + .../wrappers/Element/SpreadAttribute.d.ts | 3 + .../wrappers/Element/StyleAttribute.d.ts | 16 + .../Element/fix_attribute_casing.d.ts | 1 + .../Element/handle_select_value_binding.d.ts | 3 + .../render_dom/wrappers/Element/index.d.ts | 204 + .../compile/render_dom/wrappers/Fragment.d.ts | 10 + .../compile/render_dom/wrappers/Head.d.ts | 12 + .../compile/render_dom/wrappers/IfBlock.d.ts | 47 + .../wrappers/InlineComponent/index.d.ts | 25 + .../compile/render_dom/wrappers/KeyBlock.d.ts | 18 + .../render_dom/wrappers/MustacheTag.d.ts | 12 + .../render_dom/wrappers/RawMustacheTag.d.ts | 12 + .../compile/render_dom/wrappers/Slot.d.ts | 17 + .../render_dom/wrappers/SlotTemplate.d.ts | 15 + .../compile/render_dom/wrappers/Text.d.ts | 14 + .../compile/render_dom/wrappers/Title.d.ts | 10 + .../compile/render_dom/wrappers/Window.d.ts | 13 + .../render_dom/wrappers/shared/Tag.d.ts | 14 + .../render_dom/wrappers/shared/Wrapper.d.ts | 21 + .../wrappers/shared/add_actions.d.ts | 5 + .../wrappers/shared/add_const_tags.d.ts | 5 + .../wrappers/shared/add_event_handlers.d.ts | 5 + .../render_dom/wrappers/shared/bind_this.d.ts | 5 + .../shared/create_debugging_comment.d.ts | 3 + .../wrappers/shared/get_slot_definition.d.ts | 177 + .../wrappers/shared/is_dynamic.d.ts | 2 + .../render_dom/wrappers/shared/is_head.d.ts | 1 + .../shared/mark_each_block_bindings.d.ts | 4 + .../compiler/compile/render_ssr/Renderer.d.ts | 33 + .../render_ssr/handlers/AwaitBlock.d.ts | 3 + .../compile/render_ssr/handlers/Comment.d.ts | 3 + .../compile/render_ssr/handlers/DebugTag.d.ts | 3 + .../render_ssr/handlers/EachBlock.d.ts | 3 + .../compile/render_ssr/handlers/Element.d.ts | 3 + .../compile/render_ssr/handlers/Head.d.ts | 3 + .../compile/render_ssr/handlers/HtmlTag.d.ts | 3 + .../compile/render_ssr/handlers/IfBlock.d.ts | 3 + .../render_ssr/handlers/InlineComponent.d.ts | 3 + .../compile/render_ssr/handlers/KeyBlock.d.ts | 3 + .../compile/render_ssr/handlers/Slot.d.ts | 5 + .../render_ssr/handlers/SlotTemplate.d.ts | 5 + .../compile/render_ssr/handlers/Tag.d.ts | 2 + .../compile/render_ssr/handlers/Text.d.ts | 3 + .../compile/render_ssr/handlers/Title.d.ts | 3 + .../handlers/shared/boolean_attributes.d.ts | 1 + .../handlers/shared/get_attribute_value.d.ts | 5 + .../handlers/shared/get_const_tags.d.ts | 10 + .../handlers/shared/get_slot_scope.d.ts | 3 + .../utils/remove_whitespace_children.d.ts | 2 + .../compiler/compile/render_ssr/index.d.ts | 7 + .../compiler/compile/utils/__test__.d.ts | 1 + .../compiler/compile/utils/add_to_set.d.ts | 1 + .../compile/utils/check_enable_sourcemap.d.ts | 2 + .../compile/utils/check_graph_for_cycles.d.ts | 1 + .../compiler/compile/utils/compare_node.d.ts | 2 + .../compile/utils/flatten_reference.d.ts | 6 + .../compile/utils/get_name_from_filename.d.ts | 1 + .../compiler/compile/utils/get_object.d.ts | 2 + .../compiler/compile/utils/get_slot_data.d.ts | 15 + .../types/compiler/compile/utils/hash.d.ts | 1 + .../compile/utils/is_used_as_reference.d.ts | 2 + .../utils/nodes_to_template_literal.d.ts | 7 + .../compile/utils/replace_object.d.ts | 2 + .../compile/utils/reserved_keywords.d.ts | 2 + .../types/compiler/compile/utils/scope.d.ts | 8 + .../utils/string_to_member_expression.d.ts | 2 + .../compiler/compile/utils/stringify.d.ts | 9 + .../svelte/types/compiler/config.d.ts | 1 + .../svelte/types/compiler/index.d.ts | 5 + .../svelte/types/compiler/interfaces.d.ts | 186 + .../svelte/types/compiler/parse/acorn.d.ts | 3 + .../svelte/types/compiler/parse/errors.d.ts | 1 + .../svelte/types/compiler/parse/index.d.ts | 38 + .../types/compiler/parse/read/context.d.ts | 6 + .../types/compiler/parse/read/expression.d.ts | 3 + .../types/compiler/parse/read/script.d.ts | 4 + .../types/compiler/parse/read/style.d.ts | 4 + .../types/compiler/parse/state/fragment.d.ts | 3 + .../types/compiler/parse/state/mustache.d.ts | 2 + .../types/compiler/parse/state/tag.d.ts | 2 + .../types/compiler/parse/state/text.d.ts | 2 + .../types/compiler/parse/utils/bracket.d.ts | 4 + .../types/compiler/parse/utils/entities.d.ts | 2034 + .../types/compiler/parse/utils/html.d.ts | 2 + .../types/compiler/parse/utils/node.d.ts | 2 + .../compiler/preprocess/decode_sourcemap.d.ts | 2 + .../types/compiler/preprocess/index.d.ts | 5 + .../compiler/preprocess/replace_in_code.d.ts | 4 + .../types/compiler/preprocess/types.d.ts | 27 + .../svelte/types/compiler/utils/clone.d.ts | 1 + .../svelte/types/compiler/utils/error.d.ts | 8 + .../compiler/utils/extract_svelte_ignore.d.ts | 8 + .../svelte/types/compiler/utils/flatten.d.ts | 2 + .../compiler/utils/full_char_code_at.d.ts | 1 + .../types/compiler/utils/fuzzymatch.d.ts | 1 + .../types/compiler/utils/get_code_frame.d.ts | 1 + .../svelte/types/compiler/utils/link.d.ts | 4 + .../svelte/types/compiler/utils/list.d.ts | 1 + .../types/compiler/utils/mapped_code.d.ts | 23 + .../svelte/types/compiler/utils/names.d.ts | 5 + .../types/compiler/utils/namespaces.d.ts | 9 + .../types/compiler/utils/nodes_match.d.ts | 1 + .../svelte/types/compiler/utils/patterns.d.ts | 4 + .../svelte/types/compiler/utils/trim.d.ts | 2 + .../svelte/types/runtime/ambient.d.ts | 3 + .../svelte/types/runtime/animate/index.d.ts | 16 + .../svelte/types/runtime/easing/index.d.ts | 31 + .../svelte/types/runtime/index.d.ts | 2 + .../types/runtime/internal/Component.d.ts | 54 + .../types/runtime/internal/animations.d.ts | 11 + .../types/runtime/internal/await_block.d.ts | 2 + .../svelte/types/runtime/internal/dev.d.ts | 125 + .../svelte/types/runtime/internal/dom.d.ts | 99 + .../types/runtime/internal/environment.d.ts | 6 + .../types/runtime/internal/globals.d.ts | 1 + .../svelte/types/runtime/internal/index.d.ts | 15 + .../types/runtime/internal/keyed_each.d.ts | 6 + .../types/runtime/internal/lifecycle.d.ts | 13 + .../svelte/types/runtime/internal/loop.d.ts | 15 + .../types/runtime/internal/scheduler.d.ts | 10 + .../svelte/types/runtime/internal/spread.d.ts | 2 + .../svelte/types/runtime/internal/ssr.d.ts | 36 + .../types/runtime/internal/style_manager.d.ts | 3 + .../types/runtime/internal/transitions.d.ts | 20 + .../svelte/types/runtime/internal/utils.d.ts | 31 + .../svelte/types/runtime/motion/index.d.ts | 2 + .../svelte/types/runtime/motion/spring.d.ts | 20 + .../svelte/types/runtime/motion/tweened.d.ts | 14 + .../svelte/types/runtime/motion/utils.d.ts | 1 + .../svelte/types/runtime/ssr.d.ts | 4 + .../svelte/types/runtime/store/index.d.ts | 82 + .../types/runtime/transition/index.d.ts | 66 + packages/frontend-core/package.json | 12 + .../src/api/analytics.js | 0 packages/frontend-core/src/api/api.js | 145 + .../{client => frontend-core}/src/api/app.js | 0 .../src/api/attachments.js | 0 .../{client => frontend-core}/src/api/auth.js | 0 .../src/api/automations.js | 0 .../src/api/index.js | 0 .../src/api/queries.js | 0 .../src/api/relationships.js | 0 .../src/api/routes.js | 0 .../{client => frontend-core}/src/api/rows.js | 0 .../src/api/tables.js | 0 .../src/api/views.js | 0 packages/frontend-core/src/constants.js | 7 + .../src}/fetch/DataFetch.js | 4 +- .../src}/fetch/FieldFetch.js | 0 .../src}/fetch/JSONArrayFetch.js | 4 +- .../src}/fetch/NestedProviderFetch.js | 0 .../src}/fetch/QueryFetch.js | 2 +- .../src}/fetch/RelationshipFetch.js | 2 +- .../src}/fetch/TableFetch.js | 2 +- .../src}/fetch/ViewFetch.js | 2 +- .../src}/fetch/fetchData.js | 2 + packages/frontend-core/src/index.js | 9 + .../src/stores}/localStorage.js | 2 +- .../src/utils}/cookies.js | 0 .../src/utils/helpers.js | 46 +- .../src/utils/json.js} | 0 .../src/utils}/lucene.js | 65 +- .../src/utils/schema.js | 16 +- packages/frontend-core/yarn.lock | 13 + 1335 files changed, 122880 insertions(+), 278 deletions(-) delete mode 100644 packages/builder/src/builderStore/uuid.js delete mode 100644 packages/client/src/api/api.js delete mode 100644 packages/client/src/utils/helpers.js create mode 100644 packages/frontend-core/node_modules/lodash/LICENSE create mode 100644 packages/frontend-core/node_modules/lodash/README.md create mode 100644 packages/frontend-core/node_modules/lodash/_DataView.js create mode 100644 packages/frontend-core/node_modules/lodash/_Hash.js create mode 100644 packages/frontend-core/node_modules/lodash/_LazyWrapper.js create mode 100644 packages/frontend-core/node_modules/lodash/_ListCache.js create mode 100644 packages/frontend-core/node_modules/lodash/_LodashWrapper.js create mode 100644 packages/frontend-core/node_modules/lodash/_Map.js create mode 100644 packages/frontend-core/node_modules/lodash/_MapCache.js create mode 100644 packages/frontend-core/node_modules/lodash/_Promise.js create mode 100644 packages/frontend-core/node_modules/lodash/_Set.js create mode 100644 packages/frontend-core/node_modules/lodash/_SetCache.js create mode 100644 packages/frontend-core/node_modules/lodash/_Stack.js create mode 100644 packages/frontend-core/node_modules/lodash/_Symbol.js create mode 100644 packages/frontend-core/node_modules/lodash/_Uint8Array.js create mode 100644 packages/frontend-core/node_modules/lodash/_WeakMap.js create mode 100644 packages/frontend-core/node_modules/lodash/_apply.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayAggregator.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayEach.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayEachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayEvery.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayFilter.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayIncludes.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayIncludesWith.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayLikeKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayMap.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayPush.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayReduce.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayReduceRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_arraySample.js create mode 100644 packages/frontend-core/node_modules/lodash/_arraySampleSize.js create mode 100644 packages/frontend-core/node_modules/lodash/_arrayShuffle.js create mode 100644 packages/frontend-core/node_modules/lodash/_arraySome.js create mode 100644 packages/frontend-core/node_modules/lodash/_asciiSize.js create mode 100644 packages/frontend-core/node_modules/lodash/_asciiToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_asciiWords.js create mode 100644 packages/frontend-core/node_modules/lodash/_assignMergeValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_assignValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_assocIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseAggregator.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseAssign.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseAssignIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseAssignValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseAt.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseClamp.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseClone.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseConforms.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseConformsTo.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseCreate.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseDelay.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseDifference.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseEach.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseEachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseEvery.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseExtremum.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFill.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFilter.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFindIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFindKey.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFlatten.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFor.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseForOwn.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseForOwnRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseForRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseFunctions.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseGetAllKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseGetTag.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseGt.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseHasIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseInRange.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIndexOfWith.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIntersection.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseInverter.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseInvoke.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsArguments.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsArrayBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsDate.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsEqual.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsEqualDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsMap.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsMatch.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsNaN.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsNative.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIsTypedArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseIteratee.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseKeysIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseLodash.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseLt.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMap.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMatches.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMatchesProperty.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMean.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMerge.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseMergeDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseNth.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseOrderBy.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePick.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePickBy.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseProperty.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePropertyDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePropertyOf.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePullAll.js create mode 100644 packages/frontend-core/node_modules/lodash/_basePullAt.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseRandom.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseRange.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseReduce.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseRepeat.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseRest.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSample.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSampleSize.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSetData.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSetToString.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseShuffle.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSlice.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSome.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSortBy.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedIndexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedUniq.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseSum.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseTimes.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseToNumber.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseToPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseToString.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseTrim.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseUnary.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseUniq.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseUnset.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseUpdate.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseValues.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseWrapperValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseXor.js create mode 100644 packages/frontend-core/node_modules/lodash/_baseZipObject.js create mode 100644 packages/frontend-core/node_modules/lodash/_cacheHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_castArrayLikeObject.js create mode 100644 packages/frontend-core/node_modules/lodash/_castFunction.js create mode 100644 packages/frontend-core/node_modules/lodash/_castPath.js create mode 100644 packages/frontend-core/node_modules/lodash/_castRest.js create mode 100644 packages/frontend-core/node_modules/lodash/_castSlice.js create mode 100644 packages/frontend-core/node_modules/lodash/_charsEndIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_charsStartIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneArrayBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneDataView.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneSymbol.js create mode 100644 packages/frontend-core/node_modules/lodash/_cloneTypedArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_compareAscending.js create mode 100644 packages/frontend-core/node_modules/lodash/_compareMultiple.js create mode 100644 packages/frontend-core/node_modules/lodash/_composeArgs.js create mode 100644 packages/frontend-core/node_modules/lodash/_composeArgsRight.js create mode 100644 packages/frontend-core/node_modules/lodash/_copyArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_copyObject.js create mode 100644 packages/frontend-core/node_modules/lodash/_copySymbols.js create mode 100644 packages/frontend-core/node_modules/lodash/_copySymbolsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_coreJsData.js create mode 100644 packages/frontend-core/node_modules/lodash/_countHolders.js create mode 100644 packages/frontend-core/node_modules/lodash/_createAggregator.js create mode 100644 packages/frontend-core/node_modules/lodash/_createAssigner.js create mode 100644 packages/frontend-core/node_modules/lodash/_createBaseEach.js create mode 100644 packages/frontend-core/node_modules/lodash/_createBaseFor.js create mode 100644 packages/frontend-core/node_modules/lodash/_createBind.js create mode 100644 packages/frontend-core/node_modules/lodash/_createCaseFirst.js create mode 100644 packages/frontend-core/node_modules/lodash/_createCompounder.js create mode 100644 packages/frontend-core/node_modules/lodash/_createCtor.js create mode 100644 packages/frontend-core/node_modules/lodash/_createCurry.js create mode 100644 packages/frontend-core/node_modules/lodash/_createFind.js create mode 100644 packages/frontend-core/node_modules/lodash/_createFlow.js create mode 100644 packages/frontend-core/node_modules/lodash/_createHybrid.js create mode 100644 packages/frontend-core/node_modules/lodash/_createInverter.js create mode 100644 packages/frontend-core/node_modules/lodash/_createMathOperation.js create mode 100644 packages/frontend-core/node_modules/lodash/_createOver.js create mode 100644 packages/frontend-core/node_modules/lodash/_createPadding.js create mode 100644 packages/frontend-core/node_modules/lodash/_createPartial.js create mode 100644 packages/frontend-core/node_modules/lodash/_createRange.js create mode 100644 packages/frontend-core/node_modules/lodash/_createRecurry.js create mode 100644 packages/frontend-core/node_modules/lodash/_createRelationalOperation.js create mode 100644 packages/frontend-core/node_modules/lodash/_createRound.js create mode 100644 packages/frontend-core/node_modules/lodash/_createSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_createToPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/_createWrap.js create mode 100644 packages/frontend-core/node_modules/lodash/_customDefaultsAssignIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_customDefaultsMerge.js create mode 100644 packages/frontend-core/node_modules/lodash/_customOmitClone.js create mode 100644 packages/frontend-core/node_modules/lodash/_deburrLetter.js create mode 100644 packages/frontend-core/node_modules/lodash/_defineProperty.js create mode 100644 packages/frontend-core/node_modules/lodash/_equalArrays.js create mode 100644 packages/frontend-core/node_modules/lodash/_equalByTag.js create mode 100644 packages/frontend-core/node_modules/lodash/_equalObjects.js create mode 100644 packages/frontend-core/node_modules/lodash/_escapeHtmlChar.js create mode 100644 packages/frontend-core/node_modules/lodash/_escapeStringChar.js create mode 100644 packages/frontend-core/node_modules/lodash/_flatRest.js create mode 100644 packages/frontend-core/node_modules/lodash/_freeGlobal.js create mode 100644 packages/frontend-core/node_modules/lodash/_getAllKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/_getAllKeysIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_getData.js create mode 100644 packages/frontend-core/node_modules/lodash/_getFuncName.js create mode 100644 packages/frontend-core/node_modules/lodash/_getHolder.js create mode 100644 packages/frontend-core/node_modules/lodash/_getMapData.js create mode 100644 packages/frontend-core/node_modules/lodash/_getMatchData.js create mode 100644 packages/frontend-core/node_modules/lodash/_getNative.js create mode 100644 packages/frontend-core/node_modules/lodash/_getPrototype.js create mode 100644 packages/frontend-core/node_modules/lodash/_getRawTag.js create mode 100644 packages/frontend-core/node_modules/lodash/_getSymbols.js create mode 100644 packages/frontend-core/node_modules/lodash/_getSymbolsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_getTag.js create mode 100644 packages/frontend-core/node_modules/lodash/_getValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_getView.js create mode 100644 packages/frontend-core/node_modules/lodash/_getWrapDetails.js create mode 100644 packages/frontend-core/node_modules/lodash/_hasPath.js create mode 100644 packages/frontend-core/node_modules/lodash/_hasUnicode.js create mode 100644 packages/frontend-core/node_modules/lodash/_hasUnicodeWord.js create mode 100644 packages/frontend-core/node_modules/lodash/_hashClear.js create mode 100644 packages/frontend-core/node_modules/lodash/_hashDelete.js create mode 100644 packages/frontend-core/node_modules/lodash/_hashGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_hashHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_hashSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_initCloneArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_initCloneByTag.js create mode 100644 packages/frontend-core/node_modules/lodash/_initCloneObject.js create mode 100644 packages/frontend-core/node_modules/lodash/_insertWrapDetails.js create mode 100644 packages/frontend-core/node_modules/lodash/_isFlattenable.js create mode 100644 packages/frontend-core/node_modules/lodash/_isIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_isIterateeCall.js create mode 100644 packages/frontend-core/node_modules/lodash/_isKey.js create mode 100644 packages/frontend-core/node_modules/lodash/_isKeyable.js create mode 100644 packages/frontend-core/node_modules/lodash/_isLaziable.js create mode 100644 packages/frontend-core/node_modules/lodash/_isMaskable.js create mode 100644 packages/frontend-core/node_modules/lodash/_isMasked.js create mode 100644 packages/frontend-core/node_modules/lodash/_isPrototype.js create mode 100644 packages/frontend-core/node_modules/lodash/_isStrictComparable.js create mode 100644 packages/frontend-core/node_modules/lodash/_iteratorToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_lazyClone.js create mode 100644 packages/frontend-core/node_modules/lodash/_lazyReverse.js create mode 100644 packages/frontend-core/node_modules/lodash/_lazyValue.js create mode 100644 packages/frontend-core/node_modules/lodash/_listCacheClear.js create mode 100644 packages/frontend-core/node_modules/lodash/_listCacheDelete.js create mode 100644 packages/frontend-core/node_modules/lodash/_listCacheGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_listCacheHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_listCacheSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheClear.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheDelete.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_mapToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_matchesStrictComparable.js create mode 100644 packages/frontend-core/node_modules/lodash/_memoizeCapped.js create mode 100644 packages/frontend-core/node_modules/lodash/_mergeData.js create mode 100644 packages/frontend-core/node_modules/lodash/_metaMap.js create mode 100644 packages/frontend-core/node_modules/lodash/_nativeCreate.js create mode 100644 packages/frontend-core/node_modules/lodash/_nativeKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/_nativeKeysIn.js create mode 100644 packages/frontend-core/node_modules/lodash/_nodeUtil.js create mode 100644 packages/frontend-core/node_modules/lodash/_objectToString.js create mode 100644 packages/frontend-core/node_modules/lodash/_overArg.js create mode 100644 packages/frontend-core/node_modules/lodash/_overRest.js create mode 100644 packages/frontend-core/node_modules/lodash/_parent.js create mode 100644 packages/frontend-core/node_modules/lodash/_reEscape.js create mode 100644 packages/frontend-core/node_modules/lodash/_reEvaluate.js create mode 100644 packages/frontend-core/node_modules/lodash/_reInterpolate.js create mode 100644 packages/frontend-core/node_modules/lodash/_realNames.js create mode 100644 packages/frontend-core/node_modules/lodash/_reorder.js create mode 100644 packages/frontend-core/node_modules/lodash/_replaceHolders.js create mode 100644 packages/frontend-core/node_modules/lodash/_root.js create mode 100644 packages/frontend-core/node_modules/lodash/_safeGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_setCacheAdd.js create mode 100644 packages/frontend-core/node_modules/lodash/_setCacheHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_setData.js create mode 100644 packages/frontend-core/node_modules/lodash/_setToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_setToPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/_setToString.js create mode 100644 packages/frontend-core/node_modules/lodash/_setWrapToString.js create mode 100644 packages/frontend-core/node_modules/lodash/_shortOut.js create mode 100644 packages/frontend-core/node_modules/lodash/_shuffleSelf.js create mode 100644 packages/frontend-core/node_modules/lodash/_stackClear.js create mode 100644 packages/frontend-core/node_modules/lodash/_stackDelete.js create mode 100644 packages/frontend-core/node_modules/lodash/_stackGet.js create mode 100644 packages/frontend-core/node_modules/lodash/_stackHas.js create mode 100644 packages/frontend-core/node_modules/lodash/_stackSet.js create mode 100644 packages/frontend-core/node_modules/lodash/_strictIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/_strictLastIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/_stringSize.js create mode 100644 packages/frontend-core/node_modules/lodash/_stringToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_stringToPath.js create mode 100644 packages/frontend-core/node_modules/lodash/_toKey.js create mode 100644 packages/frontend-core/node_modules/lodash/_toSource.js create mode 100644 packages/frontend-core/node_modules/lodash/_trimmedEndIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/_unescapeHtmlChar.js create mode 100644 packages/frontend-core/node_modules/lodash/_unicodeSize.js create mode 100644 packages/frontend-core/node_modules/lodash/_unicodeToArray.js create mode 100644 packages/frontend-core/node_modules/lodash/_unicodeWords.js create mode 100644 packages/frontend-core/node_modules/lodash/_updateWrapDetails.js create mode 100644 packages/frontend-core/node_modules/lodash/_wrapperClone.js create mode 100644 packages/frontend-core/node_modules/lodash/add.js create mode 100644 packages/frontend-core/node_modules/lodash/after.js create mode 100644 packages/frontend-core/node_modules/lodash/array.js create mode 100644 packages/frontend-core/node_modules/lodash/ary.js create mode 100644 packages/frontend-core/node_modules/lodash/assign.js create mode 100644 packages/frontend-core/node_modules/lodash/assignIn.js create mode 100644 packages/frontend-core/node_modules/lodash/assignInWith.js create mode 100644 packages/frontend-core/node_modules/lodash/assignWith.js create mode 100644 packages/frontend-core/node_modules/lodash/at.js create mode 100644 packages/frontend-core/node_modules/lodash/attempt.js create mode 100644 packages/frontend-core/node_modules/lodash/before.js create mode 100644 packages/frontend-core/node_modules/lodash/bind.js create mode 100644 packages/frontend-core/node_modules/lodash/bindAll.js create mode 100644 packages/frontend-core/node_modules/lodash/bindKey.js create mode 100644 packages/frontend-core/node_modules/lodash/camelCase.js create mode 100644 packages/frontend-core/node_modules/lodash/capitalize.js create mode 100644 packages/frontend-core/node_modules/lodash/castArray.js create mode 100644 packages/frontend-core/node_modules/lodash/ceil.js create mode 100644 packages/frontend-core/node_modules/lodash/chain.js create mode 100644 packages/frontend-core/node_modules/lodash/chunk.js create mode 100644 packages/frontend-core/node_modules/lodash/clamp.js create mode 100644 packages/frontend-core/node_modules/lodash/clone.js create mode 100644 packages/frontend-core/node_modules/lodash/cloneDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/cloneDeepWith.js create mode 100644 packages/frontend-core/node_modules/lodash/cloneWith.js create mode 100644 packages/frontend-core/node_modules/lodash/collection.js create mode 100644 packages/frontend-core/node_modules/lodash/commit.js create mode 100644 packages/frontend-core/node_modules/lodash/compact.js create mode 100644 packages/frontend-core/node_modules/lodash/concat.js create mode 100644 packages/frontend-core/node_modules/lodash/cond.js create mode 100644 packages/frontend-core/node_modules/lodash/conforms.js create mode 100644 packages/frontend-core/node_modules/lodash/conformsTo.js create mode 100644 packages/frontend-core/node_modules/lodash/constant.js create mode 100644 packages/frontend-core/node_modules/lodash/core.js create mode 100644 packages/frontend-core/node_modules/lodash/core.min.js create mode 100644 packages/frontend-core/node_modules/lodash/countBy.js create mode 100644 packages/frontend-core/node_modules/lodash/create.js create mode 100644 packages/frontend-core/node_modules/lodash/curry.js create mode 100644 packages/frontend-core/node_modules/lodash/curryRight.js create mode 100644 packages/frontend-core/node_modules/lodash/date.js create mode 100644 packages/frontend-core/node_modules/lodash/debounce.js create mode 100644 packages/frontend-core/node_modules/lodash/deburr.js create mode 100644 packages/frontend-core/node_modules/lodash/defaultTo.js create mode 100644 packages/frontend-core/node_modules/lodash/defaults.js create mode 100644 packages/frontend-core/node_modules/lodash/defaultsDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/defer.js create mode 100644 packages/frontend-core/node_modules/lodash/delay.js create mode 100644 packages/frontend-core/node_modules/lodash/difference.js create mode 100644 packages/frontend-core/node_modules/lodash/differenceBy.js create mode 100644 packages/frontend-core/node_modules/lodash/differenceWith.js create mode 100644 packages/frontend-core/node_modules/lodash/divide.js create mode 100644 packages/frontend-core/node_modules/lodash/drop.js create mode 100644 packages/frontend-core/node_modules/lodash/dropRight.js create mode 100644 packages/frontend-core/node_modules/lodash/dropRightWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/dropWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/each.js create mode 100644 packages/frontend-core/node_modules/lodash/eachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/endsWith.js create mode 100644 packages/frontend-core/node_modules/lodash/entries.js create mode 100644 packages/frontend-core/node_modules/lodash/entriesIn.js create mode 100644 packages/frontend-core/node_modules/lodash/eq.js create mode 100644 packages/frontend-core/node_modules/lodash/escape.js create mode 100644 packages/frontend-core/node_modules/lodash/escapeRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/every.js create mode 100644 packages/frontend-core/node_modules/lodash/extend.js create mode 100644 packages/frontend-core/node_modules/lodash/extendWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fill.js create mode 100644 packages/frontend-core/node_modules/lodash/filter.js create mode 100644 packages/frontend-core/node_modules/lodash/find.js create mode 100644 packages/frontend-core/node_modules/lodash/findIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/findKey.js create mode 100644 packages/frontend-core/node_modules/lodash/findLast.js create mode 100644 packages/frontend-core/node_modules/lodash/findLastIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/findLastKey.js create mode 100644 packages/frontend-core/node_modules/lodash/first.js create mode 100644 packages/frontend-core/node_modules/lodash/flake.lock create mode 100644 packages/frontend-core/node_modules/lodash/flake.nix create mode 100644 packages/frontend-core/node_modules/lodash/flatMap.js create mode 100644 packages/frontend-core/node_modules/lodash/flatMapDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/flatMapDepth.js create mode 100644 packages/frontend-core/node_modules/lodash/flatten.js create mode 100644 packages/frontend-core/node_modules/lodash/flattenDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/flattenDepth.js create mode 100644 packages/frontend-core/node_modules/lodash/flip.js create mode 100644 packages/frontend-core/node_modules/lodash/floor.js create mode 100644 packages/frontend-core/node_modules/lodash/flow.js create mode 100644 packages/frontend-core/node_modules/lodash/flowRight.js create mode 100644 packages/frontend-core/node_modules/lodash/forEach.js create mode 100644 packages/frontend-core/node_modules/lodash/forEachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/forIn.js create mode 100644 packages/frontend-core/node_modules/lodash/forInRight.js create mode 100644 packages/frontend-core/node_modules/lodash/forOwn.js create mode 100644 packages/frontend-core/node_modules/lodash/forOwnRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/F.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/T.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/__.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/_baseConvert.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/_convertBrowser.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/_falseOptions.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/_mapping.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/_util.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/add.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/after.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/all.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/allPass.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/always.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/any.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/anyPass.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/apply.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/array.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/ary.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assign.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assignWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assoc.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/assocPath.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/at.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/attempt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/before.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/bind.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/bindAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/bindKey.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/camelCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/capitalize.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/castArray.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/ceil.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/chain.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/chunk.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/clamp.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/clone.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneDeepWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/collection.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/commit.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/compact.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/complement.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/compose.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/concat.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/cond.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/conforms.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/conformsTo.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/constant.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/contains.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/convert.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/countBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/create.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/curry.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/curryN.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/curryRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/curryRightN.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/date.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/debounce.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/deburr.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultTo.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defaults.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsDeepAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/defer.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/delay.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/difference.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/differenceBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/differenceWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dissoc.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dissocPath.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/divide.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/drop.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dropLast.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dropLastWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dropRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dropRightWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/dropWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/each.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/eachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/endsWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/entries.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/entriesIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/eq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/equals.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/escape.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/escapeRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/every.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/extend.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/extendAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/extendAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/extendWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/fill.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/filter.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/find.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findIndexFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findKey.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findLast.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastIndexFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastKey.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/first.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMapDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMapDepth.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flatten.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flattenDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flattenDepth.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flip.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/floor.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flow.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/flowRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forEach.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forEachRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forInRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forOwn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/forOwnRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/fromPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/function.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/functions.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/functionsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/get.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/getOr.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/groupBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/gt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/gte.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/has.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/hasIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/head.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/identical.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/identity.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/inRange.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/includes.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/includesFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/indexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/indexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/indexOfFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/init.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/initial.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/intersection.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/intersectionBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/intersectionWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invert.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invertBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invertObj.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invoke.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeArgs.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeArgsMap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeMap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isArguments.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isArray.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayLike.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayLikeObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isBoolean.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isDate.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isElement.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isEmpty.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isEqual.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isEqualWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isError.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isFinite.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isFunction.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isLength.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isMap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isMatch.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isMatchWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isNaN.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isNative.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isNil.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isNull.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isNumber.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isObjectLike.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isPlainObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isSafeInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isSet.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isString.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isSymbol.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isTypedArray.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isUndefined.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isWeakMap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/isWeakSet.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/iteratee.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/join.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/juxt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/kebabCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/keyBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/keys.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/keysIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lang.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/last.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lastIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lastIndexOfFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lowerCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lowerFirst.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/lte.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/map.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mapKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mapValues.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/matches.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/matchesProperty.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/math.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/max.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/maxBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mean.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/meanBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/memoize.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/merge.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/method.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/methodOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/min.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/minBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/mixin.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/multiply.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/nAry.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/negate.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/next.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/noop.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/now.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/nth.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/nthArg.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/number.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/object.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/omit.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/omitAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/omitBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/once.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/orderBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/over.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/overArgs.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/overEvery.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/overSome.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pad.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/padChars.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/padCharsEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/padCharsStart.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/padEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/padStart.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/parseInt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/partial.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/partialRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/partition.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/path.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pathEq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pathOr.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/paths.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pick.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pickAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pickBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pipe.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/placeholder.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/plant.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pluck.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/prop.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/propEq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/propOr.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/property.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/propertyOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/props.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pull.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAllBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/random.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/range.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeStep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeStepRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/rearg.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/reduce.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/reduceRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/reject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/remove.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/repeat.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/replace.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/rest.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/restFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/result.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/reverse.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/round.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sample.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sampleSize.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/seq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/set.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/setWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/shuffle.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/size.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/slice.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/snakeCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/some.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedUniq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedUniqBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/split.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/spread.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/spreadFrom.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/startCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/startsWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/string.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/stubArray.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/stubFalse.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/stubObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/stubString.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/stubTrue.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/subtract.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sum.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/sumBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifference.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/tail.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/take.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/takeLast.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/takeLastWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/takeRight.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/takeRightWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/takeWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/tap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/template.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/templateSettings.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/throttle.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/thru.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/times.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toArray.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toFinite.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toIterator.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toJSON.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toLength.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toLower.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toNumber.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toPairsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toPath.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toPlainObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toSafeInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toString.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/toUpper.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/transform.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trim.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trimChars.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trimCharsEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trimCharsStart.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trimEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/trimStart.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/truncate.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unapply.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unary.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unescape.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/union.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unionBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unionWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/uniq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqueId.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unnest.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unset.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unzip.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/unzipWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/update.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/updateWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/upperCase.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/upperFirst.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/useWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/util.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/value.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/valueOf.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/values.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/valuesIn.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/where.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/whereEq.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/without.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/words.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrap.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperAt.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperChain.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperLodash.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperReverse.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperValue.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/xor.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/xorBy.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/xorWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zip.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zipAll.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObj.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObject.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObjectDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/fp/zipWith.js create mode 100644 packages/frontend-core/node_modules/lodash/fromPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/function.js create mode 100644 packages/frontend-core/node_modules/lodash/functions.js create mode 100644 packages/frontend-core/node_modules/lodash/functionsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/get.js create mode 100644 packages/frontend-core/node_modules/lodash/groupBy.js create mode 100644 packages/frontend-core/node_modules/lodash/gt.js create mode 100644 packages/frontend-core/node_modules/lodash/gte.js create mode 100644 packages/frontend-core/node_modules/lodash/has.js create mode 100644 packages/frontend-core/node_modules/lodash/hasIn.js create mode 100644 packages/frontend-core/node_modules/lodash/head.js create mode 100644 packages/frontend-core/node_modules/lodash/identity.js create mode 100644 packages/frontend-core/node_modules/lodash/inRange.js create mode 100644 packages/frontend-core/node_modules/lodash/includes.js create mode 100644 packages/frontend-core/node_modules/lodash/index.js create mode 100644 packages/frontend-core/node_modules/lodash/indexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/initial.js create mode 100644 packages/frontend-core/node_modules/lodash/intersection.js create mode 100644 packages/frontend-core/node_modules/lodash/intersectionBy.js create mode 100644 packages/frontend-core/node_modules/lodash/intersectionWith.js create mode 100644 packages/frontend-core/node_modules/lodash/invert.js create mode 100644 packages/frontend-core/node_modules/lodash/invertBy.js create mode 100644 packages/frontend-core/node_modules/lodash/invoke.js create mode 100644 packages/frontend-core/node_modules/lodash/invokeMap.js create mode 100644 packages/frontend-core/node_modules/lodash/isArguments.js create mode 100644 packages/frontend-core/node_modules/lodash/isArray.js create mode 100644 packages/frontend-core/node_modules/lodash/isArrayBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/isArrayLike.js create mode 100644 packages/frontend-core/node_modules/lodash/isArrayLikeObject.js create mode 100644 packages/frontend-core/node_modules/lodash/isBoolean.js create mode 100644 packages/frontend-core/node_modules/lodash/isBuffer.js create mode 100644 packages/frontend-core/node_modules/lodash/isDate.js create mode 100644 packages/frontend-core/node_modules/lodash/isElement.js create mode 100644 packages/frontend-core/node_modules/lodash/isEmpty.js create mode 100644 packages/frontend-core/node_modules/lodash/isEqual.js create mode 100644 packages/frontend-core/node_modules/lodash/isEqualWith.js create mode 100644 packages/frontend-core/node_modules/lodash/isError.js create mode 100644 packages/frontend-core/node_modules/lodash/isFinite.js create mode 100644 packages/frontend-core/node_modules/lodash/isFunction.js create mode 100644 packages/frontend-core/node_modules/lodash/isInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/isLength.js create mode 100644 packages/frontend-core/node_modules/lodash/isMap.js create mode 100644 packages/frontend-core/node_modules/lodash/isMatch.js create mode 100644 packages/frontend-core/node_modules/lodash/isMatchWith.js create mode 100644 packages/frontend-core/node_modules/lodash/isNaN.js create mode 100644 packages/frontend-core/node_modules/lodash/isNative.js create mode 100644 packages/frontend-core/node_modules/lodash/isNil.js create mode 100644 packages/frontend-core/node_modules/lodash/isNull.js create mode 100644 packages/frontend-core/node_modules/lodash/isNumber.js create mode 100644 packages/frontend-core/node_modules/lodash/isObject.js create mode 100644 packages/frontend-core/node_modules/lodash/isObjectLike.js create mode 100644 packages/frontend-core/node_modules/lodash/isPlainObject.js create mode 100644 packages/frontend-core/node_modules/lodash/isRegExp.js create mode 100644 packages/frontend-core/node_modules/lodash/isSafeInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/isSet.js create mode 100644 packages/frontend-core/node_modules/lodash/isString.js create mode 100644 packages/frontend-core/node_modules/lodash/isSymbol.js create mode 100644 packages/frontend-core/node_modules/lodash/isTypedArray.js create mode 100644 packages/frontend-core/node_modules/lodash/isUndefined.js create mode 100644 packages/frontend-core/node_modules/lodash/isWeakMap.js create mode 100644 packages/frontend-core/node_modules/lodash/isWeakSet.js create mode 100644 packages/frontend-core/node_modules/lodash/iteratee.js create mode 100644 packages/frontend-core/node_modules/lodash/join.js create mode 100644 packages/frontend-core/node_modules/lodash/kebabCase.js create mode 100644 packages/frontend-core/node_modules/lodash/keyBy.js create mode 100644 packages/frontend-core/node_modules/lodash/keys.js create mode 100644 packages/frontend-core/node_modules/lodash/keysIn.js create mode 100644 packages/frontend-core/node_modules/lodash/lang.js create mode 100644 packages/frontend-core/node_modules/lodash/last.js create mode 100644 packages/frontend-core/node_modules/lodash/lastIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/lodash.js create mode 100644 packages/frontend-core/node_modules/lodash/lodash.min.js create mode 100644 packages/frontend-core/node_modules/lodash/lowerCase.js create mode 100644 packages/frontend-core/node_modules/lodash/lowerFirst.js create mode 100644 packages/frontend-core/node_modules/lodash/lt.js create mode 100644 packages/frontend-core/node_modules/lodash/lte.js create mode 100644 packages/frontend-core/node_modules/lodash/map.js create mode 100644 packages/frontend-core/node_modules/lodash/mapKeys.js create mode 100644 packages/frontend-core/node_modules/lodash/mapValues.js create mode 100644 packages/frontend-core/node_modules/lodash/matches.js create mode 100644 packages/frontend-core/node_modules/lodash/matchesProperty.js create mode 100644 packages/frontend-core/node_modules/lodash/math.js create mode 100644 packages/frontend-core/node_modules/lodash/max.js create mode 100644 packages/frontend-core/node_modules/lodash/maxBy.js create mode 100644 packages/frontend-core/node_modules/lodash/mean.js create mode 100644 packages/frontend-core/node_modules/lodash/meanBy.js create mode 100644 packages/frontend-core/node_modules/lodash/memoize.js create mode 100644 packages/frontend-core/node_modules/lodash/merge.js create mode 100644 packages/frontend-core/node_modules/lodash/mergeWith.js create mode 100644 packages/frontend-core/node_modules/lodash/method.js create mode 100644 packages/frontend-core/node_modules/lodash/methodOf.js create mode 100644 packages/frontend-core/node_modules/lodash/min.js create mode 100644 packages/frontend-core/node_modules/lodash/minBy.js create mode 100644 packages/frontend-core/node_modules/lodash/mixin.js create mode 100644 packages/frontend-core/node_modules/lodash/multiply.js create mode 100644 packages/frontend-core/node_modules/lodash/negate.js create mode 100644 packages/frontend-core/node_modules/lodash/next.js create mode 100644 packages/frontend-core/node_modules/lodash/noop.js create mode 100644 packages/frontend-core/node_modules/lodash/now.js create mode 100644 packages/frontend-core/node_modules/lodash/nth.js create mode 100644 packages/frontend-core/node_modules/lodash/nthArg.js create mode 100644 packages/frontend-core/node_modules/lodash/number.js create mode 100644 packages/frontend-core/node_modules/lodash/object.js create mode 100644 packages/frontend-core/node_modules/lodash/omit.js create mode 100644 packages/frontend-core/node_modules/lodash/omitBy.js create mode 100644 packages/frontend-core/node_modules/lodash/once.js create mode 100644 packages/frontend-core/node_modules/lodash/orderBy.js create mode 100644 packages/frontend-core/node_modules/lodash/over.js create mode 100644 packages/frontend-core/node_modules/lodash/overArgs.js create mode 100644 packages/frontend-core/node_modules/lodash/overEvery.js create mode 100644 packages/frontend-core/node_modules/lodash/overSome.js create mode 100644 packages/frontend-core/node_modules/lodash/package.json create mode 100644 packages/frontend-core/node_modules/lodash/pad.js create mode 100644 packages/frontend-core/node_modules/lodash/padEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/padStart.js create mode 100644 packages/frontend-core/node_modules/lodash/parseInt.js create mode 100644 packages/frontend-core/node_modules/lodash/partial.js create mode 100644 packages/frontend-core/node_modules/lodash/partialRight.js create mode 100644 packages/frontend-core/node_modules/lodash/partition.js create mode 100644 packages/frontend-core/node_modules/lodash/pick.js create mode 100644 packages/frontend-core/node_modules/lodash/pickBy.js create mode 100644 packages/frontend-core/node_modules/lodash/plant.js create mode 100644 packages/frontend-core/node_modules/lodash/property.js create mode 100644 packages/frontend-core/node_modules/lodash/propertyOf.js create mode 100644 packages/frontend-core/node_modules/lodash/pull.js create mode 100644 packages/frontend-core/node_modules/lodash/pullAll.js create mode 100644 packages/frontend-core/node_modules/lodash/pullAllBy.js create mode 100644 packages/frontend-core/node_modules/lodash/pullAllWith.js create mode 100644 packages/frontend-core/node_modules/lodash/pullAt.js create mode 100644 packages/frontend-core/node_modules/lodash/random.js create mode 100644 packages/frontend-core/node_modules/lodash/range.js create mode 100644 packages/frontend-core/node_modules/lodash/rangeRight.js create mode 100644 packages/frontend-core/node_modules/lodash/rearg.js create mode 100644 packages/frontend-core/node_modules/lodash/reduce.js create mode 100644 packages/frontend-core/node_modules/lodash/reduceRight.js create mode 100644 packages/frontend-core/node_modules/lodash/reject.js create mode 100644 packages/frontend-core/node_modules/lodash/release.md create mode 100644 packages/frontend-core/node_modules/lodash/remove.js create mode 100644 packages/frontend-core/node_modules/lodash/repeat.js create mode 100644 packages/frontend-core/node_modules/lodash/replace.js create mode 100644 packages/frontend-core/node_modules/lodash/rest.js create mode 100644 packages/frontend-core/node_modules/lodash/result.js create mode 100644 packages/frontend-core/node_modules/lodash/reverse.js create mode 100644 packages/frontend-core/node_modules/lodash/round.js create mode 100644 packages/frontend-core/node_modules/lodash/sample.js create mode 100644 packages/frontend-core/node_modules/lodash/sampleSize.js create mode 100644 packages/frontend-core/node_modules/lodash/seq.js create mode 100644 packages/frontend-core/node_modules/lodash/set.js create mode 100644 packages/frontend-core/node_modules/lodash/setWith.js create mode 100644 packages/frontend-core/node_modules/lodash/shuffle.js create mode 100644 packages/frontend-core/node_modules/lodash/size.js create mode 100644 packages/frontend-core/node_modules/lodash/slice.js create mode 100644 packages/frontend-core/node_modules/lodash/snakeCase.js create mode 100644 packages/frontend-core/node_modules/lodash/some.js create mode 100644 packages/frontend-core/node_modules/lodash/sortBy.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedIndexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndex.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndexBy.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndexOf.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedUniq.js create mode 100644 packages/frontend-core/node_modules/lodash/sortedUniqBy.js create mode 100644 packages/frontend-core/node_modules/lodash/split.js create mode 100644 packages/frontend-core/node_modules/lodash/spread.js create mode 100644 packages/frontend-core/node_modules/lodash/startCase.js create mode 100644 packages/frontend-core/node_modules/lodash/startsWith.js create mode 100644 packages/frontend-core/node_modules/lodash/string.js create mode 100644 packages/frontend-core/node_modules/lodash/stubArray.js create mode 100644 packages/frontend-core/node_modules/lodash/stubFalse.js create mode 100644 packages/frontend-core/node_modules/lodash/stubObject.js create mode 100644 packages/frontend-core/node_modules/lodash/stubString.js create mode 100644 packages/frontend-core/node_modules/lodash/stubTrue.js create mode 100644 packages/frontend-core/node_modules/lodash/subtract.js create mode 100644 packages/frontend-core/node_modules/lodash/sum.js create mode 100644 packages/frontend-core/node_modules/lodash/sumBy.js create mode 100644 packages/frontend-core/node_modules/lodash/tail.js create mode 100644 packages/frontend-core/node_modules/lodash/take.js create mode 100644 packages/frontend-core/node_modules/lodash/takeRight.js create mode 100644 packages/frontend-core/node_modules/lodash/takeRightWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/takeWhile.js create mode 100644 packages/frontend-core/node_modules/lodash/tap.js create mode 100644 packages/frontend-core/node_modules/lodash/template.js create mode 100644 packages/frontend-core/node_modules/lodash/templateSettings.js create mode 100644 packages/frontend-core/node_modules/lodash/throttle.js create mode 100644 packages/frontend-core/node_modules/lodash/thru.js create mode 100644 packages/frontend-core/node_modules/lodash/times.js create mode 100644 packages/frontend-core/node_modules/lodash/toArray.js create mode 100644 packages/frontend-core/node_modules/lodash/toFinite.js create mode 100644 packages/frontend-core/node_modules/lodash/toInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/toIterator.js create mode 100644 packages/frontend-core/node_modules/lodash/toJSON.js create mode 100644 packages/frontend-core/node_modules/lodash/toLength.js create mode 100644 packages/frontend-core/node_modules/lodash/toLower.js create mode 100644 packages/frontend-core/node_modules/lodash/toNumber.js create mode 100644 packages/frontend-core/node_modules/lodash/toPairs.js create mode 100644 packages/frontend-core/node_modules/lodash/toPairsIn.js create mode 100644 packages/frontend-core/node_modules/lodash/toPath.js create mode 100644 packages/frontend-core/node_modules/lodash/toPlainObject.js create mode 100644 packages/frontend-core/node_modules/lodash/toSafeInteger.js create mode 100644 packages/frontend-core/node_modules/lodash/toString.js create mode 100644 packages/frontend-core/node_modules/lodash/toUpper.js create mode 100644 packages/frontend-core/node_modules/lodash/transform.js create mode 100644 packages/frontend-core/node_modules/lodash/trim.js create mode 100644 packages/frontend-core/node_modules/lodash/trimEnd.js create mode 100644 packages/frontend-core/node_modules/lodash/trimStart.js create mode 100644 packages/frontend-core/node_modules/lodash/truncate.js create mode 100644 packages/frontend-core/node_modules/lodash/unary.js create mode 100644 packages/frontend-core/node_modules/lodash/unescape.js create mode 100644 packages/frontend-core/node_modules/lodash/union.js create mode 100644 packages/frontend-core/node_modules/lodash/unionBy.js create mode 100644 packages/frontend-core/node_modules/lodash/unionWith.js create mode 100644 packages/frontend-core/node_modules/lodash/uniq.js create mode 100644 packages/frontend-core/node_modules/lodash/uniqBy.js create mode 100644 packages/frontend-core/node_modules/lodash/uniqWith.js create mode 100644 packages/frontend-core/node_modules/lodash/uniqueId.js create mode 100644 packages/frontend-core/node_modules/lodash/unset.js create mode 100644 packages/frontend-core/node_modules/lodash/unzip.js create mode 100644 packages/frontend-core/node_modules/lodash/unzipWith.js create mode 100644 packages/frontend-core/node_modules/lodash/update.js create mode 100644 packages/frontend-core/node_modules/lodash/updateWith.js create mode 100644 packages/frontend-core/node_modules/lodash/upperCase.js create mode 100644 packages/frontend-core/node_modules/lodash/upperFirst.js create mode 100644 packages/frontend-core/node_modules/lodash/util.js create mode 100644 packages/frontend-core/node_modules/lodash/value.js create mode 100644 packages/frontend-core/node_modules/lodash/valueOf.js create mode 100644 packages/frontend-core/node_modules/lodash/values.js create mode 100644 packages/frontend-core/node_modules/lodash/valuesIn.js create mode 100644 packages/frontend-core/node_modules/lodash/without.js create mode 100644 packages/frontend-core/node_modules/lodash/words.js create mode 100644 packages/frontend-core/node_modules/lodash/wrap.js create mode 100644 packages/frontend-core/node_modules/lodash/wrapperAt.js create mode 100644 packages/frontend-core/node_modules/lodash/wrapperChain.js create mode 100644 packages/frontend-core/node_modules/lodash/wrapperLodash.js create mode 100644 packages/frontend-core/node_modules/lodash/wrapperReverse.js create mode 100644 packages/frontend-core/node_modules/lodash/wrapperValue.js create mode 100644 packages/frontend-core/node_modules/lodash/xor.js create mode 100644 packages/frontend-core/node_modules/lodash/xorBy.js create mode 100644 packages/frontend-core/node_modules/lodash/xorWith.js create mode 100644 packages/frontend-core/node_modules/lodash/zip.js create mode 100644 packages/frontend-core/node_modules/lodash/zipObject.js create mode 100644 packages/frontend-core/node_modules/lodash/zipObjectDeep.js create mode 100644 packages/frontend-core/node_modules/lodash/zipWith.js create mode 100644 packages/frontend-core/node_modules/svelte/CHANGELOG.md create mode 100644 packages/frontend-core/node_modules/svelte/LICENSE.md create mode 100644 packages/frontend-core/node_modules/svelte/README.md create mode 100644 packages/frontend-core/node_modules/svelte/animate/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/animate/index.js create mode 100644 packages/frontend-core/node_modules/svelte/animate/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/animate/package.json create mode 100644 packages/frontend-core/node_modules/svelte/compiler.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/compiler.js create mode 100644 packages/frontend-core/node_modules/svelte/compiler.js.map create mode 100644 packages/frontend-core/node_modules/svelte/compiler.mjs create mode 100644 packages/frontend-core/node_modules/svelte/compiler.mjs.map create mode 100644 packages/frontend-core/node_modules/svelte/easing/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/easing/index.js create mode 100644 packages/frontend-core/node_modules/svelte/easing/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/easing/package.json create mode 100644 packages/frontend-core/node_modules/svelte/index.js create mode 100644 packages/frontend-core/node_modules/svelte/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/internal/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/internal/index.js create mode 100644 packages/frontend-core/node_modules/svelte/internal/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/internal/package.json create mode 100644 packages/frontend-core/node_modules/svelte/motion/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/motion/index.js create mode 100644 packages/frontend-core/node_modules/svelte/motion/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/motion/package.json create mode 100644 packages/frontend-core/node_modules/svelte/package.json create mode 100644 packages/frontend-core/node_modules/svelte/register.js create mode 100644 packages/frontend-core/node_modules/svelte/ssr.js create mode 100644 packages/frontend-core/node_modules/svelte/ssr.mjs create mode 100644 packages/frontend-core/node_modules/svelte/store/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/store/index.js create mode 100644 packages/frontend-core/node_modules/svelte/store/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/store/package.json create mode 100644 packages/frontend-core/node_modules/svelte/transition/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/transition/index.js create mode 100644 packages/frontend-core/node_modules/svelte/transition/index.mjs create mode 100644 packages/frontend-core/node_modules/svelte/transition/package.json create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/Stats.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/Component.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_errors.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_warnings.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/create_module.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Selector.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Stylesheet.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/gather_possible_values.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/interfaces.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/internal_exports.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Action.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Animation.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Attribute.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/AwaitBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Binding.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Body.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/CatchBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Class.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Comment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ConstTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DebugTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DefaultSlotTemplate.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EachBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Element.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ElseBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EventHandler.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Fragment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Head.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/IfBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/InlineComponent.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/KeyBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Let.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/MustacheTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Options.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/PendingBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/RawMustacheTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Slot.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/SlotTemplate.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Style.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/StyleDirective.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Text.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ThenBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Title.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Transition.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Window.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/interfaces.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/AbstractBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Context.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Expression.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Node.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Tag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/TemplateScope.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/get_const_tags.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/is_contextual.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/map_children.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Block.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Renderer.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/invalidate.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/AwaitBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Body.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/DebugTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/EachBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Attribute.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Binding.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/EventHandler.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/SpreadAttribute.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/StyleAttribute.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/fix_attribute_casing.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/handle_select_value_binding.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Fragment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Head.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/IfBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/InlineComponent/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/KeyBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/MustacheTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/RawMustacheTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Slot.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/SlotTemplate.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Text.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Title.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Window.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Tag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Wrapper.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_actions.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_const_tags.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_event_handlers.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/bind_this.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/create_debugging_comment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/get_slot_definition.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_dynamic.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_head.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/mark_each_block_bindings.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/Renderer.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/AwaitBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Comment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/DebugTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/EachBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Element.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Head.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/HtmlTag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/IfBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/InlineComponent.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/KeyBlock.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Slot.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/SlotTemplate.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Tag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Text.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Title.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/boolean_attributes.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_attribute_value.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_const_tags.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_slot_scope.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/utils/remove_whitespace_children.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/__test__.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/add_to_set.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_enable_sourcemap.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_graph_for_cycles.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/compare_node.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/flatten_reference.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_name_from_filename.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_object.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_slot_data.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/hash.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/is_used_as_reference.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/nodes_to_template_literal.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/replace_object.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/reserved_keywords.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/scope.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/string_to_member_expression.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/stringify.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/config.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/interfaces.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/acorn.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/errors.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/context.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/expression.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/script.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/style.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/fragment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/mustache.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/tag.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/text.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/bracket.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/entities.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/html.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/node.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/decode_sourcemap.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/replace_in_code.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/types.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/clone.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/error.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/extract_svelte_ignore.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/flatten.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/full_char_code_at.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/fuzzymatch.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/get_code_frame.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/link.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/list.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/mapped_code.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/names.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/namespaces.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/nodes_match.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/patterns.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/trim.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/ambient.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/animate/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/easing/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/Component.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/animations.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/await_block.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/dev.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/dom.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/environment.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/globals.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/keyed_each.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/lifecycle.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/loop.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/scheduler.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/spread.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/ssr.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/style_manager.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/transitions.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/utils.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/spring.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/tweened.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/utils.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/ssr.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/store/index.d.ts create mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/transition/index.d.ts create mode 100644 packages/frontend-core/package.json rename packages/{client => frontend-core}/src/api/analytics.js (100%) create mode 100644 packages/frontend-core/src/api/api.js rename packages/{client => frontend-core}/src/api/app.js (100%) rename packages/{client => frontend-core}/src/api/attachments.js (100%) rename packages/{client => frontend-core}/src/api/auth.js (100%) rename packages/{client => frontend-core}/src/api/automations.js (100%) rename packages/{client => frontend-core}/src/api/index.js (100%) rename packages/{client => frontend-core}/src/api/queries.js (100%) rename packages/{client => frontend-core}/src/api/relationships.js (100%) rename packages/{client => frontend-core}/src/api/routes.js (100%) rename packages/{client => frontend-core}/src/api/rows.js (100%) rename packages/{client => frontend-core}/src/api/tables.js (100%) rename packages/{client => frontend-core}/src/api/views.js (100%) create mode 100644 packages/frontend-core/src/constants.js rename packages/{client/src/utils => frontend-core/src}/fetch/DataFetch.js (99%) rename packages/{client/src/utils => frontend-core/src}/fetch/FieldFetch.js (100%) rename packages/{client/src/utils => frontend-core/src}/fetch/JSONArrayFetch.js (77%) rename packages/{client/src/utils => frontend-core/src}/fetch/NestedProviderFetch.js (100%) rename packages/{client/src/utils => frontend-core/src}/fetch/QueryFetch.js (97%) rename packages/{client/src/utils => frontend-core/src}/fetch/RelationshipFetch.js (88%) rename packages/{client/src/utils => frontend-core/src}/fetch/TableFetch.js (95%) rename packages/{client/src/utils => frontend-core/src}/fetch/ViewFetch.js (90%) rename packages/{client/src/utils => frontend-core/src}/fetch/fetchData.js (94%) create mode 100644 packages/frontend-core/src/index.js rename packages/{builder/src/builderStore/store => frontend-core/src/stores}/localStorage.js (93%) rename packages/{builder/src/builderStore => frontend-core/src/utils}/cookies.js (100%) rename packages/{bbui => frontend-core}/src/utils/helpers.js (61%) rename packages/{builder/src/builderStore/jsonUtils.js => frontend-core/src/utils/json.js} (100%) rename packages/{builder/src/helpers => frontend-core/src/utils}/lucene.js (83%) rename packages/{client => frontend-core}/src/utils/schema.js (74%) create mode 100644 packages/frontend-core/yarn.lock diff --git a/packages/bbui/src/index.js b/packages/bbui/src/index.js index 16f069f4e7..3e86d01a0d 100644 --- a/packages/bbui/src/index.js +++ b/packages/bbui/src/index.js @@ -81,6 +81,3 @@ export { default as clickOutside } from "./Actions/click_outside" // Stores export { notifications, createNotificationStore } from "./Stores/notifications" - -// Utils -export * from "./utils/helpers" diff --git a/packages/builder/src/builderStore/uuid.js b/packages/builder/src/builderStore/uuid.js deleted file mode 100644 index 149da83c68..0000000000 --- a/packages/builder/src/builderStore/uuid.js +++ /dev/null @@ -1,9 +0,0 @@ -export function uuid() { - // always want to make this start with a letter, as this makes it - // easier to use with template string bindings in the client - return "cxxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, c => { - const r = (Math.random() * 16) | 0, - v = c == "x" ? r : (r & 0x3) | 0x8 - return v.toString(16) - }) -} diff --git a/packages/builder/src/constants/lucene.js b/packages/builder/src/constants/lucene.js index 132790739c..159b66e35d 100644 --- a/packages/builder/src/constants/lucene.js +++ b/packages/builder/src/constants/lucene.js @@ -1,58 +1,3 @@ -/** - * Operator options for lucene queries - */ -export const OperatorOptions = { - Equals: { - value: "equal", - label: "Equals", - }, - NotEquals: { - value: "notEqual", - label: "Not equals", - }, - Empty: { - value: "empty", - label: "Is empty", - }, - NotEmpty: { - value: "notEmpty", - label: "Is not empty", - }, - StartsWith: { - value: "string", - label: "Starts with", - }, - Like: { - value: "fuzzy", - label: "Like", - }, - MoreThan: { - value: "rangeLow", - label: "More than", - }, - LessThan: { - value: "rangeHigh", - label: "Less than", - }, - Contains: { - value: "equal", - label: "Contains", - }, - NotContains: { - value: "notEqual", - label: "Does Not Contain", - }, -} - -export const NoEmptyFilterStrings = [ - OperatorOptions.StartsWith.value, - OperatorOptions.Like.value, - OperatorOptions.Equals.value, - OperatorOptions.NotEquals.value, - OperatorOptions.Contains.value, - OperatorOptions.NotContains.value, -] - /** * Returns the valid operator options for a certain data type * @param type the data type diff --git a/packages/client/package.json b/packages/client/package.json index af286bf683..4d917b2080 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -20,6 +20,7 @@ }, "dependencies": { "@budibase/bbui": "^1.0.27-alpha.19", + "@budibase/frontend-core": "^1.0.27-alpha.19", "@budibase/standard-components": "^0.9.139", "@budibase/string-templates": "^1.0.27-alpha.19", "regexparam": "^1.3.0", diff --git a/packages/client/src/api/api.js b/packages/client/src/api/api.js deleted file mode 100644 index 2476030eb0..0000000000 --- a/packages/client/src/api/api.js +++ /dev/null @@ -1,97 +0,0 @@ -import { notificationStore } from "stores" -import { ApiVersion } from "constants" - -/** - * API cache for cached request responses. - */ -let cache = {} - -/** - * Handler for API errors. - */ -const handleError = error => { - return { error } -} - -/** - * Performs an API call to the server. - * App ID header is always correctly set. - */ -const makeApiCall = async ({ method, url, body, json = true }) => { - try { - const requestBody = json ? JSON.stringify(body) : body - const inBuilder = window["##BUDIBASE_IN_BUILDER##"] - const headers = { - Accept: "application/json", - "x-budibase-app-id": window["##BUDIBASE_APP_ID##"], - "x-budibase-api-version": ApiVersion, - ...(json && { "Content-Type": "application/json" }), - ...(!inBuilder && { "x-budibase-type": "client" }), - } - const response = await fetch(url, { - method, - headers, - body: requestBody, - credentials: "same-origin", - }) - switch (response.status) { - case 200: - return response.json() - case 401: - notificationStore.actions.error("Invalid credentials") - return handleError(`Invalid credentials`) - case 404: - notificationStore.actions.warning("Not found") - return handleError(`${url}: Not Found`) - case 400: - return handleError(`${url}: Bad Request`) - case 403: - notificationStore.actions.error( - "Your session has expired, or you don't have permission to access that data" - ) - return handleError(`${url}: Forbidden`) - default: - if (response.status >= 200 && response.status < 400) { - return response.json() - } - return handleError(`${url} - ${response.statusText}`) - } - } catch (error) { - return handleError(error) - } -} - -/** - * Performs an API call to the server and caches the response. - * Future invocation for this URL will return the cached result instead of - * hitting the server again. - */ -const makeCachedApiCall = async params => { - const identifier = params.url - if (!identifier) { - return null - } - if (!cache[identifier]) { - cache[identifier] = makeApiCall(params) - cache[identifier] = await cache[identifier] - } - return await cache[identifier] -} - -/** - * Constructs an API call function for a particular HTTP method. - */ -const requestApiCall = method => async params => { - const { url, cache = false } = params - const fixedUrl = `/${url}`.replace("//", "/") - const enrichedParams = { ...params, method, url: fixedUrl } - return await (cache ? makeCachedApiCall : makeApiCall)(enrichedParams) -} - -export default { - post: requestApiCall("POST"), - get: requestApiCall("GET"), - patch: requestApiCall("PATCH"), - del: requestApiCall("DELETE"), - error: handleError, -} diff --git a/packages/client/src/components/app/DataProvider.svelte b/packages/client/src/components/app/DataProvider.svelte index 71c54db4da..383824d65a 100644 --- a/packages/client/src/components/app/DataProvider.svelte +++ b/packages/client/src/components/app/DataProvider.svelte @@ -2,8 +2,7 @@ import { getContext } from "svelte" import { ProgressCircle, Pagination } from "@budibase/bbui" import Placeholder from "./Placeholder.svelte" - import { fetchData } from "utils/fetch/fetchData.js" - import { buildLuceneQuery } from "builder/src/helpers/lucene" + import { fetchData, LuceneUtils } from "@budibase/frontend-core" export let dataSource export let filter @@ -18,7 +17,7 @@ // We need to manage our lucene query manually as we want to allow components // to extend it let queryExtensions = {} - $: defaultQuery = buildLuceneQuery(filter) + $: defaultQuery = LuceneUtils.buildLuceneQuery(filter) $: query = extendQuery(defaultQuery, queryExtensions) // Keep our data fetch instance up to date diff --git a/packages/client/src/components/app/dynamic-filter/DynamicFilter.svelte b/packages/client/src/components/app/dynamic-filter/DynamicFilter.svelte index 20909d011c..d70bc34198 100644 --- a/packages/client/src/components/app/dynamic-filter/DynamicFilter.svelte +++ b/packages/client/src/components/app/dynamic-filter/DynamicFilter.svelte @@ -3,7 +3,7 @@ import { getContext, onDestroy } from "svelte" import { ModalContent, Modal } from "@budibase/bbui" import FilterModal from "./FilterModal.svelte" - import { buildLuceneQuery } from "builder/src/helpers/lucene" + import { LuceneUtils } from "@budibase/frontend-core" import Button from "../Button.svelte" export let dataProvider @@ -32,7 +32,7 @@ // Add query extension to data provider $: { if (filters?.length) { - const queryExtension = buildLuceneQuery(filters) + const queryExtension = LuceneUtils.buildLuceneQuery(filters) addExtension?.($component.id, queryExtension) } else { removeExtension?.($component.id) diff --git a/packages/client/src/components/app/dynamic-filter/FilterModal.svelte b/packages/client/src/components/app/dynamic-filter/FilterModal.svelte index f303c69aaf..f732dc8ef2 100644 --- a/packages/client/src/components/app/dynamic-filter/FilterModal.svelte +++ b/packages/client/src/components/app/dynamic-filter/FilterModal.svelte @@ -11,14 +11,12 @@ Select, } from "@budibase/bbui" import { generate } from "shortid" - import { - getValidOperatorsForType, - OperatorOptions, - } from "builder/src/constants/lucene" + import { LuceneUtils } from "@budibase/frontend-core" export let schemaFields export let filters = [] + const operatorOptions = LuceneUtils.OperatorOptions const BannedTypes = ["link", "attachment", "formula", "json"] $: fieldOptions = (schemaFields ?? []) @@ -31,7 +29,7 @@ { id: generate(), field: null, - operator: OperatorOptions.Equals.value, + operator: operatorOptions.Equals.value, value: null, valueType: "Value", }, @@ -53,11 +51,11 @@ expression.type = schemaFields.find(x => x.name === field)?.type // Ensure a valid operator is set - const validOperators = getValidOperatorsForType(expression.type).map( - x => x.value - ) + const validOperators = LuceneUtils.getValidOperatorsForType( + expression.type + ).map(x => x.value) if (!validOperators.includes(expression.operator)) { - expression.operator = validOperators[0] ?? OperatorOptions.Equals.value + expression.operator = validOperators[0] ?? operatorOptions.Equals.value onOperatorChange(expression, expression.operator) } @@ -72,8 +70,8 @@ const onOperatorChange = (expression, operator) => { const noValueOptions = [ - OperatorOptions.Empty.value, - OperatorOptions.NotEmpty.value, + operatorOptions.Empty.value, + operatorOptions.NotEmpty.value, ] expression.noValue = noValueOptions.includes(operator) if (expression.noValue) { @@ -109,7 +107,7 @@ /> onOperatorChange(filter, e.detail)} placeholder={null} diff --git a/packages/builder/src/helpers/fetchTableData.js b/packages/builder/src/helpers/fetchTableData.js index 6d61ec813e..c854b066d8 100644 --- a/packages/builder/src/helpers/fetchTableData.js +++ b/packages/builder/src/helpers/fetchTableData.js @@ -4,7 +4,7 @@ // add a core package. import { writable, derived, get } from "svelte/store" import * as API from "../builderStore/api" -import { buildLuceneQuery } from "./lucene" +import { LuceneUtils } from "@budibase/frontend-core" const defaultOptions = { tableId: null, @@ -113,7 +113,7 @@ export const fetchTableData = opts => { sortType = type === "number" ? "number" : "string" // Build the lucene query - query = buildLuceneQuery(filters) + query = LuceneUtils.buildLuceneQuery(filters) // Actually fetch data const page = await fetchPage() diff --git a/packages/builder/src/pages/builder/_layout.svelte b/packages/builder/src/pages/builder/_layout.svelte index 12a544096a..31f1d18d56 100644 --- a/packages/builder/src/pages/builder/_layout.svelte +++ b/packages/builder/src/pages/builder/_layout.svelte @@ -2,12 +2,7 @@ import { isActive, redirect, params } from "@roxi/routify" import { admin, auth } from "stores/portal" import { onMount } from "svelte" - import { - Cookies, - getCookie, - removeCookie, - setCookie, - } from "builderStore/cookies" + import { CookieUtils, Constants } from "@budibase/frontend-core" let loaded = false @@ -79,7 +74,7 @@ loaded && apiReady && !$auth.user && - !getCookie(Cookies.ReturnUrl) && + !CookieUtils.getCookie(Constants.Cookies.ReturnUrl) && // logout triggers a page refresh, so we don't want to set the return url !$auth.postLogout && // don't set the return url on pre-login pages @@ -88,7 +83,7 @@ !$isActive("./admin") ) { const url = window.location.pathname - setCookie(Cookies.ReturnUrl, url) + CookieUtils.setCookie(Constants.Cookies.ReturnUrl, url) } // if tenant is not set go to it @@ -122,9 +117,9 @@ } // lastly, redirect to the return url if it has been set else if (loaded && apiReady && $auth.user) { - const returnUrl = getCookie(Cookies.ReturnUrl) + const returnUrl = CookieUtils.getCookie(Constants.Cookies.ReturnUrl) if (returnUrl) { - removeCookie(Cookies.ReturnUrl) + CookieUtils.removeCookie(Constants.Cookies.ReturnUrl) window.location.href = returnUrl } } diff --git a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte index 20d30fdfbb..896e1d53e1 100644 --- a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte +++ b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte @@ -22,7 +22,7 @@ import { onMount } from "svelte" import api from "builderStore/api" import { organisation, admin } from "stores/portal" - import { uuid } from "builderStore/uuid" + import { Helpers } from "@budibase/bbui" import analytics, { Events } from "analytics" const ConfigTypes = { @@ -164,7 +164,7 @@ //Add a UUID here so each config is distinguishable when it arrives at the login page for (let config of element.config.configs) { if (!config.uuid) { - config.uuid = uuid() + config.uuid = Helpers.uuid() } // callback urls shouldn't be included delete config.callbackURL diff --git a/packages/client/src/components/app/dynamic-filter/FilterModal.svelte b/packages/client/src/components/app/dynamic-filter/FilterModal.svelte index f732dc8ef2..652dd7ccd5 100644 --- a/packages/client/src/components/app/dynamic-filter/FilterModal.svelte +++ b/packages/client/src/components/app/dynamic-filter/FilterModal.svelte @@ -11,12 +11,11 @@ Select, } from "@budibase/bbui" import { generate } from "shortid" - import { LuceneUtils } from "@budibase/frontend-core" + import { LuceneUtils, Constants } from "@budibase/frontend-core" export let schemaFields export let filters = [] - const operatorOptions = LuceneUtils.OperatorOptions const BannedTypes = ["link", "attachment", "formula", "json"] $: fieldOptions = (schemaFields ?? []) @@ -29,7 +28,7 @@ { id: generate(), field: null, - operator: operatorOptions.Equals.value, + operator: Constants.OperatorOptions.Equals.value, value: null, valueType: "Value", }, @@ -55,7 +54,8 @@ expression.type ).map(x => x.value) if (!validOperators.includes(expression.operator)) { - expression.operator = validOperators[0] ?? operatorOptions.Equals.value + expression.operator = + validOperators[0] ?? Constants.OperatorOptions.Equals.value onOperatorChange(expression, expression.operator) } @@ -70,8 +70,8 @@ const onOperatorChange = (expression, operator) => { const noValueOptions = [ - operatorOptions.Empty.value, - operatorOptions.NotEmpty.value, + Constants.OperatorOptions.Empty.value, + Constants.OperatorOptions.NotEmpty.value, ] expression.noValue = noValueOptions.includes(operator) if (expression.noValue) { diff --git a/packages/frontend-core/src/constants.js b/packages/frontend-core/src/constants.js index 01c3b742b2..33cf1b7d1c 100644 --- a/packages/frontend-core/src/constants.js +++ b/packages/frontend-core/src/constants.js @@ -1,10 +1,65 @@ +/** + * Operator options for lucene queries + */ +export const OperatorOptions = { + Equals: { + value: "equal", + label: "Equals", + }, + NotEquals: { + value: "notEqual", + label: "Not equals", + }, + Empty: { + value: "empty", + label: "Is empty", + }, + NotEmpty: { + value: "notEmpty", + label: "Is not empty", + }, + StartsWith: { + value: "string", + label: "Starts with", + }, + Like: { + value: "fuzzy", + label: "Like", + }, + MoreThan: { + value: "rangeLow", + label: "More than", + }, + LessThan: { + value: "rangeHigh", + label: "Less than", + }, + Contains: { + value: "equal", + label: "Contains", + }, + NotContains: { + value: "notEqual", + label: "Does Not Contain", + }, +} + +// Cookie names +export const Cookies = { + Auth: "budibase:auth", + CurrentApp: "budibase:currentapp", + ReturnUrl: "budibase:returnurl", +} + +// Table names export const TableNames = { USERS: "ta_users", } -export const ApiVersion = "1" /** - * API Version Changelog + * API version header attached to all requests. + * Version changelog: * v1: * - Coerce types for search endpoint */ +export const ApiVersion = "1" diff --git a/packages/frontend-core/src/utils/cookies.js b/packages/frontend-core/src/utils/cookies.js index cb4e46ec86..5ecaa3424f 100644 --- a/packages/frontend-core/src/utils/cookies.js +++ b/packages/frontend-core/src/utils/cookies.js @@ -1,9 +1,3 @@ -export const Cookies = { - Auth: "budibase:auth", - CurrentApp: "budibase:currentapp", - ReturnUrl: "budibase:returnurl", -} - export function setCookie(name, value) { if (getCookie(name)) { removeCookie(name) diff --git a/packages/frontend-core/src/utils/lucene.js b/packages/frontend-core/src/utils/lucene.js index 7b725ad63d..bf16226a3b 100644 --- a/packages/frontend-core/src/utils/lucene.js +++ b/packages/frontend-core/src/utils/lucene.js @@ -1,50 +1,5 @@ import { Helpers } from "@budibase/bbui" - -/** - * Operator options for lucene queries - */ -export const OperatorOptions = { - Equals: { - value: "equal", - label: "Equals", - }, - NotEquals: { - value: "notEqual", - label: "Not equals", - }, - Empty: { - value: "empty", - label: "Is empty", - }, - NotEmpty: { - value: "notEmpty", - label: "Is not empty", - }, - StartsWith: { - value: "string", - label: "Starts with", - }, - Like: { - value: "fuzzy", - label: "Like", - }, - MoreThan: { - value: "rangeLow", - label: "More than", - }, - LessThan: { - value: "rangeHigh", - label: "Less than", - }, - Contains: { - value: "equal", - label: "Contains", - }, - NotContains: { - value: "notEqual", - label: "Does Not Contain", - }, -} +import { OperatorOptions } from "../constants" /** * Returns the valid operator options for a certain data type From 6a07e727cd3c4bd608206946b221e8138495f124 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 11:26:43 +0000 Subject: [PATCH 08/63] Fix recursion issue with applying API method patches --- packages/frontend-core/src/api/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 3632670dce..6f321307ae 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -179,8 +179,9 @@ export const createAPIClient = config => { const patches = Object.entries(config.patches || {}) if (patches.length) { patches.forEach(([method, fn]) => { + const baseFn = API[method] API[method] = async (...params) => { - const output = await API[method](...params) + const output = await baseFn(...params) return await fn({ params, output }) } }) From c7e98623bc4a3ffe6c351a7cb5b3ae8d2d4e66b1 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 11:29:30 +0000 Subject: [PATCH 09/63] Update usage of DataFetching in client apps --- .../src/components/app/DataProvider.svelte | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/client/src/components/app/DataProvider.svelte b/packages/client/src/components/app/DataProvider.svelte index 4455461287..69b2ccfc82 100644 --- a/packages/client/src/components/app/DataProvider.svelte +++ b/packages/client/src/components/app/DataProvider.svelte @@ -11,7 +11,7 @@ export let limit export let paginate - const { styleable, Provider, ActionTypes } = getContext("sdk") + const { styleable, Provider, ActionTypes, API } = getContext("sdk") const component = getContext("component") // We need to manage our lucene query manually as we want to allow components @@ -82,12 +82,16 @@ } const createFetch = datasource => { - return fetchData(datasource, { - query, - sortColumn, - sortOrder, - limit, - paginate, + return fetchData({ + API, + datasource, + options: { + query, + sortColumn, + sortOrder, + limit, + paginate, + }, }) } From a3d6af7b9fac68c33a4645d46842759e3911ddfa Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 11:30:51 +0000 Subject: [PATCH 10/63] Update usage of fetch client app route endpoint --- packages/client/src/stores/routes.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/client/src/stores/routes.js b/packages/client/src/stores/routes.js index 6614d4d236..b4274197ae 100644 --- a/packages/client/src/stores/routes.js +++ b/packages/client/src/stores/routes.js @@ -18,7 +18,7 @@ const createRouteStore = () => { const fetchRoutes = async () => { let routeConfig try { - routeConfig = await API.fetchRoutes() + routeConfig = await API.fetchClientAppRoutes() } catch (error) { routeConfig = null } From d494e53786fa64359683f93a4c38494fa6a1fa19 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 11:50:18 +0000 Subject: [PATCH 11/63] Remove static functions from data fetch models --- packages/client/src/sdk.js | 6 ++-- .../src/utils/schema.js | 28 ++++++++++--------- packages/frontend-core/src/fetch/DataFetch.js | 12 ++++---- .../frontend-core/src/fetch/FieldFetch.js | 2 +- .../frontend-core/src/fetch/JSONArrayFetch.js | 2 +- .../src/fetch/NestedProviderFetch.js | 2 +- .../frontend-core/src/fetch/QueryFetch.js | 2 +- packages/frontend-core/src/fetch/ViewFetch.js | 2 +- packages/frontend-core/src/index.js | 1 - 9 files changed, 29 insertions(+), 28 deletions(-) rename packages/{frontend-core => client}/src/utils/schema.js (66%) diff --git a/packages/client/src/sdk.js b/packages/client/src/sdk.js index aa87330edb..c5e023832f 100644 --- a/packages/client/src/sdk.js +++ b/packages/client/src/sdk.js @@ -1,4 +1,3 @@ -import { SchemaUtils } from "@budibase/frontend-core" import { API } from "./api.js" import { authStore, @@ -11,7 +10,8 @@ import { styleable } from "utils/styleable" import { linkable } from "utils/linkable" import { getAction } from "utils/getAction" import Provider from "components/context/Provider.svelte" -import { ActionTypes } from "constants" +import { ActionTypes } from "./constants" +import { fetchDatasourceSchema } from "./utils/schema.js" export default { API, @@ -23,7 +23,7 @@ export default { styleable, linkable, getAction, - fetchDatasourceSchema: SchemaUtils.fetchDatasourceSchema, + fetchDatasourceSchema, Provider, ActionTypes, } diff --git a/packages/frontend-core/src/utils/schema.js b/packages/client/src/utils/schema.js similarity index 66% rename from packages/frontend-core/src/utils/schema.js rename to packages/client/src/utils/schema.js index 085ed482d7..46beaa5de7 100644 --- a/packages/frontend-core/src/utils/schema.js +++ b/packages/client/src/utils/schema.js @@ -1,12 +1,13 @@ -import { convertJSONSchemaToTableSchema } from "./json" -import DataFetch from "../fetch/DataFetch.js" -import TableFetch from "../fetch/TableFetch.js" -import ViewFetch from "../fetch/ViewFetch.js" -import QueryFetch from "../fetch/QueryFetch.js" -import RelationshipFetch from "../fetch/RelationshipFetch.js" -import NestedProviderFetch from "../fetch/NestedProviderFetch.js" -import FieldFetch from "../fetch/FieldFetch.js" -import JSONArrayFetch from "../fetch/JSONArrayFetch.js" +import { API } from "../api.js" +import { JSONUtils } from "@budibase/frontend-core" +import DataFetch from "@budibase/frontend-core/src/fetch/DataFetch.js" +import TableFetch from "@budibase/frontend-core/src/fetch/TableFetch.js" +import ViewFetch from "@budibase/frontend-core/src/fetch/ViewFetch.js" +import QueryFetch from "@budibase/frontend-core/src/fetch/QueryFetch.js" +import RelationshipFetch from "@budibase/frontend-core/src/fetch/RelationshipFetch.js" +import NestedProviderFetch from "@budibase/frontend-core/src/fetch/NestedProviderFetch.js" +import FieldFetch from "@budibase/frontend-core/src/fetch/FieldFetch.js" +import JSONArrayFetch from "@budibase/frontend-core/src/fetch/JSONArrayFetch.js" /** * Fetches the schema of any kind of datasource. @@ -31,10 +32,11 @@ export const fetchDatasourceSchema = async ( if (!handler) { return null } + const instance = new handler({ API }) // Get the datasource definition and then schema - const definition = await handler.getDefinition(datasource) - let schema = handler.getSchema(datasource, definition) + const definition = await instance.getDefinition(datasource) + let schema = instance.getSchema(datasource, definition) if (!schema) { return null } @@ -44,7 +46,7 @@ export const fetchDatasourceSchema = async ( Object.keys(schema).forEach(fieldKey => { const fieldSchema = schema[fieldKey] if (fieldSchema?.type === "json") { - const jsonSchema = convertJSONSchemaToTableSchema(fieldSchema, { + const jsonSchema = JSONUtils.convertJSONSchemaToTableSchema(fieldSchema, { squashObjects: true, }) Object.keys(jsonSchema).forEach(jsonKey => { @@ -78,5 +80,5 @@ export const fetchDatasourceSchema = async ( } // Ensure schema structure is correct - return DataFetch.enrichSchema(schema) + return instance.enrichSchema(schema) } diff --git a/packages/frontend-core/src/fetch/DataFetch.js b/packages/frontend-core/src/fetch/DataFetch.js index cf47f984cf..72e1d84f00 100644 --- a/packages/frontend-core/src/fetch/DataFetch.js +++ b/packages/frontend-core/src/fetch/DataFetch.js @@ -118,7 +118,7 @@ export default class DataFetch { const { datasource, filter, sortColumn, paginate } = this.options // Fetch datasource definition and determine feature flags - const definition = await this.constructor.getDefinition(datasource) + const definition = await this.getDefinition(datasource) const features = this.determineFeatureFlags(definition) this.featureStore.set({ supportsSearch: !!features?.supportsSearch, @@ -127,8 +127,8 @@ export default class DataFetch { }) // Fetch and enrich schema - let schema = this.constructor.getSchema(datasource, definition) - schema = DataFetch.enrichSchema(schema) + let schema = this.getSchema(datasource, definition) + schema = this.enrichSchema(schema) if (!schema) { return } @@ -224,7 +224,7 @@ export default class DataFetch { * @param datasource * @return {object} the definition */ - static async getDefinition(datasource) { + async getDefinition(datasource) { if (!datasource?.tableId) { return null } @@ -242,7 +242,7 @@ export default class DataFetch { * @param definition the datasource definition * @return {object} the schema */ - static getSchema(datasource, definition) { + getSchema(datasource, definition) { return definition?.schema } @@ -251,7 +251,7 @@ export default class DataFetch { * @param schema the datasource schema * @return {object} the enriched datasource schema */ - static enrichSchema(schema) { + enrichSchema(schema) { if (schema == null) { return null } diff --git a/packages/frontend-core/src/fetch/FieldFetch.js b/packages/frontend-core/src/fetch/FieldFetch.js index 755e367ac4..9402a45a83 100644 --- a/packages/frontend-core/src/fetch/FieldFetch.js +++ b/packages/frontend-core/src/fetch/FieldFetch.js @@ -1,7 +1,7 @@ import DataFetch from "./DataFetch.js" export default class FieldFetch extends DataFetch { - static async getDefinition(datasource) { + async getDefinition(datasource) { // Field sources have their schema statically defined let schema if (datasource.fieldType === "attachment") { diff --git a/packages/frontend-core/src/fetch/JSONArrayFetch.js b/packages/frontend-core/src/fetch/JSONArrayFetch.js index 783ad9973c..ab2af3e2c7 100644 --- a/packages/frontend-core/src/fetch/JSONArrayFetch.js +++ b/packages/frontend-core/src/fetch/JSONArrayFetch.js @@ -2,7 +2,7 @@ import FieldFetch from "./FieldFetch.js" import { getJSONArrayDatasourceSchema } from "../utils/json" export default class JSONArrayFetch extends FieldFetch { - static async getDefinition(datasource) { + async getDefinition(datasource) { // JSON arrays need their table definitions fetched. // We can then extract their schema as a subset of the table schema. try { diff --git a/packages/frontend-core/src/fetch/NestedProviderFetch.js b/packages/frontend-core/src/fetch/NestedProviderFetch.js index 163d7e9930..01c22b6ba0 100644 --- a/packages/frontend-core/src/fetch/NestedProviderFetch.js +++ b/packages/frontend-core/src/fetch/NestedProviderFetch.js @@ -1,7 +1,7 @@ import DataFetch from "./DataFetch.js" export default class NestedProviderFetch extends DataFetch { - static async getDefinition(datasource) { + async getDefinition(datasource) { // Nested providers should already have exposed their own schema return { schema: datasource?.value?.schema, diff --git a/packages/frontend-core/src/fetch/QueryFetch.js b/packages/frontend-core/src/fetch/QueryFetch.js index a95ede95de..19aea6dfde 100644 --- a/packages/frontend-core/src/fetch/QueryFetch.js +++ b/packages/frontend-core/src/fetch/QueryFetch.js @@ -11,7 +11,7 @@ export default class QueryFetch extends DataFetch { return { supportsPagination } } - static async getDefinition(datasource) { + async getDefinition(datasource) { if (!datasource?._id) { return null } diff --git a/packages/frontend-core/src/fetch/ViewFetch.js b/packages/frontend-core/src/fetch/ViewFetch.js index 431b2046df..981969f46c 100644 --- a/packages/frontend-core/src/fetch/ViewFetch.js +++ b/packages/frontend-core/src/fetch/ViewFetch.js @@ -1,7 +1,7 @@ import DataFetch from "./DataFetch.js" export default class ViewFetch extends DataFetch { - static getSchema(datasource, definition) { + getSchema(datasource, definition) { return definition?.views?.[datasource.name]?.schema } diff --git a/packages/frontend-core/src/index.js b/packages/frontend-core/src/index.js index 7e474db757..53822fdfb4 100644 --- a/packages/frontend-core/src/index.js +++ b/packages/frontend-core/src/index.js @@ -5,4 +5,3 @@ export * as Constants from "./constants" export * as LuceneUtils from "./utils/lucene" export * as JSONUtils from "./utils/json" export * as CookieUtils from "./utils/cookies" -export * as SchemaUtils from "./utils/schema" From 86e0e8acc27accb0823112b831b8ff612059bbfa Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 11:52:29 +0000 Subject: [PATCH 12/63] Fix DND throwing errors due to browser API updates --- packages/client/src/components/preview/DNDHandler.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/client/src/components/preview/DNDHandler.svelte b/packages/client/src/components/preview/DNDHandler.svelte index 82828b1258..ca083dd01e 100644 --- a/packages/client/src/components/preview/DNDHandler.svelte +++ b/packages/client/src/components/preview/DNDHandler.svelte @@ -143,7 +143,7 @@ // Callback when entering a potential drop target const onDragEnter = e => { // Skip if we aren't validly dragging currently - if (!dragInfo) { + if (!dragInfo || !e.target.closest) { return } From 978c3984e9f265e21a9ac1234e1b260d004108f2 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 13:37:06 +0000 Subject: [PATCH 13/63] Extract error mesages better when throwing errors in core api client --- packages/frontend-core/src/api/index.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 6f321307ae..0b91df8f76 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -33,16 +33,17 @@ export const createAPIClient = config => { */ const makeErrorFromResponse = async response => { // Try to read a message from the error - let message + let message = response.statusText try { const json = await response.json() - if (json?.error) { + if (json?.message) { + message = json.message + } else if (json?.error) { message = json.error } } catch (error) { // Do nothing } - console.log("building error from", response) return { message, status: response.status, From d3a4e34b3faeccbce49a7afb65cb2ac69494c528 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 13:37:20 +0000 Subject: [PATCH 14/63] Don't show a notification if there is no error message --- packages/client/src/api.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/client/src/api.js b/packages/client/src/api.js index 911d421844..e617dae00f 100644 --- a/packages/client/src/api.js +++ b/packages/client/src/api.js @@ -18,7 +18,9 @@ export const API = createAPIClient({ // We could also log these to sentry. // Or we could check error.status and redirect to login on a 403 etc. onError: error => { - notificationStore.actions.error(error.message) + if (error.message) { + notificationStore.actions.error(error.message) + } }, // Patch certain endpoints with functionality specific to client apps From 9f180ca29205378b4208c444d242b60389108f50 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 13:37:33 +0000 Subject: [PATCH 15/63] Fix issue with search fields in builder when not using a table --- .../PropertiesPanel/PropertyControls/SearchFieldSelect.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SearchFieldSelect.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SearchFieldSelect.svelte index 474fbc676c..e609426b1e 100644 --- a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SearchFieldSelect.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SearchFieldSelect.svelte @@ -25,7 +25,7 @@ return base } const currentTable = $tables.list.find(table => table._id === ds.tableId) - return getFields(base, { allowLinks: currentTable.sql }).map( + return getFields(base, { allowLinks: currentTable?.sql }).map( field => field.name ) } From 21443b0e53cda36e7a3f035eff116be8a5b7cd6b Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 13:55:07 +0000 Subject: [PATCH 16/63] Tidy core API client --- packages/frontend-core/src/api/index.js | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 0b91df8f76..9c4713daa8 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -28,9 +28,7 @@ export const createAPIClient = config => { ...config, } - /** - * Handler for API errors. - */ + // Generates an error object from an API response const makeErrorFromResponse = async response => { // Try to read a message from the error let message = response.statusText @@ -50,6 +48,7 @@ export const createAPIClient = config => { } } + // Generates an error object from a string const makeError = message => { return { message, @@ -57,10 +56,7 @@ export const createAPIClient = config => { } } - /** - * Performs an API call to the server. - * App ID header is always correctly set. - */ + // Performs an API call to the server. const makeApiCall = async ({ method, url, @@ -119,11 +115,9 @@ export const createAPIClient = config => { } } - /** - * Performs an API call to the server and caches the response. - * Future invocation for this URL will return the cached result instead of - * hitting the server again. - */ + // Performs an API call to the server and caches the response. + // Future invocation for this URL will return the cached result instead of + // hitting the server again. let cache = {} const makeCachedApiCall = async params => { const identifier = params.url @@ -137,9 +131,7 @@ export const createAPIClient = config => { return await cache[identifier] } - /** - * Constructs an API call function for a particular HTTP method. - */ + // Constructs an API call function for a particular HTTP method. const requestApiCall = method => async params => { let { url, cache = false, external = false } = params if (!external) { @@ -160,7 +152,7 @@ export const createAPIClient = config => { }, } - // Attach all other endpoints + // Attach all endpoints API = { ...API, ...buildAnalyticsEndpoints(API), From b74815d41b2737615b80851a03e85af8648f28b0 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 14:27:43 +0000 Subject: [PATCH 17/63] Add URL to error objects --- packages/frontend-core/src/api/index.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 9c4713daa8..8fb61c9edb 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -45,6 +45,7 @@ export const createAPIClient = config => { return { message, status: response.status, + url: response.url, } } @@ -53,6 +54,7 @@ export const createAPIClient = config => { return { message, status: 400, + url: "", } } @@ -147,6 +149,7 @@ export const createAPIClient = config => { get: requestApiCall("GET"), patch: requestApiCall("PATCH"), delete: requestApiCall("DELETE"), + put: requestApiCall("PUT"), error: message => { throw makeError(message) }, From 6a7aed1c0d51e4d88de5744141a1eb7d3dc5d695 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 18:42:30 +0000 Subject: [PATCH 18/63] Update parts of builder with core API refactor --- packages/builder/src/analytics/index.js | 19 +- packages/builder/src/builderStore/api.js | 66 ++-- .../builderStore/loadComponentLibraries.js | 16 - .../src/builderStore/store/frontend.js | 311 +++++++++--------- .../src/builderStore/store/notifications.js | 23 -- .../src/components/deploy/DeployModal.svelte | 22 +- .../builder/src/helpers/fetchTableData.js | 7 +- .../src/stores/backend/integrations.js | 19 +- packages/builder/vite.config.js | 4 + packages/frontend-core/src/api/analytics.js | 9 + packages/frontend-core/src/api/app.js | 23 ++ packages/frontend-core/src/api/builder.js | 17 + packages/frontend-core/src/api/index.js | 2 + packages/frontend-core/src/api/layouts.js | 23 ++ packages/frontend-core/src/api/routes.js | 6 + packages/frontend-core/src/api/screens.js | 23 ++ 16 files changed, 345 insertions(+), 245 deletions(-) delete mode 100644 packages/builder/src/builderStore/loadComponentLibraries.js delete mode 100644 packages/builder/src/builderStore/store/notifications.js create mode 100644 packages/frontend-core/src/api/builder.js create mode 100644 packages/frontend-core/src/api/layouts.js create mode 100644 packages/frontend-core/src/api/screens.js diff --git a/packages/builder/src/analytics/index.js b/packages/builder/src/analytics/index.js index e9edf38d74..26947a2320 100644 --- a/packages/builder/src/analytics/index.js +++ b/packages/builder/src/analytics/index.js @@ -1,8 +1,9 @@ -import api from "builderStore/api" +import { API } from "api" import PosthogClient from "./PosthogClient" import IntercomClient from "./IntercomClient" import SentryClient from "./SentryClient" import { Events } from "./constants" +import { notifications } from "@budibase/bbui" const posthog = new PosthogClient( process.env.POSTHOG_TOKEN, @@ -17,13 +18,15 @@ class AnalyticsHub { } async activate() { - const analyticsStatus = await api.get("/api/analytics") - const json = await analyticsStatus.json() - - // Analytics disabled - if (!json.enabled) return - - this.clients.forEach(client => client.init()) + try { + // Check analytics are enabled + const analyticsStatus = await API.getAnalyticsStatus() + if (analyticsStatus.enabled) { + this.clients.forEach(client => client.init()) + } + } catch (error) { + notifications.error("Error checking analytics status") + } } identify(id, metadata) { diff --git a/packages/builder/src/builderStore/api.js b/packages/builder/src/builderStore/api.js index 9dfd8af854..085c176f88 100644 --- a/packages/builder/src/builderStore/api.js +++ b/packages/builder/src/builderStore/api.js @@ -1,40 +1,44 @@ +import { + createAPIClient, + CookieUtils, + Constants, +} from "@budibase/frontend-core" import { store } from "./index" -import { get as svelteGet } from "svelte/store" -import { CookieUtils, Constants } from "@budibase/frontend-core" +import { get } from "svelte/store" +import { notifications } from "@budibase/bbui" -const apiCall = - method => - async (url, body, headers = { "Content-Type": "application/json" }) => { - headers["x-budibase-app-id"] = svelteGet(store).appId - const json = headers["Content-Type"] === "application/json" - const resp = await fetch(url, { - method: method, - body: json ? JSON.stringify(body) : body, - headers, - }) - if (resp.status === 403) { +export const API = createAPIClient({ + attachHeaders: headers => { + // Attach app ID header from store + headers["x-budibase-app-id"] = get(store).appId + }, + + onError: error => { + const { url, message, status } = error + + // Log all API errors to Sentry + // analytics.captureException(error) + + // Show a notification for any errors + if (message) { + notifications.error(`Error fetching ${url}: ${message}`) + } + + // Logout on 403's + if (status === 403) { + // Don't do anything if fetching templates. + // TODO: clarify why this is here if (url.includes("/api/templates")) { - return { json: () => [] } + return } + + // Remove the auth cookie CookieUtils.removeCookie(Constants.Cookies.Auth) - // reload after removing cookie, go to login + + // Reload after removing cookie, go to login if (!url.includes("self") && !url.includes("login")) { location.reload() } } - return resp - } - -export const post = apiCall("POST") -export const get = apiCall("GET") -export const patch = apiCall("PATCH") -export const del = apiCall("DELETE") -export const put = apiCall("PUT") - -export default { - post: apiCall("POST"), - get: apiCall("GET"), - patch: apiCall("PATCH"), - delete: apiCall("DELETE"), - put: apiCall("PUT"), -} + }, +}) diff --git a/packages/builder/src/builderStore/loadComponentLibraries.js b/packages/builder/src/builderStore/loadComponentLibraries.js deleted file mode 100644 index 8bdfcf7538..0000000000 --- a/packages/builder/src/builderStore/loadComponentLibraries.js +++ /dev/null @@ -1,16 +0,0 @@ -import { get } from "builderStore/api" - -/** - * Fetches the definitions for component library components. This includes - * their props and other metadata from components.json. - * @param {string} appId - ID of the currently running app - */ -export const fetchComponentLibDefinitions = async appId => { - const LIB_DEFINITION_URL = `/api/${appId}/components/definitions` - try { - const libDefinitionResponse = await get(LIB_DEFINITION_URL) - return await libDefinitionResponse.json() - } catch (err) { - console.error(`Error fetching component definitions for ${appId}`, err) - } -} diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index fdd4599e18..9b3a95d7f7 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -15,8 +15,7 @@ import { database, tables, } from "stores/backend" -import { fetchComponentLibDefinitions } from "../loadComponentLibraries" -import api from "../api" +import { API } from "api" import { FrontendTypes } from "constants" import analytics, { Events } from "analytics" import { @@ -29,6 +28,7 @@ import { } from "../componentUtils" import { Helpers } from "@budibase/bbui" import { removeBindings } from "../dataBinding" +import { notifications } from "@budibase/bbui" const INITIAL_FRONTEND_STATE = { apps: [], @@ -68,15 +68,12 @@ export const getFrontendStore = () => { store.actions = { initialise: async pkg => { const { layouts, screens, application, clientLibPath } = pkg - const components = await fetchComponentLibDefinitions(application.appId) - // make sure app isn't locked - if ( - components && - components.status === 400 && - components.message?.includes("lock") - ) { - throw { ok: false, reason: "locked" } - } + + // Fetch component definitions. + // Allow errors to propagate. + let components = await API.fetchComponentLibDefinitions(application.appId) + + // Reset store state store.update(state => ({ ...state, libraries: application.componentLibraries, @@ -100,56 +97,57 @@ export const getFrontendStore = () => { version: application.version, revertableVersion: application.revertableVersion, })) - await hostingStore.actions.fetch() // Initialise backend stores - const [_integrations] = await Promise.all([ - api.get("/api/integrations").then(r => r.json()), - ]) - datasources.init() - integrations.set(_integrations) - queries.init() database.set(application.instance) - tables.init() + await hostingStore.actions.fetch() + await datasources.init() + await integrations.init() + await queries.init() + await tables.init() }, theme: { save: async theme => { const appId = get(store).appId - const response = await api.put(`/api/applications/${appId}`, { theme }) - if (response.status === 200) { + const metadata = { appId, theme } + try { + await API.saveAppMetadata(metadata) store.update(state => { state.theme = theme return state }) - } else { - throw new Error("Error updating theme") + } catch (error) { + notifications.error("Error updating theme") } }, }, customTheme: { save: async customTheme => { const appId = get(store).appId - const response = await api.put(`/api/applications/${appId}`, { - customTheme, - }) - if (response.status === 200) { + const metadata = { appId, customTheme } + try { + await API.saveAppMetadata(metadata) store.update(state => { state.customTheme = customTheme return state }) - } else { - throw new Error("Error updating theme") + } catch (error) { + notifications.error("Error updating custom theme") } }, }, routing: { fetch: async () => { - const response = await api.get("/api/routing") - const json = await response.json() - store.update(state => { - state.routes = json.routes - return state - }) + try { + const routes = await API.getAppRoutes() + console.log(routes) + store.update(state => { + state.routes = routes.routes + return state + }) + } catch (error) { + notifications.error("Error fetching app routes") + } }, }, screens: { @@ -172,81 +170,100 @@ export const getFrontendStore = () => { }) }, create: async screen => { - screen = await store.actions.screens.save(screen) - store.update(state => { - state.selectedScreenId = screen._id - state.selectedComponentId = screen.props._id - state.currentFrontEndType = FrontendTypes.SCREEN - selectedAccessRole.set(screen.routing.roleId) - return state - }) - return screen + try { + const savedScreen = await API.saveScreen(screen) + store.update(state => { + state.selectedScreenId = savedScreen._id + state.selectedComponentId = savedScreen.props._id + state.currentFrontEndType = FrontendTypes.SCREEN + selectedAccessRole.set(savedScreen.routing.roleId) + return savedScreen + }) + + // Refresh routes + await store.actions.routing.fetch() + return savedScreen + } catch (error) { + notifications.error("Error creating screen") + return null + } }, save: async screen => { - const creatingNewScreen = screen._id === undefined - const response = await api.post(`/api/screens`, screen) - if (response.status !== 200) { - return - } - screen = await response.json() - await store.actions.routing.fetch() + try { + const creatingNewScreen = screen._id === undefined + const savedScreen = await API.saveScreen(screen) + store.update(state => { + const idx = state.screens.findIndex(x => x._id === savedScreen._id) + if (idx !== -1) { + state.screens.splice(idx, 1, savedScreen) + } else { + state.screens.push(savedScreen) + } + return state + }) - store.update(state => { - const foundScreen = state.screens.findIndex( - el => el._id === screen._id - ) - if (foundScreen !== -1) { - state.screens.splice(foundScreen, 1) + // Refresh routes + await store.actions.routing.fetch() + + // Select the new screen if creating a new one + if (creatingNewScreen) { + store.actions.screens.select(savedScreen._id) } - state.screens.push(screen) - return state - }) - - if (creatingNewScreen) { - store.actions.screens.select(screen._id) + return savedScreen + } catch (error) { + notifications.error("Error saving screen") + return null } - - return screen }, delete: async screens => { const screensToDelete = Array.isArray(screens) ? screens : [screens] - const screenDeletePromises = [] - store.update(state => { - for (let screenToDelete of screensToDelete) { - state.screens = state.screens.filter( - screen => screen._id !== screenToDelete._id + // Build array of promises to speed up bulk deletions + const promises = [] + screensToDelete.forEach(screen => { + // Delete the screen + promises.push( + API.deleteScreen({ + screenId: screen._id, + screenRev: screen._rev, + }) + ) + // Remove links to this screen + promises.push( + store.actions.components.links.delete( + screen.routing.route, + screen.props._instanceName ) - screenDeletePromises.push( - api.delete( - `/api/screens/${screenToDelete._id}/${screenToDelete._rev}` - ) - ) - if (screenToDelete._id === state.selectedScreenId) { + ) + }) + + try { + await Promise.all(promises) + const deletedIds = screensToDelete.map(screen => screen._id) + store.update(state => { + // Remove deleted screens from state + state.screens = state.screens.filter(screen => { + return !deletedIds.includes(screen._id) + }) + // Deselect the current screen if it was deleted + if (deletedIds.includes(state.selectedScreenId)) { state.selectedScreenId = null } - //remove the link for this screen - screenDeletePromises.push( - store.actions.components.links.delete( - screenToDelete.routing.route, - screenToDelete.props._instanceName - ) - ) - } - return state - }) - await Promise.all(screenDeletePromises) + return state + }) + } catch (error) { + notifications.error("Error deleting screens") + } }, }, preview: { saveSelected: async () => { const state = get(store) const selectedAsset = get(currentAsset) - if (state.currentFrontEndType !== FrontendTypes.LAYOUT) { - await store.actions.screens.save(selectedAsset) + return await store.actions.screens.save(selectedAsset) } else { - await store.actions.layouts.save(selectedAsset) + return await store.actions.layouts.save(selectedAsset) } }, setDevice: device => { @@ -270,36 +287,28 @@ export const getFrontendStore = () => { }) }, save: async layout => { - const layoutToSave = cloneDeep(layout) - const creatingNewLayout = layoutToSave._id === undefined - const response = await api.post(`/api/layouts`, layoutToSave) - const savedLayout = await response.json() + try { + const creatingNewLayout = layout._id === undefined + const savedLayout = await API.saveLayout(layout) + store.update(state => { + const idx = state.layouts.findIndex(x => x._id === savedLayout._id) + if (idx !== -1) { + state.layouts.splice(idx, 1, savedLayout) + } else { + state.layouts.push(savedLayout) + } + return state + }) - // Abort if saving failed - if (response.status !== 200) { - return - } - - store.update(state => { - const layoutIdx = state.layouts.findIndex( - stateLayout => stateLayout._id === savedLayout._id - ) - if (layoutIdx >= 0) { - // update existing layout - state.layouts.splice(layoutIdx, 1, savedLayout) - } else { - // save new layout - state.layouts.push(savedLayout) + // Select layout if creating a new one + if (creatingNewLayout) { + store.actions.layouts.select(savedLayout._id) } - return state - }) - - // Select layout if creating a new one - if (creatingNewLayout) { - store.actions.layouts.select(savedLayout._id) + return savedLayout + } catch (error) { + notifications.error("Error saving layout") + return null } - - return savedLayout }, find: layoutId => { if (!layoutId) { @@ -308,23 +317,26 @@ export const getFrontendStore = () => { const storeContents = get(store) return storeContents.layouts.find(layout => layout._id === layoutId) }, - delete: async layoutToDelete => { - const response = await api.delete( - `/api/layouts/${layoutToDelete._id}/${layoutToDelete._rev}` - ) - if (response.status !== 200) { - const json = await response.json() - throw new Error(json.message) + delete: async layout => { + if (!layout?._id) { + return + } + try { + await API.deleteLayout({ + layoutId: layout._id, + layoutRev: layout._rev, + }) + store.update(state => { + // Select main layout if we deleted the selected layout + if (layout._id === state.selectedLayoutId) { + state.selectedLayoutId = get(mainLayout)._id + } + state.layouts = state.layouts.filter(x => x._id !== layout._id) + return state + }) + } catch (error) { + notifications.error("Failed to delete layout") } - store.update(state => { - state.layouts = state.layouts.filter( - layout => layout._id !== layoutToDelete._id - ) - if (layoutToDelete._id === state.selectedLayoutId) { - state.selectedLayoutId = get(mainLayout)._id - } - return state - }) }, }, components: { @@ -414,16 +426,12 @@ export const getFrontendStore = () => { componentName, presetProps ) - if (!componentInstance) { + if (!componentInstance || !asset) { return } // Find parent node to attach this component to let parentComponent - - if (!asset) { - return - } if (selected) { // Use current screen or layout as parent if no component is selected const definition = store.actions.components.getDefinition( @@ -451,19 +459,24 @@ export const getFrontendStore = () => { parentComponent._children.push(componentInstance) // Save components and update UI - await store.actions.preview.saveSelected() - store.update(state => { - state.currentView = "component" - state.selectedComponentId = componentInstance._id - return state - }) + const savedAsset = await store.actions.preview.saveSelected() + if (savedAsset) { + store.update(state => { + state.currentView = "component" + state.selectedComponentId = componentInstance._id + return state + }) - // Log event - analytics.captureEvent(Events.COMPONENT.CREATED, { - name: componentInstance._component, - }) + // Log event + analytics.captureEvent(Events.COMPONENT.CREATED, { + name: componentInstance._component, + }) - return componentInstance + return componentInstance + } else { + notifications.error("Failed to create component") + return null + } }, delete: async component => { if (!component) { diff --git a/packages/builder/src/builderStore/store/notifications.js b/packages/builder/src/builderStore/store/notifications.js deleted file mode 100644 index 85e708e92a..0000000000 --- a/packages/builder/src/builderStore/store/notifications.js +++ /dev/null @@ -1,23 +0,0 @@ -import { writable } from "svelte/store" -import { generate } from "shortid" - -export const notificationStore = writable({ - notifications: [], -}) - -export function send(message, type = "default") { - notificationStore.update(state => { - state.notifications = [ - ...state.notifications, - { id: generate(), type, message }, - ] - return state - }) -} - -export const notifier = { - danger: msg => send(msg, "danger"), - warning: msg => send(msg, "warning"), - info: msg => send(msg, "info"), - success: msg => send(msg, "success"), -} diff --git a/packages/builder/src/components/deploy/DeployModal.svelte b/packages/builder/src/components/deploy/DeployModal.svelte index 33fe8d5321..4a86394c72 100644 --- a/packages/builder/src/components/deploy/DeployModal.svelte +++ b/packages/builder/src/components/deploy/DeployModal.svelte @@ -1,6 +1,6 @@ diff --git a/packages/builder/src/helpers/fetchTableData.js b/packages/builder/src/helpers/fetchTableData.js index c854b066d8..375b018039 100644 --- a/packages/builder/src/helpers/fetchTableData.js +++ b/packages/builder/src/helpers/fetchTableData.js @@ -3,7 +3,7 @@ // This will eventually be replaced by the new client implementation when we // add a core package. import { writable, derived, get } from "svelte/store" -import * as API from "../builderStore/api" +import { API } from "api" import { LuceneUtils } from "@budibase/frontend-core" const defaultOptions = { @@ -50,7 +50,7 @@ export const fetchTableData = opts => { const fetchPage = async bookmark => { lastBookmark = bookmark const { tableId, limit, sortColumn, sortOrder, paginate } = options - const res = await API.post(`/api/${options.tableId}/search`, { + return await API.searchTable({ tableId, query, limit, @@ -60,7 +60,6 @@ export const fetchTableData = opts => { paginate, bookmark, }) - return await res.json() } // Fetches a fresh set of results from the server @@ -77,7 +76,7 @@ export const fetchTableData = opts => { // are objects let enrichedSchema = schema if (!enrichedSchema) { - const definition = await API.get(`/api/tables/${tableId}`) + const definition = await API.fetchTableDefinition(tableId) enrichedSchema = definition?.schema ?? null } if (enrichedSchema) { diff --git a/packages/builder/src/stores/backend/integrations.js b/packages/builder/src/stores/backend/integrations.js index d1df818248..c19b09f1fb 100644 --- a/packages/builder/src/stores/backend/integrations.js +++ b/packages/builder/src/stores/backend/integrations.js @@ -1,3 +1,20 @@ import { writable } from "svelte/store" +import { API } from "api" -export const integrations = writable({}) +const createIntegrationsStore = () => { + const store = writable(null) + + return { + ...store, + init: async () => { + try { + const integrations = await API.getIntegrations() + store.set(integrations) + } catch (error) { + store.set(null) + } + }, + } +} + +export const integrations = createIntegrationsStore() diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index d66d677555..dbaf1ffb2b 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -56,6 +56,10 @@ export default ({ mode }) => { find: "stores", replacement: path.resolve("./src/stores"), }, + { + find: "api", + replacement: path.resolve("./src/builderStore/api.js"), + }, { find: "constants", replacement: path.resolve("./src/constants"), diff --git a/packages/frontend-core/src/api/analytics.js b/packages/frontend-core/src/api/analytics.js index 5acaf0ac76..0402365e73 100644 --- a/packages/frontend-core/src/api/analytics.js +++ b/packages/frontend-core/src/api/analytics.js @@ -7,4 +7,13 @@ export const buildAnalyticsEndpoints = API => ({ url: `/api/analytics/ping`, }) }, + + /** + * Gets the current status of analytics for this environment + */ + getAnalyticsStatus: async () => { + return await API.get({ + url: "/api/analytics", + }) + }, }) diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index c1dc5deea6..13fd831196 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -7,4 +7,27 @@ export const buildAppEndpoints = API => ({ url: `/api/applications/${appId}/appPackage`, }) }, + + /** + * Saves and patches metadata about an app + * @param metadata the app metadata to save + */ + saveAppMetadata: async metadata => { + if (!metadata?.appId) { + throw API.error("App metadata must have an appId set") + } + return await API.put({ + url: `/api/applications/${metadata.appId}`, + body: metadata, + }) + }, + + /** + * Deploys the current app. + */ + deployApp: async () => { + return await API.post({ + url: "/api/deploy", + }) + }, }) diff --git a/packages/frontend-core/src/api/builder.js b/packages/frontend-core/src/api/builder.js new file mode 100644 index 0000000000..dbe64e611e --- /dev/null +++ b/packages/frontend-core/src/api/builder.js @@ -0,0 +1,17 @@ +export const buildBuilderEndpoints = API => ({ + /** + * Fetches the definitions for component library components. This includes + * their props and other metadata from components.json. + * @param {string} appId - ID of the currently running app + */ + fetchComponentLibDefinitions: async appId => { + return await API.get({ url: `/api/${appId}/components/definitions` }) + }, + + /** + * Gets the list of available integrations. + */ + getIntegrations: async () => { + return await API.get({ url: "/api/integrations" }) + }, +}) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 8fb61c9edb..f1c12dc941 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -8,6 +8,7 @@ import { buildQueryEndpoints } from "./queries" import { buildRelationshipEndpoints } from "./relationships" import { buildRouteEndpoints } from "./routes" import { buildRowEndpoints } from "./rows" +import { buildScreenEndpoints } from "./screens" import { buildTableEndpoints } from "./tables" import { buildViewEndpoints } from "./views" @@ -167,6 +168,7 @@ export const createAPIClient = config => { ...buildRelationshipEndpoints(API), ...buildRouteEndpoints(API), ...buildRowEndpoints(API), + ...buildScreenEndpoints(API), ...buildTableEndpoints(API), ...buildViewEndpoints(API), } diff --git a/packages/frontend-core/src/api/layouts.js b/packages/frontend-core/src/api/layouts.js new file mode 100644 index 0000000000..51bce1f533 --- /dev/null +++ b/packages/frontend-core/src/api/layouts.js @@ -0,0 +1,23 @@ +export const buildLayoutEndpoints = API => ({ + /** + * Saves a layout. + * @param layout the layout to save + */ + saveLayout: async layout => { + return await API.post({ + url: "/api/layouts", + body: layout, + }) + }, + + /** + * Deletes a layout. + * @param layoutId the ID of the layout to delete + * @param layoutRev the rev of the layout to delete + */ + deleteLayout: async ({ layoutId, layoutRev }) => { + return await API.delete({ + url: `/api/layouts/${layoutId}/${layoutRev}`, + }) + }, +}) diff --git a/packages/frontend-core/src/api/routes.js b/packages/frontend-core/src/api/routes.js index 171f4f45d8..d87988103f 100644 --- a/packages/frontend-core/src/api/routes.js +++ b/packages/frontend-core/src/api/routes.js @@ -7,4 +7,10 @@ export const buildRouteEndpoints = API => ({ url: `/api/routing/client`, }) }, + + fetchAppRoutes: async () => { + return await API.get({ + url: "/api/routing", + }) + }, }) diff --git a/packages/frontend-core/src/api/screens.js b/packages/frontend-core/src/api/screens.js new file mode 100644 index 0000000000..1daa79153b --- /dev/null +++ b/packages/frontend-core/src/api/screens.js @@ -0,0 +1,23 @@ +export const buildScreenEndpoints = API => ({ + /** + * Saves a screen definition + * @param screen the screen to save + */ + saveScreen: async screen => { + return await API.post({ + url: "/api/screens", + body: screen, + }) + }, + + /** + * Deletes a screen. + * @param screenId the ID of the screen to delete + * @param screenRev the rev of the screen to delete + */ + deleteScreen: async ({ screenId, screenRev }) => { + return await API.delete({ + url: `/api/screens/${screenId}/${screenRev}`, + }) + }, +}) From 6319760b8c61027c06138ef5d52951840dfc3d6d Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 20 Jan 2022 19:27:15 +0000 Subject: [PATCH 19/63] More work on builder API refactor --- .../src/components/common/LinkedRowSelector.svelte | 7 ++----- packages/builder/src/helpers/fetchData.js | 6 +++--- packages/frontend-core/src/api/app.js | 10 ++++++++++ 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/packages/builder/src/components/common/LinkedRowSelector.svelte b/packages/builder/src/components/common/LinkedRowSelector.svelte index 1f3dea137f..592ee47565 100644 --- a/packages/builder/src/components/common/LinkedRowSelector.svelte +++ b/packages/builder/src/components/common/LinkedRowSelector.svelte @@ -1,6 +1,6 @@ diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index 882bd837ef..4edd76d9b1 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -9,7 +9,7 @@ export const buildAppEndpoints = API => ({ }, /** - * Saves and patches metadata about an app + * Saves and patches metadata about an app. * @param metadata the app metadata to save */ saveAppMetadata: async metadata => { @@ -40,4 +40,13 @@ export const buildAppEndpoints = API => ({ url: `/api/dev/${appId}/revert`, }) }, + + /** + * Gets a list of app deployments. + */ + getAppDeployments: async () => { + return await API.get({ + url: "/api/deployments", + }) + }, }) From f100ae42fd91fce40ce99ef09ee701ee5cfb7ca3 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 21 Jan 2022 09:10:59 +0000 Subject: [PATCH 21/63] Add more work on API refactor in builder --- packages/builder/src/builderStore/api.js | 11 ++- .../src/components/common/Dropzone.svelte | 10 ++- .../src/components/deploy/DeployModal.svelte | 2 +- .../src/components/deploy/RevertModal.svelte | 2 +- .../src/components/deploy/VersionModal.svelte | 33 ++----- .../components/start/CreateAppModal.svelte | 36 +++----- .../admin/_components/ImportAppsModal.svelte | 21 ++--- .../src/pages/builder/admin/index.svelte | 8 +- .../pages/builder/portal/apps/index.svelte | 63 ++++---------- .../builder/portal/manage/email/index.svelte | 77 ++++++++--------- packages/builder/src/stores/portal/admin.js | 45 +++++----- packages/builder/src/stores/portal/oidc.js | 21 ++--- packages/client/src/api.js | 16 +++- packages/frontend-core/src/api/app.js | 77 ++++++++++++++++- packages/frontend-core/src/api/attachments.js | 14 +++ packages/frontend-core/src/api/auth.js | 85 ++++++++++++++++++- packages/frontend-core/src/api/index.js | 33 ++++--- 17 files changed, 343 insertions(+), 211 deletions(-) diff --git a/packages/builder/src/builderStore/api.js b/packages/builder/src/builderStore/api.js index 085c176f88..bd7cccbc5a 100644 --- a/packages/builder/src/builderStore/api.js +++ b/packages/builder/src/builderStore/api.js @@ -14,16 +14,25 @@ export const API = createAPIClient({ }, onError: error => { - const { url, message, status } = error + const { url, message, status, method, handled } = error || {} // Log all API errors to Sentry // analytics.captureException(error) + // Log any errors that we haven't manually handled + if (!handled) { + console.error("Unhandled error from API client", error) + return + } + // Show a notification for any errors if (message) { notifications.error(`Error fetching ${url}: ${message}`) } + // Log all errors to console + console.error(`HTTP ${status} on ${method}:${url}:\n\t${message}`) + // Logout on 403's if (status === 403) { // Don't do anything if fetching templates. diff --git a/packages/builder/src/components/common/Dropzone.svelte b/packages/builder/src/components/common/Dropzone.svelte index 328cd31f23..9a86554b49 100644 --- a/packages/builder/src/components/common/Dropzone.svelte +++ b/packages/builder/src/components/common/Dropzone.svelte @@ -1,6 +1,6 @@ diff --git a/packages/builder/src/components/deploy/DeployModal.svelte b/packages/builder/src/components/deploy/DeployModal.svelte index 4a86394c72..9f2aae56c5 100644 --- a/packages/builder/src/components/deploy/DeployModal.svelte +++ b/packages/builder/src/components/deploy/DeployModal.svelte @@ -9,7 +9,7 @@ async function deployApp() { try { - await API.deployApp() + await API.deployAppChanges() analytics.captureEvent(Events.APP.PUBLISHED, { appId: $store.appId, }) diff --git a/packages/builder/src/components/deploy/RevertModal.svelte b/packages/builder/src/components/deploy/RevertModal.svelte index 4207fcad00..717c55f05e 100644 --- a/packages/builder/src/components/deploy/RevertModal.svelte +++ b/packages/builder/src/components/deploy/RevertModal.svelte @@ -16,7 +16,7 @@ const revert = async () => { try { - await API.revertApp(appId) + await API.revertAppChanges(appId) // Reset frontend state after revert const applicationPkg = await API.fetchAppPackage(appId) diff --git a/packages/builder/src/components/deploy/VersionModal.svelte b/packages/builder/src/components/deploy/VersionModal.svelte index 0fb061face..9707517c54 100644 --- a/packages/builder/src/components/deploy/VersionModal.svelte +++ b/packages/builder/src/components/deploy/VersionModal.svelte @@ -8,7 +8,7 @@ Button, } from "@budibase/bbui" import { store } from "builderStore" - import api from "builderStore/api" + import { API } from "api" import clientPackage from "@budibase/client/package.json" let updateModal @@ -18,26 +18,17 @@ $: revertAvailable = $store.revertableVersion != null const refreshAppPackage = async () => { - const applicationPkg = await api.get( - `/api/applications/${appId}/appPackage` - ) - const pkg = await applicationPkg.json() - if (applicationPkg.ok) { + try { + const pkg = await API.fetchAppPackage(appId) await store.actions.initialise(pkg) - } else { - throw new Error(pkg) + } catch (error) { + notifications.error("Error fetching app package") } } const update = async () => { try { - const response = await api.post( - `/api/applications/${appId}/client/update` - ) - const json = await response.json() - if (response.status !== 200) { - throw json.message - } + await API.updateAppClientVersion(appId) // Don't wait for the async refresh, since this causes modal flashing refreshAppPackage() @@ -47,23 +38,17 @@ } catch (err) { notifications.error(`Error updating app: ${err}`) } + updateModal.hide() } const revert = async () => { try { - const revertableVersion = $store.revertableVersion - const response = await api.post( - `/api/applications/${appId}/client/revert` - ) - const json = await response.json() - if (response.status !== 200) { - throw json.message - } + await API.revertAppClientVersion(appId) // Don't wait for the async refresh, since this causes modal flashing refreshAppPackage() notifications.success( - `App reverted successfully to version ${revertableVersion}` + `App reverted successfully to version ${$store.revertableVersion}` ) } catch (err) { notifications.error(`Error reverting app: ${err}`) diff --git a/packages/builder/src/components/start/CreateAppModal.svelte b/packages/builder/src/components/start/CreateAppModal.svelte index 60065b6eef..ebb24e9e2f 100644 --- a/packages/builder/src/components/start/CreateAppModal.svelte +++ b/packages/builder/src/components/start/CreateAppModal.svelte @@ -5,7 +5,7 @@ import { store, automationStore, hostingStore } from "builderStore" import { admin, auth } from "stores/portal" import { string, mixed, object } from "yup" - import api, { get, post } from "builderStore/api" + import { API } from "api" import analytics, { Events } from "analytics" import { onMount } from "svelte" import { capitalise } from "helpers" @@ -99,40 +99,24 @@ } // Create App - const appResp = await post("/api/applications", data, {}) - const appJson = await appResp.json() - if (!appResp.ok) { - throw new Error(appJson.message) - } - + const createdApp = await API.createApp(data) analytics.captureEvent(Events.APP.CREATED, { name: $values.name, - appId: appJson.instance._id, + appId: createdApp.instance._id, templateToUse, }) // Select Correct Application/DB in prep for creating user - const applicationPkg = await get( - `/api/applications/${appJson.instance._id}/appPackage` - ) - const pkg = await applicationPkg.json() - if (applicationPkg.ok) { - await store.actions.initialise(pkg) - await automationStore.actions.fetch() - // update checklist - incase first app - await admin.init() - } else { - throw new Error(pkg) - } + const pkg = await API.fetchAppPackage(createdApp.instance._id) + await store.actions.initialise(pkg) + await automationStore.actions.fetch() + // Update checklist - in case first app + await admin.init() // Create user - const user = { - roleId: $values.roleId, - } - const userResp = await api.post(`/api/users/metadata/self`, user) - await userResp.json() + await API.updateOwnMetadata({ roleId: $values.roleId }) await auth.setInitInfo({}) - $goto(`/builder/app/${appJson.instance._id}`) + $goto(`/builder/app/${createdApp.instance._id}`) } catch (error) { console.error(error) notifications.error(error) diff --git a/packages/builder/src/pages/builder/admin/_components/ImportAppsModal.svelte b/packages/builder/src/pages/builder/admin/_components/ImportAppsModal.svelte index de29e11301..182df63967 100644 --- a/packages/builder/src/pages/builder/admin/_components/ImportAppsModal.svelte +++ b/packages/builder/src/pages/builder/admin/_components/ImportAppsModal.svelte @@ -1,6 +1,6 @@ @@ -36,10 +31,10 @@ onConfirm={importApps} disabled={!value.file} > - Please upload the file that was exported from your Cloud environment to get - started + + Please upload the file that was exported from your Cloud environment to get + started + { try { - const response = await del(`/api/dev/${app.devId}/lock`) - if (response.status !== 200) { - const json = await response.json() - throw json.message - } + await API.releaseAppLock(app.devId) await apps.load() notifications.success("Lock released successfully") } catch (err) { - notifications.error(`Error releasing lock: ${err}`) + notifications.error("Error releasing lock") } } diff --git a/packages/builder/src/pages/builder/portal/manage/email/index.svelte b/packages/builder/src/pages/builder/portal/manage/email/index.svelte index 5a78623b81..4ef59d2daa 100644 --- a/packages/builder/src/pages/builder/portal/manage/email/index.svelte +++ b/packages/builder/src/pages/builder/portal/manage/email/index.svelte @@ -14,7 +14,7 @@ Checkbox, } from "@budibase/bbui" import { email } from "stores/portal" - import api from "builderStore/api" + import { API } from "api" import { cloneDeep } from "lodash/fp" import analytics, { Events } from "analytics" @@ -54,55 +54,48 @@ delete smtp.config.auth } // Save your SMTP config - const response = await api.post(`/api/global/configs`, smtp) - - if (response.status !== 200) { - const error = await response.text() - let message - try { - message = JSON.parse(error).message - } catch (err) { - message = error - } - notifications.error(`Failed to save email settings, reason: ${message}`) - } else { - const json = await response.json() - smtpConfig._rev = json._rev - smtpConfig._id = json._id - notifications.success(`Settings saved.`) + try { + const savedConfig = await API.saveConfig(smtp) + smtpConfig._rev = savedConfig._rev + smtpConfig._id = savedConfig._id + notifications.success(`Settings saved`) analytics.captureEvent(Events.SMTP.SAVED) + } catch (error) { + notifications.error( + `Failed to save email settings, reason: ${error?.message || "Unknown"}` + ) } } async function fetchSmtp() { loading = true - // fetch the configs for smtp - const smtpResponse = await api.get( - `/api/global/configs/${ConfigTypes.SMTP}` - ) - const smtpDoc = await smtpResponse.json() - - if (!smtpDoc._id) { - smtpConfig = { - type: ConfigTypes.SMTP, - config: { - secure: true, - }, + try { + // Fetch the configs for smtp + const smtpDoc = await API.getConfig(ConfigTypes.SMTP) + if (!smtpDoc._id) { + smtpConfig = { + type: ConfigTypes.SMTP, + config: { + secure: true, + }, + } + } else { + smtpConfig = smtpDoc } - } else { - smtpConfig = smtpDoc - } - loading = false - requireAuth = smtpConfig.config.auth != null - // always attach the auth for the forms purpose - - // this will be removed later if required - if (!smtpDoc.config) { - smtpDoc.config = {} - } - if (!smtpDoc.config.auth) { - smtpConfig.config.auth = { - type: "login", + loading = false + requireAuth = smtpConfig.config.auth != null + // Always attach the auth for the forms purpose - + // this will be removed later if required + if (!smtpDoc.config) { + smtpDoc.config = {} } + if (!smtpDoc.config.auth) { + smtpConfig.config.auth = { + type: "login", + } + } + } catch (error) { + notifications.error("Error fetching SMTP config") } } diff --git a/packages/builder/src/stores/portal/admin.js b/packages/builder/src/stores/portal/admin.js index d98eae8363..d97105fd46 100644 --- a/packages/builder/src/stores/portal/admin.js +++ b/packages/builder/src/stores/portal/admin.js @@ -1,5 +1,5 @@ import { writable, get } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" import { auth } from "stores/portal" export function createAdminStore() { @@ -25,21 +25,19 @@ export function createAdminStore() { async function init() { try { const tenantId = get(auth).tenantId - const response = await api.get( - `/api/global/configs/checklist?tenantId=${tenantId}` - ) - const json = await response.json() - const totalSteps = Object.keys(json).length - const completedSteps = Object.values(json).filter(x => x?.checked).length - + const checklist = await API.getChecklist(tenantId) + const totalSteps = Object.keys(checklist).length + const completedSteps = Object.values(checklist).filter( + x => x?.checked + ).length await getEnvironment() admin.update(store => { store.loaded = true - store.checklist = json + store.checklist = checklist store.onboardingProgress = (completedSteps / totalSteps) * 100 return store }) - } catch (err) { + } catch (error) { admin.update(store => { store.checklist = null return store @@ -48,11 +46,15 @@ export function createAdminStore() { } async function checkImportComplete() { - const response = await api.get(`/api/cloud/import/complete`) - if (response.status === 200) { - const json = await response.json() + try { + const result = await API.checkImportComplete() admin.update(store => { - store.importComplete = json ? json.imported : false + store.importComplete = result ? result.imported : false + return store + }) + } catch (error) { + admin.update(store => { + store.importComplete = false return store }) } @@ -65,15 +67,14 @@ export function createAdminStore() { let accountPortalUrl = "" let isDev = false try { - const response = await api.get(`/api/system/environment`) - const json = await response.json() - multiTenancyEnabled = json.multiTenancy - cloud = json.cloud - disableAccountPortal = json.disableAccountPortal - accountPortalUrl = json.accountPortalUrl - isDev = json.isDev + const environment = await API.getEnvironment() + multiTenancyEnabled = environment.multiTenancy + cloud = environment.cloud + disableAccountPortal = environment.disableAccountPortal + accountPortalUrl = environment.accountPortalUrl + isDev = environment.isDev } catch (err) { - // just let it stay disabled + // Just let it stay disabled } admin.update(store => { store.multiTenancy = multiTenancyEnabled diff --git a/packages/builder/src/stores/portal/oidc.js b/packages/builder/src/stores/portal/oidc.js index 3e3a7048ca..751988bff6 100644 --- a/packages/builder/src/stores/portal/oidc.js +++ b/packages/builder/src/stores/portal/oidc.js @@ -1,5 +1,5 @@ import { writable, get } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" import { auth } from "stores/portal" const OIDC_CONFIG = { @@ -14,16 +14,17 @@ export function createOidcStore() { async function init() { const tenantId = get(auth).tenantId - const res = await api.get( - `/api/global/configs/public/oidc?tenantId=${tenantId}` - ) - const json = await res.json() - - if (json.status === 400 || Object.keys(json).length === 0) { + try { + const config = await API.getOIDCConfig(tenantId) + if (Object.keys(config || {}).length) { + // Just use the first config for now. + // We will be support multiple logins buttons later on. + set(...config) + } else { + set(OIDC_CONFIG) + } + } catch (error) { set(OIDC_CONFIG) - } else { - // Just use the first config for now. We will be support multiple logins buttons later on. - set(...json) } } diff --git a/packages/client/src/api.js b/packages/client/src/api.js index e617dae00f..3ded21f473 100644 --- a/packages/client/src/api.js +++ b/packages/client/src/api.js @@ -18,9 +18,21 @@ export const API = createAPIClient({ // We could also log these to sentry. // Or we could check error.status and redirect to login on a 403 etc. onError: error => { - if (error.message) { - notificationStore.actions.error(error.message) + const { status, method, url, message, handled } = error || {} + + // Log any errors that we haven't manually handled + if (!handled) { + console.error("Unhandled error from API client", error) + return } + + // Notify all errors + if (message) { + notificationStore.actions.error(message) + } + + // Log all errors to console + console.error(`HTTP ${status} on ${method}:${url}:\n\t${message}`) }, // Patch certain endpoints with functionality specific to client apps diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index 4edd76d9b1..c1c4204c9d 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -25,7 +25,7 @@ export const buildAppEndpoints = API => ({ /** * Deploys the current app. */ - deployApp: async () => { + deployAppChanges: async () => { return await API.post({ url: "/api/deploy", }) @@ -35,12 +35,32 @@ export const buildAppEndpoints = API => ({ * Reverts an app to a previous version. * @param appId the app ID to revert */ - revertApp: async appId => { + revertAppChanges: async appId => { return await API.post({ url: `/api/dev/${appId}/revert`, }) }, + /** + * Updates an app's version of the client library. + * @param appId the app ID to update + */ + updateAppClientVersion: async appId => { + return await API.post({ + url: `/api/applications/${appId}/client/update`, + }) + }, + + /** + * Reverts an app's version of the client library to the previous version. + * @param appId the app ID to revert + */ + revertAppClientVersion: async appId => { + return await API.post({ + url: `/api/applications/${appId}/client/revert`, + }) + }, + /** * Gets a list of app deployments. */ @@ -49,4 +69,57 @@ export const buildAppEndpoints = API => ({ url: "/api/deployments", }) }, + + /** + * Creates an app. + * @param app the app to create + */ + createApp: async app => { + return await API.post({ + url: "/api/applications", + body: app, + }) + }, + + /** + * Imports an export of all apps. + * @param apps the FormData containing the apps to import + */ + importApps: async apps => { + return await API.post({ + url: "/api/cloud/import", + body: apps, + json: false, + }) + }, + + /** + * Unpublishes a published app. + * @param appId the production ID of the app to unpublish + */ + unpublishApp: async appId => { + return await API.delete({ + url: `/api/applications/${appId}?unpublish=1`, + }) + }, + + /** + * Deletes a dev app. + * @param appId the dev app ID to delete + */ + deleteApp: async appId => { + return await API.delete({ + url: `/api/applications/${appId}`, + }) + }, + + /** + * Releases the lock on a dev app. + * @param appId the dev app ID to unlock + */ + releaseAppLock: async appId => { + return await API.delete({ + url: `/api/dev/${appId}/lock`, + }) + }, }) diff --git a/packages/frontend-core/src/api/attachments.js b/packages/frontend-core/src/api/attachments.js index 5dd2582ea5..9a8325a433 100644 --- a/packages/frontend-core/src/api/attachments.js +++ b/packages/frontend-core/src/api/attachments.js @@ -1,6 +1,8 @@ export const buildAttachmentEndpoints = API => ({ /** * Uploads an attachment to the server. + * @param data the attachment to upload + * @param tableId the table ID to upload to */ uploadAttachment: async ({ data, tableId }) => { return await API.post({ @@ -9,4 +11,16 @@ export const buildAttachmentEndpoints = API => ({ json: false, }) }, + + /** + * Uploads an attachment to the server as a builder user from the builder. + * @param data the data to upload + */ + uploadBuilderAttachment: async data => { + return await API.post({ + url: "/api/attachments/process", + body: data, + json: false, + }) + }, }) diff --git a/packages/frontend-core/src/api/auth.js b/packages/frontend-core/src/api/auth.js index 55554df94a..4f61c155f0 100644 --- a/packages/frontend-core/src/api/auth.js +++ b/packages/frontend-core/src/api/auth.js @@ -31,6 +31,89 @@ export const buildAuthEndpoints = API => ({ * Fetches the currently logged in user object */ fetchSelf: async () => { - return await API.get({ url: "/api/self" }) + return await API.get({ + url: "/api/self", + }) + }, + + /** + * Updates the current user metadata. + * @param metadata the metadata to save + */ + updateOwnMetadata: async metadata => { + return await API.post({ + url: "/api/users/metadata/self", + body: metadata, + }) + }, + + /** + * Creates an admin user. + * @param adminUser the admin user to create + */ + createAdminUser: async adminUser => { + return await API.post({ + url: "/api/global/users/init", + body: adminUser, + }) + }, + + /** + * Saves a global config. + * @param config the config to save + */ + saveConfig: async config => { + return await API.post({ + url: "/api/global/configs", + body: config, + }) + }, + + /** + * Gets a global config of a certain type. + * @param type the type to fetch + */ + getConfig: async type => { + return await API.get({ + url: `/api/global/configs/${type}`, + }) + }, + + /** + * Gets the OIDC config for a certain tenant. + * @param tenantId the tenant ID to get the config for + */ + getOIDCConfig: async tenantId => { + return await API.get({ + url: `/api/global/configs/public/oidc?tenantId=${tenantId}`, + }) + }, + + /** + * Gets the checklist for a specific tenant. + * @param tenantId the tenant ID to get the checklist for + */ + getChecklist: async tenantId => { + return await API.get({ + url: `/api/global/configs/checklist?tenantId=${tenantId}`, + }) + }, + + /** + * TODO: find out what this is + */ + checkImportComplete: async () => { + return await API.get({ + url: "/api/cloud/import/complete", + }) + }, + + /** + * Gets the current environment details. + */ + getEnvironment: async () => { + return await API.get({ + url: "/api/system/environment", + }) }, }) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index f1c12dc941..e1cf2f3619 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -30,7 +30,9 @@ export const createAPIClient = config => { } // Generates an error object from an API response - const makeErrorFromResponse = async response => { + const makeErrorFromResponse = async (response, method) => { + console.log("making error from", response) + // Try to read a message from the error let message = response.statusText try { @@ -47,6 +49,8 @@ export const createAPIClient = config => { message, status: response.status, url: response.url, + method, + handled: true, } } @@ -56,6 +60,8 @@ export const createAPIClient = config => { message, status: 400, url: "", + method: "", + handled: true, } } @@ -110,11 +116,7 @@ export const createAPIClient = config => { return null } } else { - const error = await makeErrorFromResponse(response) - if (config?.onError) { - config.onError(error) - } - throw error + throw await makeErrorFromResponse(response, method) } } @@ -134,14 +136,21 @@ export const createAPIClient = config => { return await cache[identifier] } - // Constructs an API call function for a particular HTTP method. + // Constructs an API call function for a particular HTTP method const requestApiCall = method => async params => { - let { url, cache = false, external = false } = params - if (!external) { - url = `/${url}`.replace("//", "/") + try { + let { url, cache = false, external = false } = params + if (!external) { + url = `/${url}`.replace("//", "/") + } + const enrichedParams = { ...params, method, url } + return await (cache ? makeCachedApiCall : makeApiCall)(enrichedParams) + } catch (error) { + if (config?.onError) { + config.onError(error) + } + throw error } - const enrichedParams = { ...params, method, url } - return await (cache ? makeCachedApiCall : makeApiCall)(enrichedParams) } // Build the underlying core API methods From 59349f2451acc23332c41f98214b3d85b56418a3 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 21 Jan 2022 15:09:27 +0000 Subject: [PATCH 22/63] Add lots more work on refactoring builder to use core API --- .../builderStore/store/automation/index.js | 201 ++++++++++-------- .../builder/src/builderStore/store/hosting.js | 49 +++-- .../FlowChart/FlowChart.svelte | 21 +- .../src/components/backend/DataTable/api.js | 34 --- .../DataTable/modals/CreateEditRow.svelte | 44 ++-- .../DataTable/modals/CreateEditUser.svelte | 40 ++-- .../builder/app/[application]/_layout.svelte | 47 ++-- .../builder/portal/manage/auth/index.svelte | 109 +++++----- .../portal/settings/organisation.svelte | 28 +-- .../builder/portal/settings/update.svelte | 10 +- packages/frontend-core/src/api/app.js | 10 + packages/frontend-core/src/api/auth.js | 45 ++++ packages/frontend-core/src/api/automations.js | 63 ++++++ packages/frontend-core/src/api/builder.js | 17 +- packages/frontend-core/src/api/hosting.js | 19 ++ packages/frontend-core/src/api/index.js | 5 + 16 files changed, 442 insertions(+), 300 deletions(-) delete mode 100644 packages/builder/src/components/backend/DataTable/api.js create mode 100644 packages/frontend-core/src/api/hosting.js diff --git a/packages/builder/src/builderStore/store/automation/index.js b/packages/builder/src/builderStore/store/automation/index.js index 7bd0ccca22..73aa2757ec 100644 --- a/packages/builder/src/builderStore/store/automation/index.js +++ b/packages/builder/src/builderStore/store/automation/index.js @@ -1,95 +1,130 @@ import { writable } from "svelte/store" -import api from "../../api" +import { API } from "api" import Automation from "./Automation" import { cloneDeep } from "lodash/fp" import analytics, { Events } from "analytics" +import { notifications } from "@budibase/bbui" + +const initialAutomationState = { + automations: [], + blockDefinitions: { + TRIGGER: [], + ACTION: [], + }, + selectedAutomation: null, +} + +export const getAutomationStore = () => { + const store = writable(initialAutomationState) + store.actions = automationActions(store) + return store +} const automationActions = store => ({ fetch: async () => { - const responses = await Promise.all([ - api.get(`/api/automations`), - api.get(`/api/automations/definitions/list`), - ]) - const jsonResponses = await Promise.all(responses.map(x => x.json())) - store.update(state => { - let selected = state.selectedAutomation?.automation - state.automations = jsonResponses[0] - state.blockDefinitions = { - TRIGGER: jsonResponses[1].trigger, - ACTION: jsonResponses[1].action, - } - // if previously selected find the new obj and select it - if (selected) { - selected = jsonResponses[0].filter( - automation => automation._id === selected._id - ) - state.selectedAutomation = new Automation(selected[0]) - } - return state - }) + try { + const responses = await Promise.all([ + API.getAutomations(), + API.getAutomationDefinitions(), + ]) + store.update(state => { + let selected = state.selectedAutomation?.automation + state.automations = responses[0] + state.blockDefinitions = { + TRIGGER: responses[1].trigger, + ACTION: responses[1].action, + } + // If previously selected find the new obj and select it + if (selected) { + selected = responses[0].filter( + automation => automation._id === selected._id + ) + state.selectedAutomation = new Automation(selected[0]) + } + return state + }) + } catch (error) { + notifications.error("Error fetching automations") + store.set(initialAutomationState) + } }, create: async ({ name }) => { - const automation = { - name, - type: "automation", - definition: { - steps: [], - }, + try { + const automation = { + name, + type: "automation", + definition: { + steps: [], + }, + } + const response = await API.createAutomation(automation) + store.update(state => { + state.automations = [...state.automations, response.automation] + store.actions.select(response.automation) + return state + }) + } catch (error) { + notifications.error("Error creating automation") } - const CREATE_AUTOMATION_URL = `/api/automations` - const response = await api.post(CREATE_AUTOMATION_URL, automation) - const json = await response.json() - store.update(state => { - state.automations = [...state.automations, json.automation] - store.actions.select(json.automation) - return state - }) }, save: async automation => { - const UPDATE_AUTOMATION_URL = `/api/automations` - const response = await api.put(UPDATE_AUTOMATION_URL, automation) - const json = await response.json() - store.update(state => { - const newAutomation = json.automation - const existingIdx = state.automations.findIndex( - existing => existing._id === automation._id - ) - if (existingIdx !== -1) { - state.automations.splice(existingIdx, 1, newAutomation) - state.automations = [...state.automations] - store.actions.select(newAutomation) - return state - } - }) + try { + const response = await API.updateAutomation(automation) + store.update(state => { + const updatedAutomation = response.automation + const existingIdx = state.automations.findIndex( + existing => existing._id === automation._id + ) + if (existingIdx !== -1) { + state.automations.splice(existingIdx, 1, updatedAutomation) + state.automations = [...state.automations] + store.actions.select(updatedAutomation) + return state + } + }) + notifications.success("Automation saved successfully") + } catch (error) { + notifications.error("Error saving automation") + } }, delete: async automation => { - const { _id, _rev } = automation - const DELETE_AUTOMATION_URL = `/api/automations/${_id}/${_rev}` - await api.delete(DELETE_AUTOMATION_URL) - - store.update(state => { - const existingIdx = state.automations.findIndex( - existing => existing._id === _id - ) - state.automations.splice(existingIdx, 1) - state.automations = [...state.automations] - state.selectedAutomation = null - state.selectedBlock = null - return state - }) - }, - trigger: async automation => { - const { _id } = automation - return await api.post(`/api/automations/${_id}/trigger`) + try { + await API.deleteAutomation({ + automationId: automation?._id, + automationRev: automation?._rev, + }) + store.update(state => { + const existingIdx = state.automations.findIndex( + existing => existing._id === automation?._id + ) + state.automations.splice(existingIdx, 1) + state.automations = [...state.automations] + state.selectedAutomation = null + state.selectedBlock = null + return state + }) + notifications.success("Automation deleted successfully") + } catch (error) { + notifications.error("Error deleting automation") + } }, test: async (automation, testData) => { - const { _id } = automation - const response = await api.post(`/api/automations/${_id}/test`, testData) - const json = await response.json() - store.update(state => { - state.selectedAutomation.testResults = json - return state - }) + try { + const result = await API.testAutomation({ + automationId: automation?._id, + testData, + }) + store.update(state => { + state.selectedAutomation.testResults = result + return state + }) + } catch (error) { + notifications.error("Error testing automation") + store.update(state => { + state.selectedAutomation.testResults = null + return state + }) + } }, select: automation => { store.update(state => { @@ -143,17 +178,3 @@ const automationActions = store => ({ }) }, }) - -export const getAutomationStore = () => { - const INITIAL_AUTOMATION_STATE = { - automations: [], - blockDefinitions: { - TRIGGER: [], - ACTION: [], - }, - selectedAutomation: null, - } - const store = writable(INITIAL_AUTOMATION_STATE) - store.actions = automationActions(store) - return store -} diff --git a/packages/builder/src/builderStore/store/hosting.js b/packages/builder/src/builderStore/store/hosting.js index fb174c2663..980130b147 100644 --- a/packages/builder/src/builderStore/store/hosting.js +++ b/packages/builder/src/builderStore/store/hosting.js @@ -1,5 +1,6 @@ import { writable } from "svelte/store" -import api, { get } from "../api" +import { API } from "api" +import { notifications } from "@budibase/bbui" const INITIAL_HOSTING_UI_STATE = { appUrl: "", @@ -12,22 +13,40 @@ export const getHostingStore = () => { const store = writable({ ...INITIAL_HOSTING_UI_STATE }) store.actions = { fetch: async () => { - const response = await api.get("/api/hosting/urls") - const urls = await response.json() - store.update(state => { - state.appUrl = urls.app - return state - }) + try { + const urls = await API.getHostingURLs() + store.update(state => { + state.appUrl = urls.app + return state + }) + } catch (error) { + store.update(state => { + state.appUrl = "" + return state + }) + notifications.error("Error fetching hosting URLs") + } }, fetchDeployedApps: async () => { - let deployments = await (await get("/api/hosting/apps")).json() - store.update(state => { - state.deployedApps = deployments - state.deployedAppNames = Object.values(deployments).map(app => app.name) - state.deployedAppUrls = Object.values(deployments).map(app => app.url) - return state - }) - return deployments + try { + const deployments = await API.getDeployedApps() + store.update(state => { + state.deployedApps = deployments + state.deployedAppNames = Object.values(deployments).map( + app => app.name + ) + state.deployedAppUrls = Object.values(deployments).map(app => app.url) + return state + }) + } catch (error) { + store.update(state => { + state.deployedApps = {} + state.deployedAppNames = [] + state.deployedAppUrls = [] + return state + }) + notifications.error("Failed detching deployed apps") + } }, } return store diff --git a/packages/builder/src/components/automation/AutomationBuilder/FlowChart/FlowChart.svelte b/packages/builder/src/components/automation/AutomationBuilder/FlowChart/FlowChart.svelte index 2d6881d652..5bf625940a 100644 --- a/packages/builder/src/components/automation/AutomationBuilder/FlowChart/FlowChart.svelte +++ b/packages/builder/src/components/automation/AutomationBuilder/FlowChart/FlowChart.svelte @@ -33,23 +33,6 @@ await automationStore.actions.delete( $automationStore.selectedAutomation?.automation ) - notifications.success("Automation deleted.") - } - - async function testAutomation() { - const result = await automationStore.actions.trigger( - $automationStore.selectedAutomation.automation - ) - if (result.status === 200) { - notifications.success( - `Automation ${$automationStore.selectedAutomation.automation.name} triggered successfully.` - ) - } else { - notifications.error( - `Failed to trigger automation ${$automationStore.selectedAutomation.automation.name}.` - ) - } - return result } @@ -85,7 +68,7 @@ animate:flip={{ duration: 500 }} in:fly|local={{ x: 500, duration: 1500 }} > - + {/each} @@ -101,7 +84,7 @@ - + diff --git a/packages/builder/src/components/backend/DataTable/api.js b/packages/builder/src/components/backend/DataTable/api.js deleted file mode 100644 index b461c70c4b..0000000000 --- a/packages/builder/src/components/backend/DataTable/api.js +++ /dev/null @@ -1,34 +0,0 @@ -import api from "builderStore/api" - -export async function createUser(user) { - const CREATE_USER_URL = `/api/users/metadata` - const response = await api.post(CREATE_USER_URL, user) - return await response.json() -} - -export async function saveRow(row, tableId) { - const SAVE_ROW_URL = `/api/${tableId}/rows` - const response = await api.post(SAVE_ROW_URL, row) - - return await response.json() -} - -export async function deleteRow(row) { - const DELETE_ROWS_URL = `/api/${row.tableId}/rows` - return api.delete(DELETE_ROWS_URL, { - _id: row._id, - _rev: row._rev, - }) -} - -export async function fetchDataForTable(tableId) { - const FETCH_ROWS_URL = `/api/${tableId}/rows` - - const response = await api.get(FETCH_ROWS_URL) - const json = await response.json() - - if (response.status !== 200) { - throw new Error(json.message) - } - return json -} diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateEditRow.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateEditRow.svelte index 559e8275db..965458e297 100644 --- a/packages/builder/src/components/backend/DataTable/modals/CreateEditRow.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/CreateEditRow.svelte @@ -3,7 +3,7 @@ import { tables, rows } from "stores/backend" import { notifications } from "@budibase/bbui" import RowFieldControl from "../RowFieldControl.svelte" - import * as api from "../api" + import { API } from "api" import { ModalContent } from "@budibase/bbui" import ErrorsBox from "components/common/ErrorsBox.svelte" import { FIELDS } from "constants/backend" @@ -22,30 +22,30 @@ $: tableSchema = Object.entries(table?.schema ?? {}) async function saveRow() { - const rowResponse = await api.saveRow( - { ...row, tableId: table._id }, - table._id - ) - - if (rowResponse.errors) { - errors = Object.entries(rowResponse.errors) - .map(([key, error]) => ({ dataPath: key, message: error })) - .flat() + errors = [] + try { + await API.saveRow({ ...row, tableId: table._id }) + notifications.success("Row saved successfully") + rows.save() + dispatch("updaterows") + } catch (error) { + if (error.handled) { + const response = error.json + if (response?.errors) { + errors = Object.entries(response.errors) + .map(([key, error]) => ({ dataPath: key, message: error })) + .flat() + } else if (error.status === 400 && response?.validationErrors) { + errors = Object.keys(response.validationErrors).map(field => ({ + message: `${field} ${response.validationErrors[field][0]}`, + })) + } + } else { + notifications.error("Failed to save row") + } // Prevent modal closing if there were errors return false - } else if (rowResponse.status === 400 && rowResponse.validationErrors) { - errors = Object.keys(rowResponse.validationErrors).map(field => ({ - message: `${field} ${rowResponse.validationErrors[field][0]}`, - })) - return false - } else if (rowResponse.status >= 400) { - errors = [{ message: rowResponse.message }] - return false } - - notifications.success("Row saved successfully.") - rows.save(rowResponse) - dispatch("updaterows") } diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateEditUser.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateEditUser.svelte index f1de23fb97..088280e266 100644 --- a/packages/builder/src/components/backend/DataTable/modals/CreateEditUser.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/CreateEditUser.svelte @@ -4,7 +4,7 @@ import { roles } from "stores/backend" import { notifications } from "@budibase/bbui" import RowFieldControl from "../RowFieldControl.svelte" - import * as backendApi from "../api" + import { API } from "api" import { ModalContent, Select } from "@budibase/bbui" import ErrorsBox from "components/common/ErrorsBox.svelte" @@ -53,27 +53,31 @@ return false } - const rowResponse = await backendApi.saveRow( - { ...row, tableId: table._id }, - table._id - ) - if (rowResponse.errors) { - if (Array.isArray(rowResponse.errors)) { - errors = rowResponse.errors.map(error => ({ message: error })) + try { + await API.saveRow({ ...row, tableId: table._id }) + notifications.success("User saved successfully") + rows.save() + dispatch("updaterows") + } catch (error) { + if (error.handled) { + const response = error.json + if (response?.errors) { + if (Array.isArray(response.errors)) { + errors = response.errors.map(error => ({ message: error })) + } else { + errors = Object.entries(response.errors) + .map(([key, error]) => ({ dataPath: key, message: error })) + .flat() + } + } else if (error.status === 400) { + errors = [{ message: response?.message || "Unknown error" }] + } } else { - errors = Object.entries(rowResponse.errors) - .map(([key, error]) => ({ dataPath: key, message: error })) - .flat() + notifications.error("Error saving user") } - return false - } else if (rowResponse.status === 400 || rowResponse.status === 500) { - errors = [{ message: rowResponse.message }] + // Prevent closing the modal on errors return false } - - notifications.success("User saved successfully") - rows.save(rowResponse) - dispatch("updaterows") } diff --git a/packages/builder/src/pages/builder/app/[application]/_layout.svelte b/packages/builder/src/pages/builder/app/[application]/_layout.svelte index 0478b46f73..62a7c91d3f 100644 --- a/packages/builder/src/pages/builder/app/[application]/_layout.svelte +++ b/packages/builder/src/pages/builder/app/[application]/_layout.svelte @@ -6,25 +6,26 @@ import RevertModal from "components/deploy/RevertModal.svelte" import VersionModal from "components/deploy/VersionModal.svelte" import NPSFeedbackForm from "components/feedback/NPSFeedbackForm.svelte" - import { get, post } from "builderStore/api" + import { API } from "api" import { auth, admin } from "stores/portal" import { isActive, goto, layout, redirect } from "@roxi/routify" import Logo from "assets/bb-emblem.svg" import { capitalise } from "helpers" - import UpgradeModal from "../../../../components/upgrade/UpgradeModal.svelte" + import UpgradeModal from "components/upgrade/UpgradeModal.svelte" import { onMount } from "svelte" - // Get Package and set store export let application + + // Get Package and set store let promise = getPackage() - // sync once when you load the app + + // Sync once when you load the app let hasSynced = false + let userShouldPostFeedback = false $: selected = capitalise( $layout.children.find(layout => $isActive(layout.path))?.title ?? "data" ) - let userShouldPostFeedback = false - function previewApp() { if (!$auth?.user?.flags?.feedbackSubmitted) { userShouldPostFeedback = true @@ -33,34 +34,25 @@ } async function getPackage() { - const res = await get(`/api/applications/${application}/appPackage`) - const pkg = await res.json() - - if (res.ok) { - try { - await store.actions.initialise(pkg) - // edge case, lock wasn't known to client when it re-directed, or user went directly - } catch (err) { - if (!err.ok && err.reason === "locked") { - $redirect("../../") - } else { - throw err - } - } + try { + const pkg = await API.fetchAppPackage(application) + await store.actions.initialise(pkg) await automationStore.actions.fetch() await roles.fetch() await flags.fetch() return pkg - } else { - throw new Error(pkg) + } catch (error) { + // TODO: some stuff about redirecting if locked + // $redirect("../../") + notifications.error("Error initialising app") } } - // handles navigation between frontend, backend, automation. - // this remembers your last place on each of the sections + // Handles navigation between frontend, backend, automation. + // This remembers your last place on each of the sections // e.g. if one of your screens is selected on front end, then // you browse to backend, when you click frontend, you will be - // brought back to the same screen + // brought back to the same screen. const topItemNavigate = path => () => { const activeTopNav = $layout.children.find(c => $isActive(c.path)) if (!activeTopNav) return @@ -74,8 +66,9 @@ onMount(async () => { if (!hasSynced && application) { - const res = await post(`/api/applications/${application}/sync`) - if (res.status !== 200) { + try { + await API.syncApp(application) + } catch (error) { notifications.error("Failed to sync with production database") } hasSynced = true diff --git a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte index 896e1d53e1..bdbf884c99 100644 --- a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte +++ b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte @@ -20,7 +20,7 @@ Toggle, } from "@budibase/bbui" import { onMount } from "svelte" - import api from "builderStore/api" + import { API } from "api" import { organisation, admin } from "stores/portal" import { Helpers } from "@budibase/bbui" import analytics, { Events } from "analytics" @@ -137,17 +137,6 @@ providers.oidc?.config?.configs[0].clientID && providers.oidc?.config?.configs[0].clientSecret - async function uploadLogo(file) { - let data = new FormData() - data.append("file", file) - const res = await api.post( - `/api/global/configs/upload/logos_oidc/${file.name}`, - data, - {} - ) - return await res.json() - } - const onFileSelected = e => { let fileName = e.target.files[0].name image = e.target.files[0] @@ -156,17 +145,28 @@ } async function save(docs) { - // only if the user has provided an image, upload it. - image && uploadLogo(image) let calls = [] + + // Only if the user has provided an image, upload it + if (image) { + let data = new FormData() + data.append("file", image) + calls.push( + API.uploadOIDCLogo({ + name: image.name, + data, + }) + ) + } + docs.forEach(element => { if (element.type === ConfigTypes.OIDC) { - //Add a UUID here so each config is distinguishable when it arrives at the login page + // Add a UUID here so each config is distinguishable when it arrives at the login page for (let config of element.config.configs) { if (!config.uuid) { config.uuid = Helpers.uuid() } - // callback urls shouldn't be included + // Callback urls shouldn't be included delete config.callbackURL } if (partialOidc) { @@ -175,8 +175,8 @@ `Please fill in all required ${ConfigTypes.OIDC} fields` ) } else { - calls.push(api.post(`/api/global/configs`, element)) - // turn the save button grey when clicked + calls.push(API.saveConfig(element)) + // Turn the save button grey when clicked oidcSaveButtonDisabled = true originalOidcDoc = cloneDeep(providers.oidc) } @@ -189,71 +189,70 @@ `Please fill in all required ${ConfigTypes.Google} fields` ) } else { - calls.push(api.post(`/api/global/configs`, element)) + calls.push(API.saveConfig(element)) googleSaveButtonDisabled = true originalGoogleDoc = cloneDeep(providers.google) } } } }) - calls.length && + + if (calls.length) { Promise.all(calls) - .then(responses => { - return Promise.all( - responses.map(response => { - return response.json() - }) - ) - }) .then(data => { data.forEach(res => { providers[res.type]._rev = res._rev providers[res.type]._id = res._id }) - notifications.success(`Settings saved.`) + notifications.success(`Settings saved`) analytics.captureEvent(Events.SSO.SAVED) }) - .catch(err => { - notifications.error(`Failed to update auth settings. ${err}`) - throw new Error(err.message) + .catch(error => { + notifications.error(`Failed to update auth settings`) + console.error(error.message) }) + } } onMount(async () => { await organisation.init() - // fetch the configs for oauth - const googleResponse = await api.get( - `/api/global/configs/${ConfigTypes.Google}` - ) - const googleDoc = await googleResponse.json() - if (!googleDoc._id) { + // Fetch Google config + let googleDoc + try { + googleDoc = await API.getConfig(ConfigTypes.Google) + } catch (error) { + notifications.error("Error fetching Google OAuth config") + } + if (!googleDoc?._id) { providers.google = { type: ConfigTypes.Google, config: { activated: true }, } originalGoogleDoc = cloneDeep(googleDoc) } else { - // default activated to true for older configs + // Default activated to true for older configs if (googleDoc.config.activated === undefined) { googleDoc.config.activated = true } originalGoogleDoc = cloneDeep(googleDoc) providers.google = googleDoc } - googleCallbackUrl = providers?.google?.config?.callbackURL - //Get the list of user uploaded logos and push it to the dropdown options. - //This needs to be done before the config call so they're available when the dropdown renders - const res = await api.get(`/api/global/configs/logos_oidc`) - const configSettings = await res.json() - - if (configSettings.config) { - const logoKeys = Object.keys(configSettings.config) - + // Get the list of user uploaded logos and push it to the dropdown options. + // This needs to be done before the config call so they're available when + // the dropdown renders. + let oidcLogos + try { + oidcLogos = await API.getOIDCLogos() + } catch (error) { + notifications.error("Error fetching OIDC logos") + } + if (oidcLogos?.config) { + const logoKeys = Object.keys(oidcLogos.config) logoKeys.map(logoKey => { - const logoUrl = configSettings.config[logoKey] + const logoUrl = oidcLogos.config[logoKey] iconDropdownOptions.unshift({ label: logoKey, value: logoKey, @@ -261,11 +260,15 @@ }) }) } - const oidcResponse = await api.get( - `/api/global/configs/${ConfigTypes.OIDC}` - ) - const oidcDoc = await oidcResponse.json() - if (!oidcDoc._id) { + + // Fetch OIDC config + let oidcDoc + try { + oidcDoc = await API.getConfig(ConfigTypes.OIDC) + } catch (error) { + notifications.error("Error fetching OIDC config") + } + if (!oidcDoc?._id) { providers.oidc = { type: ConfigTypes.OIDC, config: { configs: [{ activated: true }] }, diff --git a/packages/builder/src/pages/builder/portal/settings/organisation.svelte b/packages/builder/src/pages/builder/portal/settings/organisation.svelte index 6903854922..c9086b2b45 100644 --- a/packages/builder/src/pages/builder/portal/settings/organisation.svelte +++ b/packages/builder/src/pages/builder/portal/settings/organisation.svelte @@ -11,7 +11,7 @@ notifications, } from "@budibase/bbui" import { auth, organisation, admin } from "stores/portal" - import { post } from "builderStore/api" + import { API } from "api" import { writable } from "svelte/store" import { redirect } from "@roxi/routify" @@ -32,14 +32,13 @@ let loading = false async function uploadLogo(file) { - let data = new FormData() - data.append("file", file) - const res = await post( - "/api/global/configs/upload/settings/logoUrl", - data, - {} - ) - return await res.json() + try { + let data = new FormData() + data.append("file", file) + await API.uploadLogo(data) + } catch (error) { + notifications.error("Error uploading logo") + } } async function saveConfig() { @@ -55,19 +54,14 @@ company: $values.company ?? "", platformUrl: $values.platformUrl ?? "", } - // remove logo if required + + // Remove logo if required if (!$values.logo) { config.logoUrl = "" } // Update settings - const res = await organisation.save(config) - if (res.status === 200) { - notifications.success("Settings saved successfully") - } else { - notifications.error(res.message) - } - + await organisation.save(config) loading = false } diff --git a/packages/builder/src/pages/builder/portal/settings/update.svelte b/packages/builder/src/pages/builder/portal/settings/update.svelte index 5deb724a7c..d87736144d 100644 --- a/packages/builder/src/pages/builder/portal/settings/update.svelte +++ b/packages/builder/src/pages/builder/portal/settings/update.svelte @@ -9,7 +9,7 @@ notifications, Label, } from "@budibase/bbui" - import api from "builderStore/api" + import { API } from "api" import { auth, admin } from "stores/portal" import { redirect } from "@roxi/routify" @@ -38,8 +38,12 @@ } async function getVersion() { - const response = await api.get("/api/dev/version") - version = await response.text() + try { + version = await API.getBudibaseVersion() + } catch (error) { + notifications.error("Error getting Budibase version") + version = null + } } onMount(() => { diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index c1c4204c9d..543dcd58ee 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -122,4 +122,14 @@ export const buildAppEndpoints = API => ({ url: `/api/dev/${appId}/lock`, }) }, + + /** + * Syncs an app with the production database. + * @param appId the ID of the app to sync + */ + syncApp: async appId => { + return await API.post({ + url: `/api/applications/${appId}/sync`, + }) + }, }) diff --git a/packages/frontend-core/src/api/auth.js b/packages/frontend-core/src/api/auth.js index 4f61c155f0..5f280b50da 100644 --- a/packages/frontend-core/src/api/auth.js +++ b/packages/frontend-core/src/api/auth.js @@ -36,6 +36,17 @@ export const buildAuthEndpoints = API => ({ }) }, + /** + * Creates a user for an app. + * @param user the user to create + */ + createAppUser: async user => { + return await API.post({ + url: "/api/users/metadata", + body: user, + }) + }, + /** * Updates the current user metadata. * @param metadata the metadata to save @@ -116,4 +127,38 @@ export const buildAuthEndpoints = API => ({ url: "/api/system/environment", }) }, + + /** + * Updates the company logo for the environment. + * @param data the logo form data + */ + uploadLogo: async data => { + return await API.post({ + url: "/api/global/configs/upload/settings/logoUrl", + body: data, + json: false, + }) + }, + + /** + * Uploads a logo for an OIDC provider. + * @param name the name of the OIDC provider + * @param data the logo form data to upload + */ + uploadOIDCLogo: async ({ name, data }) => { + return await API.post({ + url: `/api/global/configs/upload/logos_oidc/${name}`, + body: data, + json: false, + }) + }, + + /** + * Gets the list of OIDC logos. + */ + getOIDCLogos: async () => { + return await API.get({ + url: "/api/global/configs/logos_oidc", + }) + }, }) diff --git a/packages/frontend-core/src/api/automations.js b/packages/frontend-core/src/api/automations.js index 95605a91a5..2843599e78 100644 --- a/packages/frontend-core/src/api/automations.js +++ b/packages/frontend-core/src/api/automations.js @@ -8,4 +8,67 @@ export const buildAutomationEndpoints = API => ({ body: { fields }, }) }, + + /** + * Tests an automation with data. + * @param automationId the ID of the automation to test + * @param testData the test data to run against the automation + */ + testAutomation: async ({ automationId, testData }) => { + return await API.post({ + url: `/api/automations/${automationId}/test`, + body: testData, + }) + }, + + /** + * Gets a list of all automations. + */ + getAutomations: async () => { + return await API.get({ + url: "/api/automations", + }) + }, + + /** + * Gets a list of all the definitions for blocks in automations. + */ + getAutomationDefinitions: async () => { + return await API.get({ + url: "/api/automations/definitions/list", + }) + }, + + /** + * Creates an automation. + * @param automation the automation to create + */ + createAutomation: async automation => { + return await API.post({ + url: "/api/automations", + body: automation, + }) + }, + + /** + * Updates an automation. + * @param automation the automation to update + */ + updateAutomation: async automation => { + return await API.put({ + url: "/api/automations", + body: automation, + }) + }, + + /** + * Deletes an automation + * @param automationId the ID of the automation to delete + * @param automationRev the rev of the automation to delete + */ + deleteAutomation: async ({ automationId, automationRev }) => { + return await API.delete({ + url: `/api/automations/${automationId}/${automationRev}`, + }) + }, }) diff --git a/packages/frontend-core/src/api/builder.js b/packages/frontend-core/src/api/builder.js index dbe64e611e..dbb34a6a7b 100644 --- a/packages/frontend-core/src/api/builder.js +++ b/packages/frontend-core/src/api/builder.js @@ -5,13 +5,26 @@ export const buildBuilderEndpoints = API => ({ * @param {string} appId - ID of the currently running app */ fetchComponentLibDefinitions: async appId => { - return await API.get({ url: `/api/${appId}/components/definitions` }) + return await API.get({ + url: `/api/${appId}/components/definitions`, + }) }, /** * Gets the list of available integrations. */ getIntegrations: async () => { - return await API.get({ url: "/api/integrations" }) + return await API.get({ + url: "/api/integrations", + }) + }, + + /** + * Gets the version of the installed Budibase environment. + */ + getBudibaseVersion: async () => { + return await API.get({ + url: "/api/dev/version", + }) }, }) diff --git a/packages/frontend-core/src/api/hosting.js b/packages/frontend-core/src/api/hosting.js new file mode 100644 index 0000000000..8c398f9ae7 --- /dev/null +++ b/packages/frontend-core/src/api/hosting.js @@ -0,0 +1,19 @@ +export const buildHostingEndpoints = API => ({ + /** + * Gets the hosting URLs of the environment. + */ + getHostingURLs: async () => { + return await API.get({ + url: "/api/hosting/urls", + }) + }, + + /** + * Gets the list of deployed apps. + */ + getDeployedApps: async () => { + return await API.get({ + url: "/api/hosting/apps", + }) + }, +}) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index e1cf2f3619..1f7a703dcf 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -4,6 +4,7 @@ import { buildAppEndpoints } from "./app" import { buildAttachmentEndpoints } from "./attachments" import { buildAuthEndpoints } from "./auth" import { buildAutomationEndpoints } from "./automations" +import { buildHostingEndpoints } from "./hosting" import { buildQueryEndpoints } from "./queries" import { buildRelationshipEndpoints } from "./relationships" import { buildRouteEndpoints } from "./routes" @@ -35,6 +36,7 @@ export const createAPIClient = config => { // Try to read a message from the error let message = response.statusText + let json = null try { const json = await response.json() if (json?.message) { @@ -47,6 +49,7 @@ export const createAPIClient = config => { } return { message, + json, status: response.status, url: response.url, method, @@ -58,6 +61,7 @@ export const createAPIClient = config => { const makeError = message => { return { message, + json: null, status: 400, url: "", method: "", @@ -173,6 +177,7 @@ export const createAPIClient = config => { ...buildAttachmentEndpoints(API), ...buildAuthEndpoints(API), ...buildAutomationEndpoints(API), + ...buildHostingEndpoints(API), ...buildQueryEndpoints(API), ...buildRelationshipEndpoints(API), ...buildRouteEndpoints(API), From 816ced96df2fb1c3198a44d6f05fa38646efabcb Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 10:44:37 +0000 Subject: [PATCH 23/63] Update all API usages in builder components directory --- .../DataTable/RelationshipDataTable.svelte | 15 +++++--- .../components/backend/DataTable/Table.svelte | 19 ++++++---- .../backend/DataTable/ViewDataTable.svelte | 31 ++++++++-------- .../backend/DataTable/modals/EditRoles.svelte | 30 +++++++++------- .../DataTable/modals/ExportModal.svelte | 19 +++++----- .../DataTable/modals/ImportModal.svelte | 20 ++++++----- .../TableIntegrationMenu/index.svelte | 17 +++++---- .../modals/CreateDatasourceModal.svelte | 30 +++++++++++----- .../TableNavigator/TableDataImport.svelte | 36 +++++++++---------- packages/frontend-core/src/api/builder.js | 9 +++++ packages/frontend-core/src/api/index.js | 9 ++++- .../frontend-core/src/api/relationships.js | 8 +++-- packages/frontend-core/src/api/rows.js | 14 ++++++++ packages/frontend-core/src/api/tables.js | 31 ++++++++++++++++ packages/frontend-core/src/api/views.js | 15 ++++++++ 15 files changed, 206 insertions(+), 97 deletions(-) diff --git a/packages/builder/src/components/backend/DataTable/RelationshipDataTable.svelte b/packages/builder/src/components/backend/DataTable/RelationshipDataTable.svelte index a0a06d1866..8ef870caca 100644 --- a/packages/builder/src/components/backend/DataTable/RelationshipDataTable.svelte +++ b/packages/builder/src/components/backend/DataTable/RelationshipDataTable.svelte @@ -1,7 +1,8 @@ diff --git a/packages/builder/src/components/backend/DataTable/Table.svelte b/packages/builder/src/components/backend/DataTable/Table.svelte index 3c646bde68..ab94080959 100644 --- a/packages/builder/src/components/backend/DataTable/Table.svelte +++ b/packages/builder/src/components/backend/DataTable/Table.svelte @@ -2,7 +2,7 @@ import { fade } from "svelte/transition" import { goto, params } from "@roxi/routify" import { Table, Modal, Heading, notifications, Layout } from "@budibase/bbui" - import api from "builderStore/api" + import { API } "api" import Spinner from "components/common/Spinner.svelte" import DeleteRowsButton from "./buttons/DeleteRowsButton.svelte" import CreateEditRow from "./modals/CreateEditRow.svelte" @@ -88,12 +88,17 @@ } const deleteRows = async () => { - await api.delete(`/api/${tableId}/rows`, { - rows: selectedRows, - }) - data = data.filter(row => !selectedRows.includes(row)) - notifications.success(`Successfully deleted ${selectedRows.length} rows`) - selectedRows = [] + try { + await API.deleteRows({ + tableId, + rows: selectedRows + }) + data = data.filter(row => !selectedRows.includes(row)) + notifications.success(`Successfully deleted ${selectedRows.length} rows`) + selectedRows = [] + } catch (error) { + notifications.error("Error deleting rows") + } } const editRow = row => { diff --git a/packages/builder/src/components/backend/DataTable/ViewDataTable.svelte b/packages/builder/src/components/backend/DataTable/ViewDataTable.svelte index a52fbdb177..10c6703623 100644 --- a/packages/builder/src/components/backend/DataTable/ViewDataTable.svelte +++ b/packages/builder/src/components/backend/DataTable/ViewDataTable.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/components/backend/DataTable/modals/EditRoles.svelte b/packages/builder/src/components/backend/DataTable/modals/EditRoles.svelte index 7fa9482fbe..e2ccab11af 100644 --- a/packages/builder/src/components/backend/DataTable/modals/EditRoles.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/EditRoles.svelte @@ -1,7 +1,7 @@ diff --git a/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte b/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte index 88d001a444..930842d34f 100644 --- a/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte @@ -1,7 +1,7 @@ diff --git a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/index.svelte b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/index.svelte index 79ebdb1020..9277207e37 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/index.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/index.svelte @@ -1,7 +1,7 @@ diff --git a/packages/builder/src/components/backend/TableNavigator/TableDataImport.svelte b/packages/builder/src/components/backend/TableNavigator/TableDataImport.svelte index 44cb374092..774aac0677 100644 --- a/packages/builder/src/components/backend/TableNavigator/TableDataImport.svelte +++ b/packages/builder/src/components/backend/TableNavigator/TableDataImport.svelte @@ -1,7 +1,7 @@ diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte index 1fa5c6e073..385af3983c 100644 --- a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte @@ -122,7 +122,7 @@ }) dispatch("updatecolumns") } catch (err) { - notifications.error(err) + notifications.error("Error saving column") } } @@ -131,17 +131,21 @@ } function deleteColumn() { - field.name = deleteColName - if (field.name === $tables.selected.primaryDisplay) { - notifications.error("You cannot delete the display column") - } else { - tables.deleteField(field) - notifications.success(`Column ${field.name} deleted.`) - confirmDeleteDialog.hide() - hide() - deletion = false + try { + field.name = deleteColName + if (field.name === $tables.selected.primaryDisplay) { + notifications.error("You cannot delete the display column") + } else { + tables.deleteField(field) + notifications.success(`Column ${field.name} deleted.`) + confirmDeleteDialog.hide() + hide() + deletion = false + dispatch("updatecolumns") + } + } catch (error) { + notifications.error("Error deleting column") } - dispatch("updatecolumns") } function handleTypeChange(event) { diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateViewModal.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateViewModal.svelte index 2f6ec51233..2ea0c1b63b 100644 --- a/packages/builder/src/components/backend/DataTable/modals/CreateViewModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/CreateViewModal.svelte @@ -12,17 +12,21 @@ function saveView() { if (views.includes(name)) { - notifications.error(`View exists with name ${name}.`) + notifications.error(`View exists with name ${name}`) return } - viewsStore.save({ - name, - tableId: $tables.selected._id, - field, - }) - notifications.success(`View ${name} created`) - analytics.captureEvent(Events.VIEW.CREATED, { name }) - $goto(`../../view/${name}`) + try { + viewsStore.save({ + name, + tableId: $tables.selected._id, + field, + }) + notifications.success(`View ${name} created`) + analytics.captureEvent(Events.VIEW.CREATED, { name }) + $goto(`../../view/${name}`) + } catch (error) { + notifications.error("Error creating view") + } } diff --git a/packages/builder/src/components/backend/DataTable/modals/FilterModal.svelte b/packages/builder/src/components/backend/DataTable/modals/FilterModal.svelte index c413ee16ce..1209ea7e5f 100644 --- a/packages/builder/src/components/backend/DataTable/modals/FilterModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/FilterModal.svelte @@ -72,11 +72,15 @@ $: schema = viewTable && viewTable.schema ? viewTable.schema : {} function saveView() { - views.save(view) - notifications.success(`View ${view.name} saved.`) - analytics.captureEvent(Events.VIEW.ADDED_FILTER, { - filters: JSON.stringify(view.filters), - }) + try { + views.save(view) + notifications.success(`View ${view.name} saved`) + analytics.captureEvent(Events.VIEW.ADDED_FILTER, { + filters: JSON.stringify(view.filters), + }) + } catch (error) { + notifcations.error("Error saving view") + } } function removeFilter(idx) { diff --git a/packages/builder/src/components/backend/DataTable/modals/GroupByModal.svelte b/packages/builder/src/components/backend/DataTable/modals/GroupByModal.svelte index b0df0ef1da..59fc4a2c5d 100644 --- a/packages/builder/src/components/backend/DataTable/modals/GroupByModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/GroupByModal.svelte @@ -19,8 +19,12 @@ .map(([key]) => key) function saveView() { - views.save(view) - notifications.success(`View ${view.name} saved.`) + try { + views.save(view) + notifications.success(`View ${view.name} saved`) + } catch (error) { + notifications.error("Error saving view") + } } diff --git a/packages/builder/src/components/backend/DataTable/modals/ManageAccessModal.svelte b/packages/builder/src/components/backend/DataTable/modals/ManageAccessModal.svelte index 0998a5be2e..aa6dbc93e0 100644 --- a/packages/builder/src/components/backend/DataTable/modals/ManageAccessModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/ManageAccessModal.svelte @@ -14,15 +14,19 @@ export let permissions async function changePermission(level, role) { - await permissionsStore.save({ - level, - role, - resource: resourceId, - }) + try { + await permissionsStore.save({ + level, + role, + resource: resourceId, + }) - // Show updated permissions in UI: REMOVE - permissions = await permissionsStore.forResource(resourceId) - notifications.success("Updated permissions.") + // Show updated permissions in UI: REMOVE + permissions = await permissionsStore.forResource(resourceId) + notifications.success("Updated permissions") + } catch (error) { + notifications.error("Error updating permissions") + } } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte b/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte index af345ddcdf..b40686afb5 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte @@ -10,6 +10,7 @@ import TableNavigator from "components/backend/TableNavigator/TableNavigator.svelte" import { customQueryIconText, customQueryIconColor } from "helpers/data/utils" import ICONS from "./icons" + import { notifications } from "@budibase/bbui" let openDataSources = [] $: enrichedDataSources = Array.isArray($datasources.list) @@ -64,8 +65,12 @@ } onMount(() => { - datasources.fetch() - queries.fetch() + try { + datasources.fetch() + queries.fetch() + } catch (error) { + notifications.error("Error fetching datasources and queries") + } }) const containsActiveEntity = datasource => { diff --git a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/CreateExternalTableModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/CreateExternalTableModal.svelte index 52402a0396..f6cd6af758 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/CreateExternalTableModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/CreateExternalTableModal.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/PlusConfigForm.svelte b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/PlusConfigForm.svelte index 819fb32e45..1148695712 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/PlusConfigForm.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/TableIntegrationMenu/PlusConfigForm.svelte @@ -90,8 +90,8 @@ await datasources.updateSchema(datasource) notifications.success(`Datasource ${name} tables updated successfully.`) await tables.fetch() - } catch (err) { - notifications.error(`Error updating datasource schema: ${err}`) + } catch (error) { + notifications.error("Error updating datasource schema") } } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index d1a3d7c302..267b0495ec 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -62,9 +62,13 @@ externalDatasourceModal.hide() internalTableModal.show() } else if (integration.type === IntegrationTypes.REST) { - // skip modal for rest, create straight away - const resp = await createRestDatasource(integration) - $goto(`./datasource/${resp._id}`) + try { + // Skip modal for rest, create straight away + const resp = await createRestDatasource(integration) + $goto(`./datasource/${resp._id}`) + } catch (error) { + notifications.error("Error creating datasource") + } } else { externalDatasourceModal.show() } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte index da8c0515b7..06e00ff5d0 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte @@ -20,7 +20,7 @@ $goto(`./datasource/${resp._id}`) notifications.success(`Datasource updated successfully.`) } catch (err) { - notifications.error(`Error saving datasource: ${err}`) + notifications.error("Error saving datasource") } } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/ImportRestQueriesModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/ImportRestQueriesModal.svelte index cd6cef42d1..86cc25a0f3 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/ImportRestQueriesModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/ImportRestQueriesModal.svelte @@ -79,8 +79,8 @@ }) return true - } catch (err) { - notifications.error(`Error importing: ${err}`) + } catch (error) { + notifications.error("Error importing queries") return false } } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditDatasourcePopover.svelte b/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditDatasourcePopover.svelte index 1354c31b87..ae0023f682 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditDatasourcePopover.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditDatasourcePopover.svelte @@ -12,24 +12,28 @@ let updateDatasourceDialog async function deleteDatasource() { - let wasSelectedSource = $datasources.selected - if (!wasSelectedSource && $queries.selected) { - const queryId = $queries.selected - wasSelectedSource = $datasources.list.find(ds => - queryId.includes(ds._id) - )?._id - } - const wasSelectedTable = $tables.selected - await datasources.delete(datasource) - notifications.success("Datasource deleted") - // navigate to first index page if the source you are deleting is selected - const entities = Object.values(datasource?.entities || {}) - if ( - wasSelectedSource === datasource._id || - (entities && - entities.find(entity => entity._id === wasSelectedTable?._id)) - ) { - $goto("./datasource") + try { + let wasSelectedSource = $datasources.selected + if (!wasSelectedSource && $queries.selected) { + const queryId = $queries.selected + wasSelectedSource = $datasources.list.find(ds => + queryId.includes(ds._id) + )?._id + } + const wasSelectedTable = $tables.selected + await datasources.delete(datasource) + notifications.success("Datasource deleted") + // Navigate to first index page if the source you are deleting is selected + const entities = Object.values(datasource?.entities || {}) + if ( + wasSelectedSource === datasource._id || + (entities && + entities.find(entity => entity._id === wasSelectedTable?._id)) + ) { + $goto("./datasource") + } + } catch (error) { + notifications.error("Error deleting datasource") } } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditQueryPopover.svelte b/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditQueryPopover.svelte index b15746735b..e18deab2dd 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditQueryPopover.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/popovers/EditQueryPopover.svelte @@ -10,26 +10,30 @@ let confirmDeleteDialog async function deleteQuery() { - const wasSelectedQuery = $queries.selected - // need to calculate this before the query is deleted - const navigateToDatasource = wasSelectedQuery === query._id + try { + const wasSelectedQuery = $queries.selected + // need to calculate this before the query is deleted + const navigateToDatasource = wasSelectedQuery === query._id - await queries.delete(query) - await datasources.fetch() + await queries.delete(query) + await datasources.fetch() - if (navigateToDatasource) { - await datasources.select(query.datasourceId) - $goto(`./datasource/${query.datasourceId}`) + if (navigateToDatasource) { + await datasources.select(query.datasourceId) + $goto(`./datasource/${query.datasourceId}`) + } + notifications.success("Query deleted") + } catch (error) { + notifications.error("Error deleting query") } - notifications.success("Query deleted") } async function duplicateQuery() { try { const newQuery = await queries.duplicate(query) onClickQuery(newQuery) - } catch (e) { - notifications.error(e.message) + } catch (error) { + notifications.error("Error duplicating query") } } diff --git a/packages/builder/src/components/backend/TableNavigator/popovers/EditTablePopover.svelte b/packages/builder/src/components/backend/TableNavigator/popovers/EditTablePopover.svelte index 0211a37557..b4035ba6e4 100644 --- a/packages/builder/src/components/backend/TableNavigator/popovers/EditTablePopover.svelte +++ b/packages/builder/src/components/backend/TableNavigator/popovers/EditTablePopover.svelte @@ -49,8 +49,8 @@ if (wasSelectedTable && wasSelectedTable._id === table._id) { $goto("./table") } - } catch (err) { - notifications.error(err) + } catch (error) { + notifications.error("Error deleting table") } } diff --git a/packages/builder/src/components/backend/TableNavigator/popovers/EditViewPopover.svelte b/packages/builder/src/components/backend/TableNavigator/popovers/EditViewPopover.svelte index 8384fc1d90..0ab5d4326f 100644 --- a/packages/builder/src/components/backend/TableNavigator/popovers/EditViewPopover.svelte +++ b/packages/builder/src/components/backend/TableNavigator/popovers/EditViewPopover.svelte @@ -27,11 +27,15 @@ } async function deleteView() { - const name = view.name - const id = view.tableId - await views.delete(name) - notifications.success("View deleted") - $goto(`./table/${id}`) + try { + const name = view.name + const id = view.tableId + await views.delete(name) + notifications.success("View deleted") + $goto(`./table/${id}`) + } catch (error) { + notifications.error("Error deleting view") + } } diff --git a/packages/builder/src/components/integration/AccessLevelSelect.svelte b/packages/builder/src/components/integration/AccessLevelSelect.svelte index 88814ed648..24c1e9b069 100644 --- a/packages/builder/src/components/integration/AccessLevelSelect.svelte +++ b/packages/builder/src/components/integration/AccessLevelSelect.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte index 808c3a49ec..85ae8a11f5 100644 --- a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte +++ b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte @@ -112,14 +112,13 @@ const { _id } = await queries.save(toSave.datasourceId, toSave) saveId = _id query = getSelectedQuery() - notifications.success(`Request saved successfully.`) - + notifications.success(`Request saved successfully`) if (dynamicVariables) { datasource.config.dynamicVariables = rebuildVariables(saveId) datasource = await datasources.save(datasource) } } catch (err) { - notifications.error(`Error saving query. ${err.message}`) + notifications.error(`Error saving query`) } } @@ -127,14 +126,14 @@ try { response = await queries.preview(buildQuery(query)) if (response.rows.length === 0) { - notifications.info("Request did not return any data.") + notifications.info("Request did not return any data") } else { response.info = response.info || { code: 200 } schema = response.schema - notifications.success("Request sent successfully.") + notifications.success("Request sent successfully") } - } catch (err) { - notifications.error(err) + } catch (error) { + notifications.error("Error running query") } } @@ -226,10 +225,24 @@ ) } + const updateFlag = async (flag, value) => { + try { + await flags.updateFlag(flag, value) + } catch (error) { + notifications.error("Error updating flag") + } + } + onMount(async () => { query = getSelectedQuery() - // clear any unsaved changes to the datasource - await datasources.init() + + try { + // Clear any unsaved changes to the datasource + await datasources.init() + } catch (error) { + notifications.error("Error getting datasources") + } + datasource = $datasources.list.find(ds => ds._id === query?.datasourceId) const datasourceUrl = datasource?.config.url const qs = query?.fields.queryString @@ -393,8 +406,7 @@ window.open( "https://docs.budibase.com/building-apps/data/transformers" )} - on:change={() => - flags.updateFlag("queryTransformerBanner", true)} + on:change={() => updateFlag("queryTransformerBanner", true)} > Add a JavaScript function to transform the query result. diff --git a/packages/builder/src/stores/backend/datasources.js b/packages/builder/src/stores/backend/datasources.js index 7810c3a950..2423394c6a 100644 --- a/packages/builder/src/stores/backend/datasources.js +++ b/packages/builder/src/stores/backend/datasources.js @@ -1,6 +1,6 @@ import { writable, get } from "svelte/store" import { queries, tables, views } from "./" -import api from "../../builderStore/api" +import { API } from "api" export const INITIAL_DATASOURCE_VALUES = { list: [], @@ -13,23 +13,20 @@ export function createDatasourcesStore() { const { subscribe, update, set } = store async function updateDatasource(response) { - if (response.status !== 200) { - throw new Error(await response.text()) - } - - const { datasource, error } = await response.json() + const { datasource, error } = response update(state => { const currentIdx = state.list.findIndex(ds => ds._id === datasource._id) - const sources = state.list - if (currentIdx >= 0) { sources.splice(currentIdx, 1, datasource) } else { sources.push(datasource) } - - return { list: sources, selected: datasource._id, schemaError: error } + return { + list: sources, + selected: datasource._id, + schemaError: error, + } }) return datasource } @@ -38,25 +35,25 @@ export function createDatasourcesStore() { subscribe, update, init: async () => { - const response = await api.get(`/api/datasources`) - const json = await response.json() - set({ list: json, selected: null }) + const datasources = await API.getDatasources() + set({ + list: datasources, + selected: null, + }) }, fetch: async () => { - const response = await api.get(`/api/datasources`) - const json = await response.json() + const datasources = await API.getDatasources() // Clear selected if it no longer exists, otherwise keep it const selected = get(store).selected let nextSelected = null - if (selected && json.find(source => source._id === selected)) { + if (selected && datasources.find(source => source._id === selected)) { nextSelected = selected } - update(state => ({ ...state, list: json, selected: nextSelected })) - return json + update(state => ({ ...state, list: datasources, selected: nextSelected })) }, - select: async datasourceId => { + select: datasourceId => { update(state => ({ ...state, selected: datasourceId })) queries.unselect() tables.unselect() @@ -66,37 +63,33 @@ export function createDatasourcesStore() { update(state => ({ ...state, selected: null })) }, updateSchema: async datasource => { - let url = `/api/datasources/${datasource._id}/schema` - - const response = await api.post(url) - return updateDatasource(response) + const response = await API.buildDatasourceSchema(datasource?._id) + return await updateDatasource(response) }, save: async (body, fetchSchema = false) => { let response if (body._id) { - response = await api.put(`/api/datasources/${body._id}`, body) + response = await API.updateDatasource(body) } else { - response = await api.post("/api/datasources", { + response = await API.createDatasource({ datasource: body, fetchSchema, }) } - return updateDatasource(response) }, delete: async datasource => { - const response = await api.delete( - `/api/datasources/${datasource._id}/${datasource._rev}` - ) + await API.deleteDatasource({ + datasourceId: datasource?._id, + datasourceRev: datasource?._rev, + }) update(state => { const sources = state.list.filter( existing => existing._id !== datasource._id ) return { list: sources, selected: null } }) - await queries.fetch() - return response }, removeSchemaError: () => { update(state => { diff --git a/packages/builder/src/stores/backend/flags.js b/packages/builder/src/stores/backend/flags.js index 7e5adcd00f..449d010640 100644 --- a/packages/builder/src/stores/backend/flags.js +++ b/packages/builder/src/stores/backend/flags.js @@ -1,37 +1,27 @@ import { writable } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" export function createFlagsStore() { const { subscribe, set } = writable({}) - return { - subscribe, + const actions = { fetch: async () => { - const { doc, response } = await getFlags() - set(doc) - return response + const flags = await API.getFlags() + set(flags) }, updateFlag: async (flag, value) => { - const response = await api.post("/api/users/flags", { + await API.updateFlag({ flag, value, }) - if (response.status === 200) { - const { doc } = await getFlags() - set(doc) - } - return response + await actions.fetch() }, } -} -async function getFlags() { - const response = await api.get("/api/users/flags") - let doc = {} - if (response.status === 200) { - doc = await response.json() + return { + subscribe, + ...actions, } - return { doc, response } } export const flags = createFlagsStore() diff --git a/packages/builder/src/stores/backend/integrations.js b/packages/builder/src/stores/backend/integrations.js index c19b09f1fb..717b656c72 100644 --- a/packages/builder/src/stores/backend/integrations.js +++ b/packages/builder/src/stores/backend/integrations.js @@ -7,12 +7,8 @@ const createIntegrationsStore = () => { return { ...store, init: async () => { - try { - const integrations = await API.getIntegrations() - store.set(integrations) - } catch (error) { - store.set(null) - } + const integrations = await API.getIntegrations() + store.set(integrations) }, } } diff --git a/packages/builder/src/stores/backend/permissions.js b/packages/builder/src/stores/backend/permissions.js index 29159494ed..aaab406bc9 100644 --- a/packages/builder/src/stores/backend/permissions.js +++ b/packages/builder/src/stores/backend/permissions.js @@ -1,5 +1,5 @@ import { writable } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" export function createPermissionStore() { const { subscribe } = writable([]) @@ -7,14 +7,14 @@ export function createPermissionStore() { return { subscribe, save: async ({ level, role, resource }) => { - const response = await api.post( - `/api/permission/${role}/${resource}/${level}` - ) - return await response.json() + return await API.updatePermissionForResource({ + resourceId: resource, + roleId: role, + level, + }) }, forResource: async resourceId => { - const response = await api.get(`/api/permission/${resourceId}`) - return await response.json() + return await API.getPermissionForResource(resourceId) }, } } diff --git a/packages/builder/src/stores/backend/queries.js b/packages/builder/src/stores/backend/queries.js index 2018933ffc..6e30cb21f8 100644 --- a/packages/builder/src/stores/backend/queries.js +++ b/packages/builder/src/stores/backend/queries.js @@ -1,6 +1,6 @@ import { writable, get } from "svelte/store" import { datasources, integrations, tables, views } from "./" -import api from "builderStore/api" +import { API } from "api" import { duplicateName } from "../../helpers/duplicate" const sortQueries = queryList => { @@ -15,23 +15,26 @@ export function createQueriesStore() { const actions = { init: async () => { - const response = await api.get(`/api/queries`) - const json = await response.json() - set({ list: json, selected: null }) + const queries = await API.getQueries() + set({ + list: queries, + selected: null, + }) }, fetch: async () => { - const response = await api.get(`/api/queries`) - const json = await response.json() - sortQueries(json) - update(state => ({ ...state, list: json })) - return json + const queries = await API.getQueries() + sortQueries(queries) + update(state => ({ + ...state, + list: queries, + })) }, save: async (datasourceId, query) => { const _integrations = get(integrations) const dataSource = get(datasources).list.filter( ds => ds._id === datasourceId ) - // check if readable attribute is found + // Check if readable attribute is found if (dataSource.length !== 0) { const integration = _integrations[dataSource[0].source] const readable = integration.query[query.queryVerb].readable @@ -40,34 +43,28 @@ export function createQueriesStore() { } } query.datasourceId = datasourceId - const response = await api.post(`/api/queries`, query) - if (response.status !== 200) { - throw new Error("Failed saving query.") - } - const json = await response.json() + const savedQuery = await API.saveQuery(query) update(state => { - const currentIdx = state.list.findIndex(query => query._id === json._id) - + const idx = state.list.findIndex(query => query._id === savedQuery._id) const queries = state.list - - if (currentIdx >= 0) { - queries.splice(currentIdx, 1, json) + if (idx >= 0) { + queries.splice(idx, 1, savedQuery) } else { - queries.push(json) + queries.push(savedQuery) } sortQueries(queries) - return { list: queries, selected: json._id } + return { + list: queries, + selected: savedQuery._id, + } }) - return json + return savedQuery }, - import: async body => { - const response = await api.post(`/api/queries/import`, body) - - if (response.status !== 200) { - throw new Error(response.message) - } - - return response.json() + import: async (data, datasourceId) => { + return await API.importQueries({ + datasourceId, + data, + }) }, select: query => { update(state => ({ ...state, selected: query._id })) @@ -79,48 +76,37 @@ export function createQueriesStore() { update(state => ({ ...state, selected: null })) }, preview: async query => { - const response = await api.post("/api/queries/preview", { - fields: query.fields, - queryVerb: query.queryVerb, - transformer: query.transformer, - parameters: query.parameters.reduce( - (acc, next) => ({ - ...acc, - [next.name]: next.default, - }), - {} - ), - datasourceId: query.datasourceId, - queryId: query._id || undefined, + const parameters = query.parameters.reduce( + (acc, next) => ({ + ...acc, + [next.name]: next.default, + }), + {} + ) + const result = await API.previewQuery({ + ...query, + parameters, }) - - if (response.status !== 200) { - const error = await response.text() - throw `Query error: ${error}` - } - - const json = await response.json() // Assume all the fields are strings and create a basic schema from the // unique fields returned by the server const schema = {} - for (let field of json.schemaFields) { + for (let field of result.schemaFields) { schema[field] = "string" } - return { ...json, schema, rows: json.rows || [] } + return { ...result, schema, rows: result.rows || [] } }, delete: async query => { - const response = await api.delete( - `/api/queries/${query._id}/${query._rev}` - ) + await API.deleteQuery({ + queryId: query?._id, + queryRev: query?._rev, + }) update(state => { state.list = state.list.filter(existing => existing._id !== query._id) if (state.selected === query._id) { state.selected = null } - return state }) - return response }, duplicate: async query => { let list = get(store).list diff --git a/packages/builder/src/stores/backend/roles.js b/packages/builder/src/stores/backend/roles.js index 1a1a9c04c5..0c3cdbce5a 100644 --- a/packages/builder/src/stores/backend/roles.js +++ b/packages/builder/src/stores/backend/roles.js @@ -1,30 +1,32 @@ import { writable } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" export function createRolesStore() { const { subscribe, update, set } = writable([]) - return { - subscribe, + const actions = { fetch: async () => { - set(await getRoles()) + const roles = await API.getRoles() + set(roles) }, delete: async role => { - const response = await api.delete(`/api/roles/${role._id}/${role._rev}`) + await API.deleteRole({ + roleId: role?._id, + roleRev: role?._rev, + }) update(state => state.filter(existing => existing._id !== role._id)) - return response }, save: async role => { - const response = await api.post("/api/roles", role) - set(await getRoles()) - return response + const savedRole = await API.saveRole(role) + await actions.fetch() + return savedRole }, } + + return { + subscribe, + ...actions, + } } -async function getRoles() { - const response = await api.get("/api/roles") - return await response.json() -} - export const roles = createRolesStore() diff --git a/packages/builder/src/stores/backend/tables.js b/packages/builder/src/stores/backend/tables.js index 02db48c549..f6d20037cb 100644 --- a/packages/builder/src/stores/backend/tables.js +++ b/packages/builder/src/stores/backend/tables.js @@ -1,7 +1,7 @@ import { get, writable } from "svelte/store" import { datasources, queries, views } from "./" import { cloneDeep } from "lodash/fp" -import api from "builderStore/api" +import { API } from "api" import { SWITCHABLE_TYPES } from "../../constants/backend" export function createTablesStore() { @@ -9,10 +9,11 @@ export function createTablesStore() { const { subscribe, update, set } = store async function fetch() { - const tablesResponse = await api.get(`/api/tables`) - const tables = await tablesResponse.json() - update(state => ({ ...state, list: tables })) - return tables + const tables = await API.getTables() + update(state => ({ + ...state, + list: tables, + })) } async function select(table) { @@ -38,16 +39,16 @@ export function createTablesStore() { const oldTable = get(store).list.filter(t => t._id === table._id)[0] const fieldNames = [] - // update any renamed schema keys to reflect their names + // Update any renamed schema keys to reflect their names for (let key of Object.keys(updatedTable.schema)) { - // if field name has been seen before remove it + // If field name has been seen before remove it if (fieldNames.indexOf(key.toLowerCase()) !== -1) { delete updatedTable.schema[key] continue } const field = updatedTable.schema[key] const oldField = oldTable?.schema[key] - // if the type has changed then revert back to the old field + // If the type has changed then revert back to the old field if ( oldField != null && oldField?.type !== field.type && @@ -55,21 +56,17 @@ export function createTablesStore() { ) { updatedTable.schema[key] = oldField } - // field has been renamed + // Field has been renamed if (field.name && field.name !== key) { updatedTable.schema[field.name] = field updatedTable._rename = { old: key, updated: field.name } delete updatedTable.schema[key] } - // finally record this field has been used + // Finally record this field has been used fieldNames.push(key.toLowerCase()) } - const response = await api.post(`/api/tables`, updatedTable) - if (response.status !== 200) { - throw (await response.json()).message - } - const savedTable = await response.json() + const savedTable = await API.saveTable(updatedTable) await fetch() if (table.type === "external") { await datasources.fetch() @@ -91,21 +88,18 @@ export function createTablesStore() { }, save, init: async () => { - const response = await api.get("/api/tables") - const json = await response.json() + const tables = await API.getTables() set({ - list: json, + list: tables, selected: {}, draft: {}, }) }, delete: async table => { - const response = await api.delete( - `/api/tables/${table._id}/${table._rev}` - ) - if (response.status !== 200) { - throw (await response.json()).message - } + await API.deleteTable({ + tableId: table?._id, + tableRev: table?._rev, + }) update(state => ({ ...state, list: state.list.filter(existing => existing._id !== table._id), @@ -156,12 +150,16 @@ export function createTablesStore() { await promise } }, - deleteField: field => { + deleteField: async field => { + let promise update(state => { delete state.draft.schema[field.name] - save(state.draft) + promise = save(state.draft) return state }) + if (promise) { + await promise + } }, } } diff --git a/packages/builder/src/stores/backend/views.js b/packages/builder/src/stores/backend/views.js index 14c7bf92a4..849a66f671 100644 --- a/packages/builder/src/stores/backend/views.js +++ b/packages/builder/src/stores/backend/views.js @@ -1,6 +1,6 @@ import { writable, get } from "svelte/store" import { tables, datasources, queries } from "./" -import api from "builderStore/api" +import { API } from "api" export function createViewsStore() { const { subscribe, update } = writable({ @@ -11,7 +11,7 @@ export function createViewsStore() { return { subscribe, update, - select: async view => { + select: view => { update(state => ({ ...state, selected: view, @@ -27,16 +27,14 @@ export function createViewsStore() { })) }, delete: async view => { - await api.delete(`/api/views/${view}`) + await API.deleteView(view) await tables.fetch() }, save: async view => { - const response = await api.post(`/api/views`, view) - const json = await response.json() - + const savedView = await API.saveView(view) const viewMeta = { name: view.name, - ...json, + ...savedView, } const viewTable = get(tables).list.find( diff --git a/packages/builder/src/stores/portal/email.js b/packages/builder/src/stores/portal/email.js index a015480141..5bef63701f 100644 --- a/packages/builder/src/stores/portal/email.js +++ b/packages/builder/src/stores/portal/email.js @@ -1,5 +1,6 @@ import { writable } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" +import { notifications } from "@budibase/bbui" export function createEmailStore() { const store = writable({}) @@ -8,34 +9,35 @@ export function createEmailStore() { subscribe: store.subscribe, templates: { fetch: async () => { - // fetch the email template definitions - const response = await api.get(`/api/global/template/definitions`) - const definitions = await response.json() - - // fetch the email templates themselves - const templatesResponse = await api.get(`/api/global/template/email`) - const templates = await templatesResponse.json() - - store.set({ - definitions, - templates, - }) + try { + // fetch the email template definitions and templates + const definitions = await API.getEmailTemplateDefinitions() + const templates = await API.getEmailTemplates() + store.set({ + definitions, + templates, + }) + } catch (error) { + notifications.error("Error fetching email templates") + store.set({}) + } }, save: async template => { - // Save your template config - const response = await api.post(`/api/global/template`, template) - const json = await response.json() - if (response.status !== 200) throw new Error(json.message) - template._rev = json._rev - template._id = json._id - - store.update(state => { - const currentIdx = state.templates.findIndex( - template => template.purpose === json.purpose - ) - state.templates.splice(currentIdx, 1, template) - return state - }) + try { + // Save your template config + const savedTemplate = await API.saveEmailTemplate(template) + template._rev = savedTemplate._rev + template._id = savedTemplate._id + store.update(state => { + const currentIdx = state.templates.findIndex( + template => template.purpose === savedTemplate.purpose + ) + state.templates.splice(currentIdx, 1, template) + return state + }) + } catch (error) { + notifications.error("Error saving email template") + } }, }, } diff --git a/packages/frontend-core/src/api/datasources.js b/packages/frontend-core/src/api/datasources.js new file mode 100644 index 0000000000..ff72fbf25b --- /dev/null +++ b/packages/frontend-core/src/api/datasources.js @@ -0,0 +1,57 @@ +export const buildDatasourceEndpoints = API => ({ + /** + * Gets a list of datasources. + */ + getDatasources: async () => { + return await API.get({ + url: "/api/datasources", + }) + }, + + /** + * Prompts the server to build the schema for a datasource. + * @param datasourceId the datasource ID to build the schema for + */ + buildDatasourceSchema: async datasourceId => { + return await API.post({ + url: `/api/datasources/${datasourceId}/schema`, + }) + }, + + /** + * Creates a datasource + * @param datasource the datasource to create + * @param fetchSchema whether to fetch the schema or not + */ + createDatasource: async ({ datasource, fetchSchema }) => { + return await API.post({ + url: "/api/datasources", + body: { + datasource, + fetchSchema, + }, + }) + }, + + /** + * Updates a datasource + * @param datasource the datasource to update + */ + updateDatasource: async datasource => { + return await API.put({ + url: `/api/datasources/${datasource._id}`, + body: datasource, + }) + }, + + /** + * Deletes a datasource. + * @param datasourceId the ID of the ddtasource to delete + * @param datasourceRev the rev of the datasource to delete + */ + deleteDatasource: async ({ datasourceId, datasourceRev }) => { + return await API.delete({ + url: `/api/datasources/${datasourceId}/${datasourceRev}`, + }) + }, +}) diff --git a/packages/frontend-core/src/api/flags.js b/packages/frontend-core/src/api/flags.js new file mode 100644 index 0000000000..bb545e83b9 --- /dev/null +++ b/packages/frontend-core/src/api/flags.js @@ -0,0 +1,25 @@ +export const buildFlagEndpoints = API => ({ + /** + * Gets the current user flags object. + */ + getFlags: async () => { + return await API.get({ + url: "/api/users/flags", + }) + }, + + /** + * Updates a flag for the current user. + * @param flag the flag to update + * @param value the value to set the flag to + */ + updateFlag: async ({ flag, value }) => { + return await API.post({ + url: "/api/users/flags", + body: { + flag, + value, + }, + }) + }, +}) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 91a400a389..9511a946b4 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -4,13 +4,18 @@ import { buildAppEndpoints } from "./app" import { buildAttachmentEndpoints } from "./attachments" import { buildAuthEndpoints } from "./auth" import { buildAutomationEndpoints } from "./automations" +import { buildDatasourceEndpoints } from "./datasources" +import { buildFlagEndpoints } from "./flags" import { buildHostingEndpoints } from "./hosting" +import { buildPermissionsEndpoints } from "./permissions" import { buildQueryEndpoints } from "./queries" import { buildRelationshipEndpoints } from "./relationships" +import { buildRoleEndpoints } from "./roles" import { buildRouteEndpoints } from "./routes" import { buildRowEndpoints } from "./rows" import { buildScreenEndpoints } from "./screens" import { buildTableEndpoints } from "./tables" +import { buildTemplateEndpoints } from "./templates" import { buildViewEndpoints } from "./views" const defaultAPIClientConfig = { @@ -184,13 +189,18 @@ export const createAPIClient = config => { ...buildAttachmentEndpoints(API), ...buildAuthEndpoints(API), ...buildAutomationEndpoints(API), + ...buildDatasourceEndpoints(API), + ...buildFlagEndpoints(API), ...buildHostingEndpoints(API), + ...buildPermissionsEndpoints(API), ...buildQueryEndpoints(API), ...buildRelationshipEndpoints(API), + ...buildRoleEndpoints(API), ...buildRouteEndpoints(API), ...buildRowEndpoints(API), ...buildScreenEndpoints(API), ...buildTableEndpoints(API), + ...buildTemplateEndpoints(API), ...buildViewEndpoints(API), } diff --git a/packages/frontend-core/src/api/permissions.js b/packages/frontend-core/src/api/permissions.js new file mode 100644 index 0000000000..5407cb3ce5 --- /dev/null +++ b/packages/frontend-core/src/api/permissions.js @@ -0,0 +1,24 @@ +export const buildPermissionsEndpoints = API => ({ + /** + * Gets the permission required to access a specific resource + * @param resourceId the resource ID to check + */ + getPermissionForResource: async resourceId => { + return await API.get({ + url: `/api/permission/${resourceId}`, + }) + }, + + /** + * Updates the permissions for a certain resource + * @param resourceId the ID of the resource to update + * @param roleId the ID of the role to update the permissions of + * @param level the level to assign the role for this resource + * @return {Promise<*>} + */ + updatePermissionForResource: async ({ resourceId, roleId, level }) => { + return await API.post({ + url: `/api/permission/${roleId}/${resourceId}/${level}`, + }) + }, +}) diff --git a/packages/frontend-core/src/api/queries.js b/packages/frontend-core/src/api/queries.js index 6c3ce900f9..f18ec7c4ec 100644 --- a/packages/frontend-core/src/api/queries.js +++ b/packages/frontend-core/src/api/queries.js @@ -1,6 +1,9 @@ export const buildQueryEndpoints = API => ({ /** * Executes a query against an external data connector. + * @param queryId the ID of the query to execute + * @param pagination pagination info for the query + * @param parameters parameters for the query */ executeQuery: async ({ queryId, pagination, parameters }) => { return await API.post({ @@ -14,6 +17,7 @@ export const buildQueryEndpoints = API => ({ /** * Fetches the definition of an external query. + * @param queryId the ID of thr query to fetch the definition of */ fetchQueryDefinition: async queryId => { return await API.get({ @@ -21,4 +25,61 @@ export const buildQueryEndpoints = API => ({ cache: true, }) }, + + /** + * Gets a list of queries + */ + getQueries: async () => { + return await API.get({ + url: "/api/queries", + }) + }, + + /** + * Saves a query. + * @param query the query to save + */ + saveQuery: async query => { + return await API.post({ + url: "/api/queries", + body: query, + }) + }, + + /** + * Deletes a query + * @param queryId the ID of the query to delete + * @param queryRev the rev of the query to delete + */ + deleteQuery: async ({ queryId, queryRev }) => { + return await API.delete({ + url: `/api/queries/${queryId}/${queryRev}`, + }) + }, + + /** + * Imports a set of queries into a certain datasource + * @param datasourceId the datasource ID to import queries into + * @param data the data string of the content to import + */ + importQueries: async ({ datasourceId, data }) => { + return await API.post({ + url: "/api/queries/import", + body: { + datasourceId, + data, + }, + }) + }, + + /** + * Runs a query with test parameters to see the result. + * @param query the query to run + */ + previewQuery: async query => { + return await API.post({ + url: "/api/queries/preview", + body: query, + }) + }, }) diff --git a/packages/frontend-core/src/api/roles.js b/packages/frontend-core/src/api/roles.js new file mode 100644 index 0000000000..15c27091c4 --- /dev/null +++ b/packages/frontend-core/src/api/roles.js @@ -0,0 +1,32 @@ +export const buildRoleEndpoints = API => ({ + /** + * Deletes a role. + * @param roleId the ID of the role to delete + * @param roleRev the rev of the role to delete + */ + deleteRole: async ({ roleId, roleRev }) => { + return await API.delete({ + url: `/api/roles/${roleId}/${roleRev}`, + }) + }, + + /** + * Saves a role. + * @param role the role to save + */ + saveRole: async role => { + return await API.post({ + url: "/api/roles", + body: role, + }) + }, + + /** + * Gets a list of roles. + */ + getRoles: async () => { + return await API.get({ + url: "/api/roles", + }) + }, +}) diff --git a/packages/frontend-core/src/api/tables.js b/packages/frontend-core/src/api/tables.js index 0785b2eed3..1f8b450a2a 100644 --- a/packages/frontend-core/src/api/tables.js +++ b/packages/frontend-core/src/api/tables.js @@ -79,4 +79,35 @@ export const buildTableEndpoints = API => ({ }, }) }, + + /** + * Gets a list o tables. + */ + getTables: async () => { + return await API.get({ + url: "/api/tables", + }) + }, + + /** + * Saves a table. + * @param table the table to save + */ + saveTable: async table => { + return await API.post({ + url: "/api/tables", + body: table, + }) + }, + + /** + * Deletes a table. + * @param tableId the ID of the table to delete + * @param tableRev the rev of the table to delete + */ + deleteTable: async ({ tableId, tableRev }) => { + return await API.delete({ + url: `/api/tables/${tableId}/${tableRev}`, + }) + }, }) diff --git a/packages/frontend-core/src/api/templates.js b/packages/frontend-core/src/api/templates.js new file mode 100644 index 0000000000..7cd1d78d7b --- /dev/null +++ b/packages/frontend-core/src/api/templates.js @@ -0,0 +1,28 @@ +export const buildTemplateEndpoints = API => ({ + /** + * Gets the list of email template definitions. + */ + getEmailTemplateDefinitions: async () => { + return await API.get({ url: "/api/global/template/definitions" }) + }, + + /** + * Gets the list of email templates. + */ + getEmailTemplates: async () => { + return await API.get({ url: "/api/global/template/email" }) + }, + + /** + * Saves an email template. + * @param template the template to save + */ + saveEmailTemplate: async template => { + return await API.post({ + url: "/api/global/template", + body: { + template, + }, + }) + }, +}) diff --git a/packages/frontend-core/src/api/views.js b/packages/frontend-core/src/api/views.js index 661268d957..237a66bc13 100644 --- a/packages/frontend-core/src/api/views.js +++ b/packages/frontend-core/src/api/views.js @@ -1,6 +1,10 @@ export const buildViewEndpoints = API => ({ /** - * Fetches all rows in a view. + * Fetches all rows in a view + * @param name the name of the view + * @param field the field to perform the calculation on + * @param groupBy the field to group by + * @param calculation the calculation to perform */ fetchViewData: async ({ name, field, groupBy, calculation }) => { const params = new URLSearchParams() @@ -9,7 +13,7 @@ export const buildViewEndpoints = API => ({ params.set("calculation", calculation) } if (groupBy) { - params.set("group", groupBy ? "true" : "false") + params.set("group", groupBy) } const QUERY_VIEW_URL = field ? `/api/views/${name}?${params}` @@ -31,4 +35,25 @@ export const buildViewEndpoints = API => ({ }, }) }, + + /** + * Saves a view. + * @param view the view to save + */ + saveView: async view => { + return await API.post({ + url: "/api/views", + body: view, + }) + }, + + /** + * Deletes a view. + * @param viewName the name of the view to delete + */ + deleteView: async viewName => { + return await API.delete({ + url: `/api/views/${viewName}`, + }) + }, }) From db3b4c0b8cd11d623957b3c6ef1a24e60ab64940 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 14:32:27 +0000 Subject: [PATCH 25/63] Update remaining builder stores to use new core API and handle errors properly --- .../src/builderStore/store/frontend.js | 12 +- .../feedback/NPSFeedbackForm.svelte | 29 +-- .../components/start/ChooseIconModal.svelte | 25 ++- .../components/start/CreateAppModal.svelte | 9 +- .../components/start/UpdateAppModal.svelte | 3 +- .../builder/src/pages/builder/_layout.svelte | 31 ++-- .../src/pages/builder/admin/index.svelte | 12 +- .../src/pages/builder/apps/index.svelte | 19 +- .../auth/_components/OIDCButton.svelte | 8 +- .../src/pages/builder/auth/forgot.svelte | 6 +- .../src/pages/builder/auth/index.svelte | 9 +- .../src/pages/builder/auth/login.svelte | 10 +- .../builder/src/pages/builder/auth/org.svelte | 26 ++- .../src/pages/builder/auth/reset.svelte | 6 +- .../src/pages/builder/invite/index.svelte | 11 +- .../src/pages/builder/portal/_layout.svelte | 17 +- .../pages/builder/portal/apps/index.svelte | 29 +-- .../builder/portal/manage/auth/index.svelte | 11 +- .../portal/manage/email/[template].svelte | 6 +- .../portal/manage/email/_layout.svelte | 10 +- .../portal/manage/users/[userId].svelte | 32 ++-- .../users/_components/AddUserModal.svelte | 8 +- .../_components/BasicOnboardingModal.svelte | 20 +-- .../ForceResetPasswordModal.svelte | 18 +- .../users/_components/UpdateRolesModal.svelte | 48 +++-- .../builder/portal/manage/users/index.svelte | 12 +- .../portal/settings/organisation.svelte | 34 ++-- packages/builder/src/stores/portal/admin.js | 76 +++----- packages/builder/src/stores/portal/apps.js | 115 ++++++------ packages/builder/src/stores/portal/auth.js | 83 +++------ packages/builder/src/stores/portal/email.js | 46 ++--- packages/builder/src/stores/portal/oidc.js | 19 +- .../builder/src/stores/portal/organisation.js | 22 +-- .../builder/src/stores/portal/templates.js | 13 +- packages/builder/src/stores/portal/users.js | 46 ++--- packages/frontend-core/src/api/app.js | 17 +- packages/frontend-core/src/api/auth.js | 166 ++++-------------- packages/frontend-core/src/api/configs.js | 86 +++++++++ packages/frontend-core/src/api/index.js | 6 + packages/frontend-core/src/api/other.js | 19 ++ packages/frontend-core/src/api/templates.js | 9 + packages/frontend-core/src/api/user.js | 129 ++++++++++++++ 42 files changed, 740 insertions(+), 573 deletions(-) create mode 100644 packages/frontend-core/src/api/configs.js create mode 100644 packages/frontend-core/src/api/other.js create mode 100644 packages/frontend-core/src/api/user.js diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index 9b3a95d7f7..5524cb5991 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -109,9 +109,11 @@ export const getFrontendStore = () => { theme: { save: async theme => { const appId = get(store).appId - const metadata = { appId, theme } try { - await API.saveAppMetadata(metadata) + await API.saveAppMetadata({ + appId, + metadata: { theme }, + }) store.update(state => { state.theme = theme return state @@ -124,9 +126,11 @@ export const getFrontendStore = () => { customTheme: { save: async customTheme => { const appId = get(store).appId - const metadata = { appId, customTheme } try { - await API.saveAppMetadata(metadata) + await API.saveAppMetadata({ + appId, + metadata: { customTheme }, + }) store.update(state => { state.customTheme = customTheme return state diff --git a/packages/builder/src/components/feedback/NPSFeedbackForm.svelte b/packages/builder/src/components/feedback/NPSFeedbackForm.svelte index 4c5bb46c63..6a6e52ec74 100644 --- a/packages/builder/src/components/feedback/NPSFeedbackForm.svelte +++ b/packages/builder/src/components/feedback/NPSFeedbackForm.svelte @@ -13,6 +13,7 @@ Detail, Divider, Layout, + notifications, } from "@budibase/bbui" import { auth } from "stores/portal" @@ -45,20 +46,28 @@ improvements, comment, }) - auth.updateSelf({ - flags: { - feedbackSubmitted: true, - }, - }) + try { + auth.updateSelf({ + flags: { + feedbackSubmitted: true, + }, + }) + } catch (error) { + notifications.error("Error updating user") + } dispatch("complete") } function cancelFeedback() { - auth.updateSelf({ - flags: { - feedbackSubmitted: true, - }, - }) + try { + auth.updateSelf({ + flags: { + feedbackSubmitted: true, + }, + }) + } catch (error) { + notifications.error("Error updating user") + } dispatch("complete") } diff --git a/packages/builder/src/components/start/ChooseIconModal.svelte b/packages/builder/src/components/start/ChooseIconModal.svelte index 4efb679a51..b2f68c6ce7 100644 --- a/packages/builder/src/components/start/ChooseIconModal.svelte +++ b/packages/builder/src/components/start/ChooseIconModal.svelte @@ -1,5 +1,12 @@ diff --git a/packages/builder/src/components/start/CreateAppModal.svelte b/packages/builder/src/components/start/CreateAppModal.svelte index ebb24e9e2f..97e0fd5715 100644 --- a/packages/builder/src/components/start/CreateAppModal.svelte +++ b/packages/builder/src/components/start/CreateAppModal.svelte @@ -118,15 +118,18 @@ await auth.setInitInfo({}) $goto(`/builder/app/${createdApp.instance._id}`) } catch (error) { - console.error(error) - notifications.error(error) + notifications.error("Error creating app") submitting = false } } async function onCancel() { template = null - await auth.setInitInfo({}) + try { + await auth.setInitInfo({}) + } catch (error) { + notifications.error("Error setting init info") + } } diff --git a/packages/builder/src/components/start/UpdateAppModal.svelte b/packages/builder/src/components/start/UpdateAppModal.svelte index 432b13c7c3..508a0723b1 100644 --- a/packages/builder/src/components/start/UpdateAppModal.svelte +++ b/packages/builder/src/components/start/UpdateAppModal.svelte @@ -80,8 +80,7 @@ await apps.update(app.instance._id, { name: $values.name.trim() }) hide() } catch (error) { - console.error(error) - notifications.error(error) + notifications.error("Error updating app") } } diff --git a/packages/builder/src/pages/builder/_layout.svelte b/packages/builder/src/pages/builder/_layout.svelte index 31f1d18d56..10779b2491 100644 --- a/packages/builder/src/pages/builder/_layout.svelte +++ b/packages/builder/src/pages/builder/_layout.svelte @@ -3,6 +3,7 @@ import { admin, auth } from "stores/portal" import { onMount } from "svelte" import { CookieUtils, Constants } from "@budibase/frontend-core" + import { notifications } from "@budibase/bbui" let loaded = false @@ -41,9 +42,12 @@ if (user.tenantId !== urlTenantId) { // user should not be here - play it safe and log them out - await auth.logout() - await auth.setOrganisation(null) - return + try { + await auth.logout() + await auth.setOrganisation(null) + } catch (error) { + // Swallow error and do nothing + } } } else { // no user - set the org according to the url @@ -52,17 +56,18 @@ } onMount(async () => { - if ($params["?template"]) { - await auth.setInitInfo({ init_template: $params["?template"] }) + try { + if ($params["?template"]) { + await auth.setInitInfo({ init_template: $params["?template"] }) + } + await auth.checkAuth() + await admin.init() + if (useAccountPortal && multiTenancyEnabled) { + await validateTenantId() + } + } catch (error) { + notifications.error("Error initialising builder") } - - await auth.checkAuth() - await admin.init() - - if (useAccountPortal && multiTenancyEnabled) { - await validateTenantId() - } - loaded = true }) diff --git a/packages/builder/src/pages/builder/admin/index.svelte b/packages/builder/src/pages/builder/admin/index.svelte index d42197a130..99731b8285 100644 --- a/packages/builder/src/pages/builder/admin/index.svelte +++ b/packages/builder/src/pages/builder/admin/index.svelte @@ -31,17 +31,21 @@ adminUser.tenantId = tenantId // Save the admin user await API.createAdminUser(adminUser) - notifications.success(`Admin user created`) + notifications.success("Admin user created") await admin.init() $goto("../portal") - } catch (err) { - notifications.error(`Failed to create admin user: ${err}`) + } catch (error) { + notifications.error("Failed to create admin user") } } onMount(async () => { if (!cloud) { - await admin.checkImportComplete() + try { + await admin.checkImportComplete() + } catch (error) { + notifications.error("Error checking import status") + } } }) diff --git a/packages/builder/src/pages/builder/apps/index.svelte b/packages/builder/src/pages/builder/apps/index.svelte index aafc28cd92..b4655d8f04 100644 --- a/packages/builder/src/pages/builder/apps/index.svelte +++ b/packages/builder/src/pages/builder/apps/index.svelte @@ -10,6 +10,7 @@ Icon, Body, Modal, + notifications, } from "@budibase/bbui" import { onMount } from "svelte" import { apps, organisation, auth, admin } from "stores/portal" @@ -26,8 +27,12 @@ let changePasswordModal onMount(async () => { - await organisation.init() - await apps.load() + try { + await organisation.init() + await apps.load() + } catch (error) { + notifications.error("Error loading apps") + } loaded = true }) @@ -44,6 +49,14 @@ function getUrl(app) { return !isCloud ? `/app/${encodeURIComponent(app.name)}` : `/${app.prodId}` } + + const logout = async () => { + try { + await auth.logout() + } catch (error) { + // Swallow error and do nothing + } + } {#if $auth.user && loaded} @@ -79,7 +92,7 @@ Open developer mode {/if} - Log out + Log out diff --git a/packages/builder/src/pages/builder/auth/_components/OIDCButton.svelte b/packages/builder/src/pages/builder/auth/_components/OIDCButton.svelte index bae68b6548..27f5bde186 100644 --- a/packages/builder/src/pages/builder/auth/_components/OIDCButton.svelte +++ b/packages/builder/src/pages/builder/auth/_components/OIDCButton.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/pages/builder/auth/index.svelte b/packages/builder/src/pages/builder/auth/index.svelte index a2a02e65c1..72b3a8c7cf 100644 --- a/packages/builder/src/pages/builder/auth/index.svelte +++ b/packages/builder/src/pages/builder/auth/index.svelte @@ -2,6 +2,7 @@ import { redirect } from "@roxi/routify" import { auth, admin } from "stores/portal" import { onMount } from "svelte" + import { notifications } from "@budibase/bbui" $: tenantSet = $auth.tenantSet $: multiTenancyEnabled = $admin.multiTenancy @@ -17,8 +18,12 @@ } onMount(async () => { - await admin.init() - await auth.checkQueryString() + try { + await admin.init() + await auth.checkQueryString() + } catch (error) { + notifications.error("Error getting checklist") + } loaded = true }) diff --git a/packages/builder/src/pages/builder/auth/login.svelte b/packages/builder/src/pages/builder/auth/login.svelte index 7a13164c51..d9151b4342 100644 --- a/packages/builder/src/pages/builder/auth/login.svelte +++ b/packages/builder/src/pages/builder/auth/login.svelte @@ -31,7 +31,6 @@ username, password, }) - if ($auth?.user?.forceResetPassword) { $goto("./reset") } else { @@ -39,8 +38,7 @@ $goto("../portal") } } catch (err) { - console.error(err) - notifications.error(err.message ? err.message : "Invalid Credentials") + notifications.error(err.message ? err.message : "Invalid credentials") } } @@ -49,7 +47,11 @@ } onMount(async () => { - await organisation.init() + try { + await organisation.init() + } catch (error) { + notifications.error("Error getting org config") + } loaded = true }) diff --git a/packages/builder/src/pages/builder/auth/org.svelte b/packages/builder/src/pages/builder/auth/org.svelte index 5a484b6c93..8fd94463d9 100644 --- a/packages/builder/src/pages/builder/auth/org.svelte +++ b/packages/builder/src/pages/builder/auth/org.svelte @@ -1,5 +1,13 @@ diff --git a/packages/builder/src/pages/builder/invite/index.svelte b/packages/builder/src/pages/builder/invite/index.svelte index ddf888ad73..c4745d8737 100644 --- a/packages/builder/src/pages/builder/invite/index.svelte +++ b/packages/builder/src/pages/builder/invite/index.svelte @@ -10,14 +10,11 @@ async function acceptInvite() { try { - const res = await users.acceptInvite(inviteCode, password) - if (!res) { - throw new Error(res.message) - } - notifications.success(`User created.`) + await users.acceptInvite(inviteCode, password) + notifications.success("Invitation accepted successfully") $goto("../auth/login") - } catch (err) { - notifications.error(err) + } catch (error) { + notifications.error("Error accepting invitation") } } diff --git a/packages/builder/src/pages/builder/portal/_layout.svelte b/packages/builder/src/pages/builder/portal/_layout.svelte index 8fca18d29d..f4679647ff 100644 --- a/packages/builder/src/pages/builder/portal/_layout.svelte +++ b/packages/builder/src/pages/builder/portal/_layout.svelte @@ -10,6 +10,7 @@ MenuItem, Modal, clickOutside, + notifications, } from "@budibase/bbui" import ConfigChecklist from "components/common/ConfigChecklist.svelte" import { organisation, auth } from "stores/portal" @@ -78,6 +79,14 @@ return menu } + const logout = async () => { + try { + await auth.logout() + } catch (error) { + // Swallow error and do nothing + } + } + const showMobileMenu = () => (mobileMenuVisible = true) const hideMobileMenu = () => (mobileMenuVisible = false) @@ -87,7 +96,11 @@ if (!$auth.user?.builder?.global) { $redirect("../") } else { - await organisation.init() + try { + await organisation.init() + } catch (error) { + notifications.error("Error getting org config") + } loaded = true } } @@ -158,7 +171,7 @@ $goto("../apps")}> Close developer mode - Log out + Log out diff --git a/packages/builder/src/pages/builder/portal/apps/index.svelte b/packages/builder/src/pages/builder/portal/apps/index.svelte index ec111e046e..e71dc325fb 100644 --- a/packages/builder/src/pages/builder/portal/apps/index.svelte +++ b/packages/builder/src/pages/builder/portal/apps/index.svelte @@ -139,7 +139,6 @@ $goto(`/builder/app/${createdApp.instance._id}`) } catch (error) { notifications.error("Error creating app") - console.error(error) } } @@ -248,17 +247,23 @@ } onMount(async () => { - await apps.load() - await templates.load() - if ($templates?.length === 0) { - notifications.error("There was a problem loading quick start templates.") - } - // if the portal is loaded from an external URL with a template param - const initInfo = await auth.getInitInfo() - if (initInfo?.init_template) { - creatingFromTemplate = true - createAppFromTemplateUrl(initInfo.init_template) - return + try { + await apps.load() + await templates.load() + if ($templates?.length === 0) { + notifications.error( + "There was a problem loading quick start templates." + ) + } + // If the portal is loaded from an external URL with a template param + const initInfo = await auth.getInitInfo() + if (initInfo?.init_template) { + creatingFromTemplate = true + createAppFromTemplateUrl(initInfo.init_template) + return + } + } catch (error) { + notifications.error("Error loading apps and templates") } loaded = true }) diff --git a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte index bdbf884c99..b001f02fe9 100644 --- a/packages/builder/src/pages/builder/portal/manage/auth/index.svelte +++ b/packages/builder/src/pages/builder/portal/manage/auth/index.svelte @@ -207,15 +207,18 @@ notifications.success(`Settings saved`) analytics.captureEvent(Events.SSO.SAVED) }) - .catch(error => { - notifications.error(`Failed to update auth settings`) - console.error(error.message) + .catch(() => { + notifications.error("Failed to update auth settings") }) } } onMount(async () => { - await organisation.init() + try { + await organisation.init() + } catch (error) { + notifications.error("Error getting org config") + } // Fetch Google config let googleDoc diff --git a/packages/builder/src/pages/builder/portal/manage/email/[template].svelte b/packages/builder/src/pages/builder/portal/manage/email/[template].svelte index cc00f3d798..33ecca2a10 100644 --- a/packages/builder/src/pages/builder/portal/manage/email/[template].svelte +++ b/packages/builder/src/pages/builder/portal/manage/email/[template].svelte @@ -36,9 +36,9 @@ try { // Save your template config await email.templates.save(selectedTemplate) - notifications.success(`Template saved.`) - } catch (err) { - notifications.error(`Failed to update template settings. ${err}`) + notifications.success("Template saved") + } catch (error) { + notifications.error("Failed to update template settings") } } diff --git a/packages/builder/src/pages/builder/portal/manage/email/_layout.svelte b/packages/builder/src/pages/builder/portal/manage/email/_layout.svelte index 410a7d4ff2..e371c2daae 100644 --- a/packages/builder/src/pages/builder/portal/manage/email/_layout.svelte +++ b/packages/builder/src/pages/builder/portal/manage/email/_layout.svelte @@ -1,7 +1,15 @@ diff --git a/packages/builder/src/pages/builder/portal/manage/users/[userId].svelte b/packages/builder/src/pages/builder/portal/manage/users/[userId].svelte index 549d0e4334..a8cb340465 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/[userId].svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/[userId].svelte @@ -64,31 +64,43 @@ const apps = fetchData(`/api/global/roles`) async function deleteUser() { - const res = await users.delete(userId) - if (res.status === 200) { + try { + await users.delete(userId) notifications.success(`User ${$userFetch?.data?.email} deleted.`) $goto("./") - } else { - notifications.error(res?.message ? res.message : "Failed to delete user.") + } catch (error) { + notifications.error("Error deleting user") } } let toggleDisabled = false async function updateUserFirstName(evt) { - await users.save({ ...$userFetch?.data, firstName: evt.target.value }) - await userFetch.refresh() + try { + await users.save({ ...$userFetch?.data, firstName: evt.target.value }) + await userFetch.refresh() + } catch (error) { + notifications.error("Error updating user") + } } async function updateUserLastName(evt) { - await users.save({ ...$userFetch?.data, lastName: evt.target.value }) - await userFetch.refresh() + try { + await users.save({ ...$userFetch?.data, lastName: evt.target.value }) + await userFetch.refresh() + } catch (error) { + notifications.error("Error updating user") + } } async function toggleFlag(flagName, detail) { toggleDisabled = true - await users.save({ ...$userFetch?.data, [flagName]: { global: detail } }) - await userFetch.refresh() + try { + await users.save({ ...$userFetch?.data, [flagName]: { global: detail } }) + await userFetch.refresh() + } catch (error) { + notifications.error("Error updating user") + } toggleDisabled = false } diff --git a/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte b/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte index 25a69af1c8..0255784a7b 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte @@ -21,12 +21,12 @@ const [email, error, touched] = createValidationStore("", emailValidator) async function createUserFlow() { - const res = await users.invite({ email: $email, builder, admin }) - if (res.status) { - notifications.error(res.message) - } else { + try { + const res = await users.invite({ email: $email, builder, admin }) notifications.success(res.message) analytics.captureEvent(Events.USER.INVITE, { type: selected }) + } catch (error) { + notifications.error("Error inviting user") } } diff --git a/packages/builder/src/pages/builder/portal/manage/users/_components/BasicOnboardingModal.svelte b/packages/builder/src/pages/builder/portal/manage/users/_components/BasicOnboardingModal.svelte index ff958d542b..29e2d56ed0 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/_components/BasicOnboardingModal.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/_components/BasicOnboardingModal.svelte @@ -16,17 +16,17 @@ admin = false async function createUser() { - const res = await users.create({ - email: $email, - password, - builder, - admin, - forceResetPassword: true, - }) - if (res.status) { - notifications.error(res.message) - } else { + try { + await users.create({ + email: $email, + password, + builder, + admin, + forceResetPassword: true, + }) notifications.success("Successfully created user") + } catch (error) { + notifications.error("Error creating user") } } diff --git a/packages/builder/src/pages/builder/portal/manage/users/_components/ForceResetPasswordModal.svelte b/packages/builder/src/pages/builder/portal/manage/users/_components/ForceResetPasswordModal.svelte index 6468498df8..a380f0aa65 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/_components/ForceResetPasswordModal.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/_components/ForceResetPasswordModal.svelte @@ -10,16 +10,16 @@ const password = Math.random().toString(36).substr(2, 20) async function resetPassword() { - const res = await users.save({ - ...user, - password, - forceResetPassword: true, - }) - if (res.status) { - notifications.error(res.message) - } else { - notifications.success("Password reset.") + try { + await users.save({ + ...user, + password, + forceResetPassword: true, + }) + notifications.success("Password reset successfully") dispatch("update") + } catch (error) { + notifications.error("Error resetting password") } } diff --git a/packages/builder/src/pages/builder/portal/manage/users/_components/UpdateRolesModal.svelte b/packages/builder/src/pages/builder/portal/manage/users/_components/UpdateRolesModal.svelte index afa4c84f0e..5a60bfdff8 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/_components/UpdateRolesModal.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/_components/UpdateRolesModal.svelte @@ -18,33 +18,31 @@ let selectedRole = user?.roles?.[app?._id] async function updateUserRoles() { - let res - if (selectedRole === NO_ACCESS) { - // remove the user role - const filteredRoles = { ...user.roles } - delete filteredRoles[app?._id] - res = await users.save({ - ...user, - roles: { - ...filteredRoles, - }, - }) - } else { - // add the user role - res = await users.save({ - ...user, - roles: { - ...user.roles, - [app._id]: selectedRole, - }, - }) - } - - if (res.status === 400) { - notifications.error("Failed to update role") - } else { + try { + if (selectedRole === NO_ACCESS) { + // Remove the user role + const filteredRoles = { ...user.roles } + delete filteredRoles[app?._id] + await users.save({ + ...user, + roles: { + ...filteredRoles, + }, + }) + } else { + // Add the user role + await users.save({ + ...user, + roles: { + ...user.roles, + [app._id]: selectedRole, + }, + }) + } notifications.success("Role updated") dispatch("update") + } catch (error) { + notifications.error("Failed to update role") } } diff --git a/packages/builder/src/pages/builder/portal/manage/users/index.svelte b/packages/builder/src/pages/builder/portal/manage/users/index.svelte index 124115a486..61192063cc 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/index.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/index.svelte @@ -11,13 +11,13 @@ Label, Layout, Modal, + notifications, } from "@budibase/bbui" import TagsRenderer from "./_components/TagsTableRenderer.svelte" import AddUserModal from "./_components/AddUserModal.svelte" import BasicOnboardingModal from "./_components/BasicOnboardingModal.svelte" import { users } from "stores/portal" - - users.init() + import { onMount } from "svelte" const schema = { email: {}, @@ -47,6 +47,14 @@ createUserModal.hide() basicOnboardingModal.show() } + + onMount(async () => { + try { + await users.init() + } catch (error) { + notifications.error("Error getting user list") + } + }) diff --git a/packages/builder/src/pages/builder/portal/settings/organisation.svelte b/packages/builder/src/pages/builder/portal/settings/organisation.svelte index c9086b2b45..7094a0af01 100644 --- a/packages/builder/src/pages/builder/portal/settings/organisation.svelte +++ b/packages/builder/src/pages/builder/portal/settings/organisation.svelte @@ -44,24 +44,28 @@ async function saveConfig() { loading = true - // Upload logo if required - if ($values.logo && !$values.logo.url) { - await uploadLogo($values.logo) - await organisation.init() - } + try { + // Upload logo if required + if ($values.logo && !$values.logo.url) { + await uploadLogo($values.logo) + await organisation.init() + } - const config = { - company: $values.company ?? "", - platformUrl: $values.platformUrl ?? "", - } + const config = { + company: $values.company ?? "", + platformUrl: $values.platformUrl ?? "", + } - // Remove logo if required - if (!$values.logo) { - config.logoUrl = "" - } + // Remove logo if required + if (!$values.logo) { + config.logoUrl = "" + } - // Update settings - await organisation.save(config) + // Update settings + await organisation.save(config) + } catch (error) { + notifications.error("Error saving org config") + } loading = false } diff --git a/packages/builder/src/stores/portal/admin.js b/packages/builder/src/stores/portal/admin.js index d97105fd46..dc68c43cc5 100644 --- a/packages/builder/src/stores/portal/admin.js +++ b/packages/builder/src/stores/portal/admin.js @@ -23,65 +23,37 @@ export function createAdminStore() { const admin = writable(DEFAULT_CONFIG) async function init() { - try { - const tenantId = get(auth).tenantId - const checklist = await API.getChecklist(tenantId) - const totalSteps = Object.keys(checklist).length - const completedSteps = Object.values(checklist).filter( - x => x?.checked - ).length - await getEnvironment() - admin.update(store => { - store.loaded = true - store.checklist = checklist - store.onboardingProgress = (completedSteps / totalSteps) * 100 - return store - }) - } catch (error) { - admin.update(store => { - store.checklist = null - return store - }) - } + const tenantId = get(auth).tenantId + const checklist = await API.getChecklist(tenantId) + const totalSteps = Object.keys(checklist).length + const completedSteps = Object.values(checklist).filter( + x => x?.checked + ).length + await getEnvironment() + admin.update(store => { + store.loaded = true + store.checklist = checklist + store.onboardingProgress = (completedSteps / totalSteps) * 100 + return store + }) } async function checkImportComplete() { - try { - const result = await API.checkImportComplete() - admin.update(store => { - store.importComplete = result ? result.imported : false - return store - }) - } catch (error) { - admin.update(store => { - store.importComplete = false - return store - }) - } + const result = await API.checkImportComplete() + admin.update(store => { + store.importComplete = result ? result.imported : false + return store + }) } async function getEnvironment() { - let multiTenancyEnabled = false - let cloud = false - let disableAccountPortal = false - let accountPortalUrl = "" - let isDev = false - try { - const environment = await API.getEnvironment() - multiTenancyEnabled = environment.multiTenancy - cloud = environment.cloud - disableAccountPortal = environment.disableAccountPortal - accountPortalUrl = environment.accountPortalUrl - isDev = environment.isDev - } catch (err) { - // Just let it stay disabled - } + const environment = await API.getEnvironment() admin.update(store => { - store.multiTenancy = multiTenancyEnabled - store.cloud = cloud - store.disableAccountPortal = disableAccountPortal - store.accountPortalUrl = accountPortalUrl - store.isDev = isDev + store.multiTenancy = environment.multiTenancy + store.cloud = environment.cloud + store.disableAccountPortal = environment.disableAccountPortal + store.accountPortalUrl = environment.accountPortalUrl + store.isDev = environment.isDev return store }) } diff --git a/packages/builder/src/stores/portal/apps.js b/packages/builder/src/stores/portal/apps.js index de944c057d..b8fb8c5670 100644 --- a/packages/builder/src/stores/portal/apps.js +++ b/packages/builder/src/stores/portal/apps.js @@ -1,7 +1,6 @@ import { writable } from "svelte/store" -import { get } from "builderStore/api" import { AppStatus } from "../../constants" -import api from "../../builderStore/api" +import { API } from "api" const extractAppId = id => { const split = id?.split("_") || [] @@ -12,77 +11,67 @@ export function createAppStore() { const store = writable([]) async function load() { - try { - const res = await get(`/api/applications?status=all`) - const json = await res.json() - if (res.ok && Array.isArray(json)) { - // Merge apps into one sensible list - let appMap = {} - let devApps = json.filter(app => app.status === AppStatus.DEV) - let deployedApps = json.filter(app => app.status === AppStatus.DEPLOYED) + const json = await API.getApps() + if (Array.isArray(json)) { + // Merge apps into one sensible list + let appMap = {} + let devApps = json.filter(app => app.status === AppStatus.DEV) + let deployedApps = json.filter(app => app.status === AppStatus.DEPLOYED) - // First append all dev app version - devApps.forEach(app => { - const id = extractAppId(app.appId) - appMap[id] = { - ...app, - devId: app.appId, - devRev: app._rev, - } - }) + // First append all dev app version + devApps.forEach(app => { + const id = extractAppId(app.appId) + appMap[id] = { + ...app, + devId: app.appId, + devRev: app._rev, + } + }) - // Then merge with all prod app versions - deployedApps.forEach(app => { - const id = extractAppId(app.appId) + // Then merge with all prod app versions + deployedApps.forEach(app => { + const id = extractAppId(app.appId) - // Skip any deployed apps which don't have a dev counterpart - if (!appMap[id]) { - return - } + // Skip any deployed apps which don't have a dev counterpart + if (!appMap[id]) { + return + } - appMap[id] = { - ...appMap[id], - ...app, - prodId: app.appId, - prodRev: app._rev, - } - }) + appMap[id] = { + ...appMap[id], + ...app, + prodId: app.appId, + prodRev: app._rev, + } + }) - // Transform into an array and clean up - const apps = Object.values(appMap) - apps.forEach(app => { - app.appId = extractAppId(app.devId) - delete app._id - delete app._rev - }) - store.set(apps) - } else { - store.set([]) - } - return json - } catch (error) { + // Transform into an array and clean up + const apps = Object.values(appMap) + apps.forEach(app => { + app.appId = extractAppId(app.devId) + delete app._id + delete app._rev + }) + store.set(apps) + } else { store.set([]) } } async function update(appId, value) { - console.log({ value }) - const response = await api.put(`/api/applications/${appId}`, { ...value }) - if (response.status === 200) { - store.update(state => { - const updatedAppIndex = state.findIndex( - app => app.instance._id === appId - ) - if (updatedAppIndex !== -1) { - let updatedApp = state[updatedAppIndex] - updatedApp = { ...updatedApp, ...value } - state.apps = state.splice(updatedAppIndex, 1, updatedApp) - } - return state - }) - } else { - throw new Error("Error updating name") - } + await API.saveAppMetadata({ + appId, + metadata: value, + }) + store.update(state => { + const updatedAppIndex = state.findIndex(app => app.instance._id === appId) + if (updatedAppIndex !== -1) { + let updatedApp = state[updatedAppIndex] + updatedApp = { ...updatedApp, ...value } + state.apps = state.splice(updatedAppIndex, 1, updatedApp) + } + return state + }) } return { diff --git a/packages/builder/src/stores/portal/auth.js b/packages/builder/src/stores/portal/auth.js index bdd4d95915..3895b57e82 100644 --- a/packages/builder/src/stores/portal/auth.js +++ b/packages/builder/src/stores/portal/auth.js @@ -1,5 +1,5 @@ import { derived, writable, get } from "svelte/store" -import api from "../../builderStore/api" +import { API } from "api" import { admin } from "stores/portal" import analytics from "analytics" @@ -83,7 +83,7 @@ export function createAuthStore() { } async function setInitInfo(info) { - await api.post(`/api/global/auth/init`, info) + await API.setInitInfo(info) auth.update(store => { store.initInfo = info return store @@ -99,13 +99,12 @@ export function createAuthStore() { } async function getInitInfo() { - const response = await api.get(`/api/global/auth/init`) - const json = response.json() + const info = await API.getInitInfo() auth.update(store => { - store.initInfo = json + store.initInfo = info return store }) - return json + return info } return { @@ -124,77 +123,43 @@ export function createAuthStore() { await setOrganisation(tenantId) }, checkAuth: async () => { - const response = await api.get("/api/global/users/self") - if (response.status !== 200) { - setUser(null) - } else { - const json = await response.json() - setUser(json) - } + const user = await API.fetchBuilderSelf() + setUser(user) }, login: async creds => { const tenantId = get(store).tenantId - const response = await api.post( - `/api/global/auth/${tenantId}/login`, - creds - ) - const json = await response.json() - if (response.status === 200) { - setUser(json.user) - } else { - throw new Error(json.message ? json.message : "Invalid credentials") - } - return json + const response = await API.logIn({ + username: creds.username, + password: creds.password, + tenantId, + }) + setUser(response.user) }, logout: async () => { - const response = await api.post(`/api/global/auth/logout`) - if (response.status !== 200) { - throw "Unable to create logout" - } - await response.json() + await API.logOut() await setInitInfo({}) setUser(null) setPostLogout() }, updateSelf: async fields => { const newUser = { ...get(auth).user, ...fields } - const response = await api.post("/api/global/users/self", newUser) - if (response.status === 200) { - setUser(newUser) - } else { - throw "Unable to update user details" - } + await API.updateSelf(newUser) + setUser(newUser) }, forgotPassword: async email => { const tenantId = get(store).tenantId - const response = await api.post(`/api/global/auth/${tenantId}/reset`, { + await API.requestForgotPassword({ + tenantId, email, }) - if (response.status !== 200) { - throw "Unable to send email with reset link" - } - await response.json() }, - resetPassword: async (password, code) => { + resetPassword: async (password, resetCode) => { const tenantId = get(store).tenantId - const response = await api.post( - `/api/global/auth/${tenantId}/reset/update`, - { - password, - resetCode: code, - } - ) - if (response.status !== 200) { - throw "Unable to reset password" - } - await response.json() - }, - createUser: async user => { - const response = await api.post(`/api/global/users`, user) - if (response.status !== 200) { - throw "Unable to create user" - } - await response.json() + await API.resetPassword({ + tenantId, + password, + resetCode, + }) }, } } diff --git a/packages/builder/src/stores/portal/email.js b/packages/builder/src/stores/portal/email.js index 5bef63701f..2e222d34c4 100644 --- a/packages/builder/src/stores/portal/email.js +++ b/packages/builder/src/stores/portal/email.js @@ -1,6 +1,5 @@ import { writable } from "svelte/store" import { API } from "api" -import { notifications } from "@budibase/bbui" export function createEmailStore() { const store = writable({}) @@ -9,35 +8,26 @@ export function createEmailStore() { subscribe: store.subscribe, templates: { fetch: async () => { - try { - // fetch the email template definitions and templates - const definitions = await API.getEmailTemplateDefinitions() - const templates = await API.getEmailTemplates() - store.set({ - definitions, - templates, - }) - } catch (error) { - notifications.error("Error fetching email templates") - store.set({}) - } + // Fetch the email template definitions and templates + const definitions = await API.getEmailTemplateDefinitions() + const templates = await API.getEmailTemplates() + store.set({ + definitions, + templates, + }) }, save: async template => { - try { - // Save your template config - const savedTemplate = await API.saveEmailTemplate(template) - template._rev = savedTemplate._rev - template._id = savedTemplate._id - store.update(state => { - const currentIdx = state.templates.findIndex( - template => template.purpose === savedTemplate.purpose - ) - state.templates.splice(currentIdx, 1, template) - return state - }) - } catch (error) { - notifications.error("Error saving email template") - } + // Save your template config + const savedTemplate = await API.saveEmailTemplate(template) + template._rev = savedTemplate._rev + template._id = savedTemplate._id + store.update(state => { + const currentIdx = state.templates.findIndex( + template => template.purpose === savedTemplate.purpose + ) + state.templates.splice(currentIdx, 1, template) + return state + }) }, }, } diff --git a/packages/builder/src/stores/portal/oidc.js b/packages/builder/src/stores/portal/oidc.js index 751988bff6..3a4b954753 100644 --- a/packages/builder/src/stores/portal/oidc.js +++ b/packages/builder/src/stores/portal/oidc.js @@ -11,10 +11,11 @@ const OIDC_CONFIG = { export function createOidcStore() { const store = writable(OIDC_CONFIG) const { set, subscribe } = store - - async function init() { - const tenantId = get(auth).tenantId - try { + return { + subscribe, + set, + init: async () => { + const tenantId = get(auth).tenantId const config = await API.getOIDCConfig(tenantId) if (Object.keys(config || {}).length) { // Just use the first config for now. @@ -23,15 +24,7 @@ export function createOidcStore() { } else { set(OIDC_CONFIG) } - } catch (error) { - set(OIDC_CONFIG) - } - } - - return { - subscribe, - set, - init, + }, } } diff --git a/packages/builder/src/stores/portal/organisation.js b/packages/builder/src/stores/portal/organisation.js index 21a110c54a..9709578fa2 100644 --- a/packages/builder/src/stores/portal/organisation.js +++ b/packages/builder/src/stores/portal/organisation.js @@ -1,5 +1,5 @@ import { writable, get } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" import { auth } from "stores/portal" const DEFAULT_CONFIG = { @@ -19,35 +19,23 @@ export function createOrganisationStore() { async function init() { const tenantId = get(auth).tenantId - const res = await api.get(`/api/global/configs/public?tenantId=${tenantId}`) - const json = await res.json() - - if (json.status === 400) { - set(DEFAULT_CONFIG) - } else { - set({ ...DEFAULT_CONFIG, ...json.config, _rev: json._rev }) - } + const tenant = await API.getTenantConfig(tenantId) + set({ ...DEFAULT_CONFIG, ...tenant.config, _rev: tenant._rev }) } async function save(config) { - // delete non-persisted fields + // Delete non-persisted fields const storeConfig = get(store) delete storeConfig.oidc delete storeConfig.google delete storeConfig.oidcCallbackUrl delete storeConfig.googleCallbackUrl - - const res = await api.post("/api/global/configs", { + await API.saveConfig({ type: "settings", config: { ...get(store), ...config }, _rev: get(store)._rev, }) - const json = await res.json() - if (json.status) { - return json - } await init() - return { status: 200 } } return { diff --git a/packages/builder/src/stores/portal/templates.js b/packages/builder/src/stores/portal/templates.js index b82ecd70e2..904e9cfa8e 100644 --- a/packages/builder/src/stores/portal/templates.js +++ b/packages/builder/src/stores/portal/templates.js @@ -1,18 +1,15 @@ import { writable } from "svelte/store" -import api from "builderStore/api" +import { API } from "api" export function templatesStore() { const { subscribe, set } = writable([]) - async function load() { - const response = await api.get("/api/templates?type=app") - const json = await response.json() - set(json) - } - return { subscribe, - load, + load: async () => { + const templates = await API.getAppTemplates() + set(templates) + }, } } diff --git a/packages/builder/src/stores/portal/users.js b/packages/builder/src/stores/portal/users.js index 9a3df120e0..cebf03d4c0 100644 --- a/packages/builder/src/stores/portal/users.js +++ b/packages/builder/src/stores/portal/users.js @@ -1,38 +1,28 @@ import { writable } from "svelte/store" -import api, { post } from "builderStore/api" +import { API } from "api" import { update } from "lodash" export function createUsersStore() { const { subscribe, set } = writable([]) async function init() { - const response = await api.get(`/api/global/users`) - const json = await response.json() - set(json) + const users = await API.getUsers() + set(users) } async function invite({ email, builder, admin }) { - const body = { email, userInfo: {} } - if (admin) { - body.userInfo.admin = { - global: true, - } - } - if (builder) { - body.userInfo.builder = { - global: true, - } - } - const response = await api.post(`/api/global/users/invite`, body) - return await response.json() + await API.inviteUser({ + email, + builder, + admin, + }) } async function acceptInvite(inviteCode, password) { - const response = await api.post("/api/global/users/invite/accept", { + await API.acceptInvite({ inviteCode, password, }) - return await response.json() } async function create({ @@ -56,29 +46,17 @@ export function createUsersStore() { if (admin) { body.admin = { global: true } } - const response = await api.post("/api/global/users", body) + await API.saveUser(body) await init() - return await response.json() } async function del(id) { - const response = await api.delete(`/api/global/users/${id}`) + await API.deleteUser(id) update(users => users.filter(user => user._id !== id)) - const json = await response.json() - return { - ...json, - status: response.status, - } } async function save(data) { - try { - const res = await post(`/api/global/users`, data) - return await res.json() - } catch (error) { - console.log(error) - return error - } + await API.saveUser(data) } return { diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index 543dcd58ee..1b0735be05 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -10,14 +10,12 @@ export const buildAppEndpoints = API => ({ /** * Saves and patches metadata about an app. + * @param appId the ID of the app to update * @param metadata the app metadata to save */ - saveAppMetadata: async metadata => { - if (!metadata?.appId) { - throw API.error("App metadata must have an appId set") - } + saveAppMetadata: async ({ appId, metadata }) => { return await API.put({ - url: `/api/applications/${metadata.appId}`, + url: `/api/applications/${appId}`, body: metadata, }) }, @@ -132,4 +130,13 @@ export const buildAppEndpoints = API => ({ url: `/api/applications/${appId}/sync`, }) }, + + /** + * Gets a list of apps. + */ + getApps: async () => { + return await API.get({ + url: "/api/applications?status=all", + }) + }, }) diff --git a/packages/frontend-core/src/api/auth.js b/packages/frontend-core/src/api/auth.js index 5f280b50da..9289d71239 100644 --- a/packages/frontend-core/src/api/auth.js +++ b/packages/frontend-core/src/api/auth.js @@ -1,18 +1,15 @@ export const buildAuthEndpoints = API => ({ /** - * Performs a log in request. + * Performs a login request. + * @param tenantId the ID of the tenant to log in to + * @param username the username (email) + * @param password the password */ - logIn: async ({ email, password }) => { - if (!email) { - return API.error("Please enter your email") - } - if (!password) { - return API.error("Please enter your password") - } + logIn: async ({ tenantId, username, password }) => { return await API.post({ - url: "/api/global/auth", + url: `/api/global/auth/${tenantId}/login`, body: { - username: email, + username, password, }, }) @@ -28,137 +25,52 @@ export const buildAuthEndpoints = API => ({ }, /** - * Fetches the currently logged in user object + * Sets initialisation info. + * @param info the info to set */ - fetchSelf: async () => { - return await API.get({ - url: "/api/self", - }) - }, - - /** - * Creates a user for an app. - * @param user the user to create - */ - createAppUser: async user => { + setInitInfo: async info => { return await API.post({ - url: "/api/users/metadata", - body: user, + url: "/api/global/auth/init", + body: info, }) }, /** - * Updates the current user metadata. - * @param metadata the metadata to save + * Gets the initialisation info. */ - updateOwnMetadata: async metadata => { + getInitInfo: async () => { + return await API.get({ + url: "/api/global/auth/init", + }) + }, + + /** + * Sends a password reset email. + * @param tenantId the ID of the tenant the user is in + * @param email the email address of the user + */ + requestForgotPassword: async ({ tenantId, email }) => { return await API.post({ - url: "/api/users/metadata/self", - body: metadata, + url: `/api/global/auth/${tenantId}/reset`, + body: { + email, + }, }) }, /** - * Creates an admin user. - * @param adminUser the admin user to create + * Resets a user's password. + * @param tenantId the ID of the tenant the user is in + * @param password the new password to set + * @param resetCode the reset code to authenticate the request */ - createAdminUser: async adminUser => { + resetPassword: async ({ tenantId, password, resetCode }) => { return await API.post({ - url: "/api/global/users/init", - body: adminUser, - }) - }, - - /** - * Saves a global config. - * @param config the config to save - */ - saveConfig: async config => { - return await API.post({ - url: "/api/global/configs", - body: config, - }) - }, - - /** - * Gets a global config of a certain type. - * @param type the type to fetch - */ - getConfig: async type => { - return await API.get({ - url: `/api/global/configs/${type}`, - }) - }, - - /** - * Gets the OIDC config for a certain tenant. - * @param tenantId the tenant ID to get the config for - */ - getOIDCConfig: async tenantId => { - return await API.get({ - url: `/api/global/configs/public/oidc?tenantId=${tenantId}`, - }) - }, - - /** - * Gets the checklist for a specific tenant. - * @param tenantId the tenant ID to get the checklist for - */ - getChecklist: async tenantId => { - return await API.get({ - url: `/api/global/configs/checklist?tenantId=${tenantId}`, - }) - }, - - /** - * TODO: find out what this is - */ - checkImportComplete: async () => { - return await API.get({ - url: "/api/cloud/import/complete", - }) - }, - - /** - * Gets the current environment details. - */ - getEnvironment: async () => { - return await API.get({ - url: "/api/system/environment", - }) - }, - - /** - * Updates the company logo for the environment. - * @param data the logo form data - */ - uploadLogo: async data => { - return await API.post({ - url: "/api/global/configs/upload/settings/logoUrl", - body: data, - json: false, - }) - }, - - /** - * Uploads a logo for an OIDC provider. - * @param name the name of the OIDC provider - * @param data the logo form data to upload - */ - uploadOIDCLogo: async ({ name, data }) => { - return await API.post({ - url: `/api/global/configs/upload/logos_oidc/${name}`, - body: data, - json: false, - }) - }, - - /** - * Gets the list of OIDC logos. - */ - getOIDCLogos: async () => { - return await API.get({ - url: "/api/global/configs/logos_oidc", + url: `/api/global/auth/${tenantId}/reset/update`, + body: { + password, + resetCode, + }, }) }, }) diff --git a/packages/frontend-core/src/api/configs.js b/packages/frontend-core/src/api/configs.js new file mode 100644 index 0000000000..9e320f7499 --- /dev/null +++ b/packages/frontend-core/src/api/configs.js @@ -0,0 +1,86 @@ +export const buildConfigEndpoints = API => ({ + /** + * Saves a global config. + * @param config the config to save + */ + saveConfig: async config => { + return await API.post({ + url: "/api/global/configs", + body: config, + }) + }, + + /** + * Gets a global config of a certain type. + * @param type the type to fetch + */ + getConfig: async type => { + return await API.get({ + url: `/api/global/configs/${type}`, + }) + }, + + /** + * Gets the config for a certain tenant. + * @param tenantId the tenant ID to get the config for + */ + getTenantConfig: async tenantId => { + return await API.get({ + url: `/api/global/configs/public?tenantId=${tenantId}`, + }) + }, + + /** + * Gets the OIDC config for a certain tenant. + * @param tenantId the tenant ID to get the config for + */ + getOIDCConfig: async tenantId => { + return await API.get({ + url: `/api/global/configs/public/oidc?tenantId=${tenantId}`, + }) + }, + + /** + * Gets the checklist for a specific tenant. + * @param tenantId the tenant ID to get the checklist for + */ + getChecklist: async tenantId => { + return await API.get({ + url: `/api/global/configs/checklist?tenantId=${tenantId}`, + }) + }, + + /** + * Updates the company logo for the environment. + * @param data the logo form data + */ + uploadLogo: async data => { + return await API.post({ + url: "/api/global/configs/upload/settings/logoUrl", + body: data, + json: false, + }) + }, + + /** + * Uploads a logo for an OIDC provider. + * @param name the name of the OIDC provider + * @param data the logo form data to upload + */ + uploadOIDCLogo: async ({ name, data }) => { + return await API.post({ + url: `/api/global/configs/upload/logos_oidc/${name}`, + body: data, + json: false, + }) + }, + + /** + * Gets the list of OIDC logos. + */ + getOIDCLogos: async () => { + return await API.get({ + url: "/api/global/configs/logos_oidc", + }) + }, +}) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 9511a946b4..973a1fbc2f 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -4,9 +4,11 @@ import { buildAppEndpoints } from "./app" import { buildAttachmentEndpoints } from "./attachments" import { buildAuthEndpoints } from "./auth" import { buildAutomationEndpoints } from "./automations" +import { buildConfigEndpoints } from "./configs" import { buildDatasourceEndpoints } from "./datasources" import { buildFlagEndpoints } from "./flags" import { buildHostingEndpoints } from "./hosting" +import { buildOtherEndpoints } from "./other" import { buildPermissionsEndpoints } from "./permissions" import { buildQueryEndpoints } from "./queries" import { buildRelationshipEndpoints } from "./relationships" @@ -16,6 +18,7 @@ import { buildRowEndpoints } from "./rows" import { buildScreenEndpoints } from "./screens" import { buildTableEndpoints } from "./tables" import { buildTemplateEndpoints } from "./templates" +import { buildUserEndpoints } from "./user" import { buildViewEndpoints } from "./views" const defaultAPIClientConfig = { @@ -189,9 +192,11 @@ export const createAPIClient = config => { ...buildAttachmentEndpoints(API), ...buildAuthEndpoints(API), ...buildAutomationEndpoints(API), + ...buildConfigEndpoints(API), ...buildDatasourceEndpoints(API), ...buildFlagEndpoints(API), ...buildHostingEndpoints(API), + ...buildOtherEndpoints(API), ...buildPermissionsEndpoints(API), ...buildQueryEndpoints(API), ...buildRelationshipEndpoints(API), @@ -201,6 +206,7 @@ export const createAPIClient = config => { ...buildScreenEndpoints(API), ...buildTableEndpoints(API), ...buildTemplateEndpoints(API), + ...buildUserEndpoints(API), ...buildViewEndpoints(API), } diff --git a/packages/frontend-core/src/api/other.js b/packages/frontend-core/src/api/other.js new file mode 100644 index 0000000000..b3481f1e27 --- /dev/null +++ b/packages/frontend-core/src/api/other.js @@ -0,0 +1,19 @@ +export const buildOtherEndpoints = API => ({ + /** + * TODO: find out what this is + */ + checkImportComplete: async () => { + return await API.get({ + url: "/api/cloud/import/complete", + }) + }, + + /** + * Gets the current environment details. + */ + getEnvironment: async () => { + return await API.get({ + url: "/api/system/environment", + }) + }, +}) diff --git a/packages/frontend-core/src/api/templates.js b/packages/frontend-core/src/api/templates.js index 7cd1d78d7b..720110fe5d 100644 --- a/packages/frontend-core/src/api/templates.js +++ b/packages/frontend-core/src/api/templates.js @@ -25,4 +25,13 @@ export const buildTemplateEndpoints = API => ({ }, }) }, + + /** + * Gets a list of app templates. + */ + getAppTemplates: async () => { + return await API.get({ + url: "/api/templates?type=app", + }) + }, }) diff --git a/packages/frontend-core/src/api/user.js b/packages/frontend-core/src/api/user.js new file mode 100644 index 0000000000..d1fe7f7251 --- /dev/null +++ b/packages/frontend-core/src/api/user.js @@ -0,0 +1,129 @@ +export const buildUserEndpoints = API => ({ + /** + * Fetches the currently logged-in user object. + * Used in client apps. + */ + fetchSelf: async () => { + return await API.get({ + url: "/api/self", + }) + }, + + /** + * Fetches the currently logged-in user object. + * Used in the builder. + */ + fetchBuilderSelf: async () => { + return await API.get({ + url: "/api/global/users/self", + }) + }, + + /** + * Gets a list of users in the current tenant. + */ + getUsers: async () => { + return await API.get({ + url: "/api/global/users", + }) + }, + + /** + * Creates a user for an app. + * @param user the user to create + */ + createAppUser: async user => { + return await API.post({ + url: "/api/users/metadata", + body: user, + }) + }, + + /** + * Updates the current user metadata. + * @param metadata the metadata to save + */ + updateOwnMetadata: async metadata => { + return await API.post({ + url: "/api/users/metadata/self", + body: metadata, + }) + }, + + /** + * Creates an admin user. + * @param adminUser the admin user to create + */ + createAdminUser: async adminUser => { + return await API.post({ + url: "/api/global/users/init", + body: adminUser, + }) + }, + + /** + * Updates the current logged-in user. + * @param user the new user object to save + */ + updateSelf: async user => { + return await API.post({ + url: "/api/global/users/self", + body: user, + }) + }, + + /** + * Creates or updates a user in the current tenant. + * @param user the new user to create + */ + saveUser: async user => { + return await API.post({ + url: "/api/global/users", + body: user, + }) + }, + + /** + * Deletes a user from the curernt tenant. + * @param userId the ID of the user to delete + */ + deleteUser: async userId => { + return await API.delete({ + url: `/api/global/users/${userId}`, + }) + }, + + /** + * Invites a user to the current tenant. + * @param email the email address to send the invitation to + * @param builder whether the user should be a global builder + * @param admin whether the user should be a global admin + */ + inviteUser: async ({ email, builder, admin }) => { + return await API.post({ + url: "/api/global/users/invite", + body: { + email, + userInfo: { + admin: admin ? { global: true } : undefined, + builder: builder ? { global: true } : undefined, + }, + }, + }) + }, + + /** + * Accepts an invitation to join the platform and creates a user. + * @param inviteCode the invite code sent in the email + * @param password the password for the newly created user + */ + acceptInvitation: async ({ inviteCode, password }) => { + return await API.post({ + url: "/api/global/users/invite/accept", + body: { + inviteCode, + password, + }, + }) + }, +}) From eeb18ac0871f3f8c599cabd21bc1b77996cf1594 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 14:39:32 +0000 Subject: [PATCH 26/63] Fix issue with table and ignore node_modules in frontend-core --- .../components/backend/DataTable/Table.svelte | 4 +- .../frontend-core/node_modules/lodash/LICENSE | 47 - .../node_modules/lodash/README.md | 39 - .../node_modules/lodash/_DataView.js | 7 - .../node_modules/lodash/_Hash.js | 32 - .../node_modules/lodash/_LazyWrapper.js | 28 - .../node_modules/lodash/_ListCache.js | 32 - .../node_modules/lodash/_LodashWrapper.js | 22 - .../frontend-core/node_modules/lodash/_Map.js | 7 - .../node_modules/lodash/_MapCache.js | 32 - .../node_modules/lodash/_Promise.js | 7 - .../frontend-core/node_modules/lodash/_Set.js | 7 - .../node_modules/lodash/_SetCache.js | 27 - .../node_modules/lodash/_Stack.js | 27 - .../node_modules/lodash/_Symbol.js | 6 - .../node_modules/lodash/_Uint8Array.js | 6 - .../node_modules/lodash/_WeakMap.js | 7 - .../node_modules/lodash/_apply.js | 21 - .../node_modules/lodash/_arrayAggregator.js | 22 - .../node_modules/lodash/_arrayEach.js | 22 - .../node_modules/lodash/_arrayEachRight.js | 21 - .../node_modules/lodash/_arrayEvery.js | 23 - .../node_modules/lodash/_arrayFilter.js | 25 - .../node_modules/lodash/_arrayIncludes.js | 17 - .../node_modules/lodash/_arrayIncludesWith.js | 22 - .../node_modules/lodash/_arrayLikeKeys.js | 49 - .../node_modules/lodash/_arrayMap.js | 21 - .../node_modules/lodash/_arrayPush.js | 20 - .../node_modules/lodash/_arrayReduce.js | 26 - .../node_modules/lodash/_arrayReduceRight.js | 24 - .../node_modules/lodash/_arraySample.js | 15 - .../node_modules/lodash/_arraySampleSize.js | 17 - .../node_modules/lodash/_arrayShuffle.js | 15 - .../node_modules/lodash/_arraySome.js | 23 - .../node_modules/lodash/_asciiSize.js | 12 - .../node_modules/lodash/_asciiToArray.js | 12 - .../node_modules/lodash/_asciiWords.js | 15 - .../node_modules/lodash/_assignMergeValue.js | 20 - .../node_modules/lodash/_assignValue.js | 28 - .../node_modules/lodash/_assocIndexOf.js | 21 - .../node_modules/lodash/_baseAggregator.js | 21 - .../node_modules/lodash/_baseAssign.js | 17 - .../node_modules/lodash/_baseAssignIn.js | 17 - .../node_modules/lodash/_baseAssignValue.js | 25 - .../node_modules/lodash/_baseAt.js | 23 - .../node_modules/lodash/_baseClamp.js | 22 - .../node_modules/lodash/_baseClone.js | 166 - .../node_modules/lodash/_baseConforms.js | 18 - .../node_modules/lodash/_baseConformsTo.js | 27 - .../node_modules/lodash/_baseCreate.js | 30 - .../node_modules/lodash/_baseDelay.js | 21 - .../node_modules/lodash/_baseDifference.js | 67 - .../node_modules/lodash/_baseEach.js | 14 - .../node_modules/lodash/_baseEachRight.js | 14 - .../node_modules/lodash/_baseEvery.js | 21 - .../node_modules/lodash/_baseExtremum.js | 32 - .../node_modules/lodash/_baseFill.js | 32 - .../node_modules/lodash/_baseFilter.js | 21 - .../node_modules/lodash/_baseFindIndex.js | 24 - .../node_modules/lodash/_baseFindKey.js | 23 - .../node_modules/lodash/_baseFlatten.js | 38 - .../node_modules/lodash/_baseFor.js | 16 - .../node_modules/lodash/_baseForOwn.js | 16 - .../node_modules/lodash/_baseForOwnRight.js | 16 - .../node_modules/lodash/_baseForRight.js | 15 - .../node_modules/lodash/_baseFunctions.js | 19 - .../node_modules/lodash/_baseGet.js | 24 - .../node_modules/lodash/_baseGetAllKeys.js | 20 - .../node_modules/lodash/_baseGetTag.js | 28 - .../node_modules/lodash/_baseGt.js | 14 - .../node_modules/lodash/_baseHas.js | 19 - .../node_modules/lodash/_baseHasIn.js | 13 - .../node_modules/lodash/_baseInRange.js | 18 - .../node_modules/lodash/_baseIndexOf.js | 20 - .../node_modules/lodash/_baseIndexOfWith.js | 23 - .../node_modules/lodash/_baseIntersection.js | 74 - .../node_modules/lodash/_baseInverter.js | 21 - .../node_modules/lodash/_baseInvoke.js | 24 - .../node_modules/lodash/_baseIsArguments.js | 18 - .../node_modules/lodash/_baseIsArrayBuffer.js | 17 - .../node_modules/lodash/_baseIsDate.js | 18 - .../node_modules/lodash/_baseIsEqual.js | 28 - .../node_modules/lodash/_baseIsEqualDeep.js | 83 - .../node_modules/lodash/_baseIsMap.js | 18 - .../node_modules/lodash/_baseIsMatch.js | 62 - .../node_modules/lodash/_baseIsNaN.js | 12 - .../node_modules/lodash/_baseIsNative.js | 47 - .../node_modules/lodash/_baseIsRegExp.js | 18 - .../node_modules/lodash/_baseIsSet.js | 18 - .../node_modules/lodash/_baseIsTypedArray.js | 60 - .../node_modules/lodash/_baseIteratee.js | 31 - .../node_modules/lodash/_baseKeys.js | 30 - .../node_modules/lodash/_baseKeysIn.js | 33 - .../node_modules/lodash/_baseLodash.js | 10 - .../node_modules/lodash/_baseLt.js | 14 - .../node_modules/lodash/_baseMap.js | 22 - .../node_modules/lodash/_baseMatches.js | 22 - .../lodash/_baseMatchesProperty.js | 33 - .../node_modules/lodash/_baseMean.js | 20 - .../node_modules/lodash/_baseMerge.js | 42 - .../node_modules/lodash/_baseMergeDeep.js | 94 - .../node_modules/lodash/_baseNth.js | 20 - .../node_modules/lodash/_baseOrderBy.js | 49 - .../node_modules/lodash/_basePick.js | 19 - .../node_modules/lodash/_basePickBy.js | 30 - .../node_modules/lodash/_baseProperty.js | 14 - .../node_modules/lodash/_basePropertyDeep.js | 16 - .../node_modules/lodash/_basePropertyOf.js | 14 - .../node_modules/lodash/_basePullAll.js | 51 - .../node_modules/lodash/_basePullAt.js | 37 - .../node_modules/lodash/_baseRandom.js | 18 - .../node_modules/lodash/_baseRange.js | 28 - .../node_modules/lodash/_baseReduce.js | 23 - .../node_modules/lodash/_baseRepeat.js | 35 - .../node_modules/lodash/_baseRest.js | 17 - .../node_modules/lodash/_baseSample.js | 15 - .../node_modules/lodash/_baseSampleSize.js | 18 - .../node_modules/lodash/_baseSet.js | 51 - .../node_modules/lodash/_baseSetData.js | 17 - .../node_modules/lodash/_baseSetToString.js | 22 - .../node_modules/lodash/_baseShuffle.js | 15 - .../node_modules/lodash/_baseSlice.js | 31 - .../node_modules/lodash/_baseSome.js | 22 - .../node_modules/lodash/_baseSortBy.js | 21 - .../node_modules/lodash/_baseSortedIndex.js | 42 - .../node_modules/lodash/_baseSortedIndexBy.js | 67 - .../node_modules/lodash/_baseSortedUniq.js | 30 - .../node_modules/lodash/_baseSum.js | 24 - .../node_modules/lodash/_baseTimes.js | 20 - .../node_modules/lodash/_baseToNumber.js | 24 - .../node_modules/lodash/_baseToPairs.js | 18 - .../node_modules/lodash/_baseToString.js | 37 - .../node_modules/lodash/_baseTrim.js | 19 - .../node_modules/lodash/_baseUnary.js | 14 - .../node_modules/lodash/_baseUniq.js | 72 - .../node_modules/lodash/_baseUnset.js | 20 - .../node_modules/lodash/_baseUpdate.js | 18 - .../node_modules/lodash/_baseValues.js | 19 - .../node_modules/lodash/_baseWhile.js | 26 - .../node_modules/lodash/_baseWrapperValue.js | 25 - .../node_modules/lodash/_baseXor.js | 36 - .../node_modules/lodash/_baseZipObject.js | 23 - .../node_modules/lodash/_cacheHas.js | 13 - .../lodash/_castArrayLikeObject.js | 14 - .../node_modules/lodash/_castFunction.js | 14 - .../node_modules/lodash/_castPath.js | 21 - .../node_modules/lodash/_castRest.js | 14 - .../node_modules/lodash/_castSlice.js | 18 - .../node_modules/lodash/_charsEndIndex.js | 19 - .../node_modules/lodash/_charsStartIndex.js | 20 - .../node_modules/lodash/_cloneArrayBuffer.js | 16 - .../node_modules/lodash/_cloneBuffer.js | 35 - .../node_modules/lodash/_cloneDataView.js | 16 - .../node_modules/lodash/_cloneRegExp.js | 17 - .../node_modules/lodash/_cloneSymbol.js | 18 - .../node_modules/lodash/_cloneTypedArray.js | 16 - .../node_modules/lodash/_compareAscending.js | 41 - .../node_modules/lodash/_compareMultiple.js | 44 - .../node_modules/lodash/_composeArgs.js | 39 - .../node_modules/lodash/_composeArgsRight.js | 41 - .../node_modules/lodash/_copyArray.js | 20 - .../node_modules/lodash/_copyObject.js | 40 - .../node_modules/lodash/_copySymbols.js | 16 - .../node_modules/lodash/_copySymbolsIn.js | 16 - .../node_modules/lodash/_coreJsData.js | 6 - .../node_modules/lodash/_countHolders.js | 21 - .../node_modules/lodash/_createAggregator.js | 23 - .../node_modules/lodash/_createAssigner.js | 37 - .../node_modules/lodash/_createBaseEach.js | 32 - .../node_modules/lodash/_createBaseFor.js | 25 - .../node_modules/lodash/_createBind.js | 28 - .../node_modules/lodash/_createCaseFirst.js | 33 - .../node_modules/lodash/_createCompounder.js | 24 - .../node_modules/lodash/_createCtor.js | 37 - .../node_modules/lodash/_createCurry.js | 46 - .../node_modules/lodash/_createFind.js | 25 - .../node_modules/lodash/_createFlow.js | 78 - .../node_modules/lodash/_createHybrid.js | 92 - .../node_modules/lodash/_createInverter.js | 17 - .../lodash/_createMathOperation.js | 38 - .../node_modules/lodash/_createOver.js | 27 - .../node_modules/lodash/_createPadding.js | 33 - .../node_modules/lodash/_createPartial.js | 43 - .../node_modules/lodash/_createRange.js | 30 - .../node_modules/lodash/_createRecurry.js | 56 - .../lodash/_createRelationalOperation.js | 20 - .../node_modules/lodash/_createRound.js | 35 - .../node_modules/lodash/_createSet.js | 19 - .../node_modules/lodash/_createToPairs.js | 30 - .../node_modules/lodash/_createWrap.js | 106 - .../lodash/_customDefaultsAssignIn.js | 29 - .../lodash/_customDefaultsMerge.js | 28 - .../node_modules/lodash/_customOmitClone.js | 16 - .../node_modules/lodash/_deburrLetter.js | 71 - .../node_modules/lodash/_defineProperty.js | 11 - .../node_modules/lodash/_equalArrays.js | 84 - .../node_modules/lodash/_equalByTag.js | 112 - .../node_modules/lodash/_equalObjects.js | 90 - .../node_modules/lodash/_escapeHtmlChar.js | 21 - .../node_modules/lodash/_escapeStringChar.js | 22 - .../node_modules/lodash/_flatRest.js | 16 - .../node_modules/lodash/_freeGlobal.js | 4 - .../node_modules/lodash/_getAllKeys.js | 16 - .../node_modules/lodash/_getAllKeysIn.js | 17 - .../node_modules/lodash/_getData.js | 15 - .../node_modules/lodash/_getFuncName.js | 31 - .../node_modules/lodash/_getHolder.js | 13 - .../node_modules/lodash/_getMapData.js | 18 - .../node_modules/lodash/_getMatchData.js | 24 - .../node_modules/lodash/_getNative.js | 17 - .../node_modules/lodash/_getPrototype.js | 6 - .../node_modules/lodash/_getRawTag.js | 46 - .../node_modules/lodash/_getSymbols.js | 30 - .../node_modules/lodash/_getSymbolsIn.js | 25 - .../node_modules/lodash/_getTag.js | 58 - .../node_modules/lodash/_getValue.js | 13 - .../node_modules/lodash/_getView.js | 33 - .../node_modules/lodash/_getWrapDetails.js | 17 - .../node_modules/lodash/_hasPath.js | 39 - .../node_modules/lodash/_hasUnicode.js | 26 - .../node_modules/lodash/_hasUnicodeWord.js | 15 - .../node_modules/lodash/_hashClear.js | 15 - .../node_modules/lodash/_hashDelete.js | 17 - .../node_modules/lodash/_hashGet.js | 30 - .../node_modules/lodash/_hashHas.js | 23 - .../node_modules/lodash/_hashSet.js | 23 - .../node_modules/lodash/_initCloneArray.js | 26 - .../node_modules/lodash/_initCloneByTag.js | 77 - .../node_modules/lodash/_initCloneObject.js | 18 - .../node_modules/lodash/_insertWrapDetails.js | 23 - .../node_modules/lodash/_isFlattenable.js | 20 - .../node_modules/lodash/_isIndex.js | 25 - .../node_modules/lodash/_isIterateeCall.js | 30 - .../node_modules/lodash/_isKey.js | 29 - .../node_modules/lodash/_isKeyable.js | 15 - .../node_modules/lodash/_isLaziable.js | 28 - .../node_modules/lodash/_isMaskable.js | 14 - .../node_modules/lodash/_isMasked.js | 20 - .../node_modules/lodash/_isPrototype.js | 18 - .../lodash/_isStrictComparable.js | 15 - .../node_modules/lodash/_iteratorToArray.js | 18 - .../node_modules/lodash/_lazyClone.js | 23 - .../node_modules/lodash/_lazyReverse.js | 23 - .../node_modules/lodash/_lazyValue.js | 69 - .../node_modules/lodash/_listCacheClear.js | 13 - .../node_modules/lodash/_listCacheDelete.js | 35 - .../node_modules/lodash/_listCacheGet.js | 19 - .../node_modules/lodash/_listCacheHas.js | 16 - .../node_modules/lodash/_listCacheSet.js | 26 - .../node_modules/lodash/_mapCacheClear.js | 21 - .../node_modules/lodash/_mapCacheDelete.js | 18 - .../node_modules/lodash/_mapCacheGet.js | 16 - .../node_modules/lodash/_mapCacheHas.js | 16 - .../node_modules/lodash/_mapCacheSet.js | 22 - .../node_modules/lodash/_mapToArray.js | 18 - .../lodash/_matchesStrictComparable.js | 20 - .../node_modules/lodash/_memoizeCapped.js | 26 - .../node_modules/lodash/_mergeData.js | 90 - .../node_modules/lodash/_metaMap.js | 6 - .../node_modules/lodash/_nativeCreate.js | 6 - .../node_modules/lodash/_nativeKeys.js | 6 - .../node_modules/lodash/_nativeKeysIn.js | 20 - .../node_modules/lodash/_nodeUtil.js | 30 - .../node_modules/lodash/_objectToString.js | 22 - .../node_modules/lodash/_overArg.js | 15 - .../node_modules/lodash/_overRest.js | 36 - .../node_modules/lodash/_parent.js | 16 - .../node_modules/lodash/_reEscape.js | 4 - .../node_modules/lodash/_reEvaluate.js | 4 - .../node_modules/lodash/_reInterpolate.js | 4 - .../node_modules/lodash/_realNames.js | 4 - .../node_modules/lodash/_reorder.js | 29 - .../node_modules/lodash/_replaceHolders.js | 29 - .../node_modules/lodash/_root.js | 9 - .../node_modules/lodash/_safeGet.js | 21 - .../node_modules/lodash/_setCacheAdd.js | 19 - .../node_modules/lodash/_setCacheHas.js | 14 - .../node_modules/lodash/_setData.js | 20 - .../node_modules/lodash/_setToArray.js | 18 - .../node_modules/lodash/_setToPairs.js | 18 - .../node_modules/lodash/_setToString.js | 14 - .../node_modules/lodash/_setWrapToString.js | 21 - .../node_modules/lodash/_shortOut.js | 37 - .../node_modules/lodash/_shuffleSelf.js | 28 - .../node_modules/lodash/_stackClear.js | 15 - .../node_modules/lodash/_stackDelete.js | 18 - .../node_modules/lodash/_stackGet.js | 14 - .../node_modules/lodash/_stackHas.js | 14 - .../node_modules/lodash/_stackSet.js | 34 - .../node_modules/lodash/_strictIndexOf.js | 23 - .../node_modules/lodash/_strictLastIndexOf.js | 21 - .../node_modules/lodash/_stringSize.js | 18 - .../node_modules/lodash/_stringToArray.js | 18 - .../node_modules/lodash/_stringToPath.js | 27 - .../node_modules/lodash/_toKey.js | 21 - .../node_modules/lodash/_toSource.js | 26 - .../node_modules/lodash/_trimmedEndIndex.js | 19 - .../node_modules/lodash/_unescapeHtmlChar.js | 21 - .../node_modules/lodash/_unicodeSize.js | 44 - .../node_modules/lodash/_unicodeToArray.js | 40 - .../node_modules/lodash/_unicodeWords.js | 69 - .../node_modules/lodash/_updateWrapDetails.js | 46 - .../node_modules/lodash/_wrapperClone.js | 23 - .../frontend-core/node_modules/lodash/add.js | 22 - .../node_modules/lodash/after.js | 42 - .../node_modules/lodash/array.js | 67 - .../frontend-core/node_modules/lodash/ary.js | 29 - .../node_modules/lodash/assign.js | 58 - .../node_modules/lodash/assignIn.js | 40 - .../node_modules/lodash/assignInWith.js | 38 - .../node_modules/lodash/assignWith.js | 37 - .../frontend-core/node_modules/lodash/at.js | 23 - .../node_modules/lodash/attempt.js | 35 - .../node_modules/lodash/before.js | 40 - .../frontend-core/node_modules/lodash/bind.js | 57 - .../node_modules/lodash/bindAll.js | 41 - .../node_modules/lodash/bindKey.js | 68 - .../node_modules/lodash/camelCase.js | 29 - .../node_modules/lodash/capitalize.js | 23 - .../node_modules/lodash/castArray.js | 44 - .../frontend-core/node_modules/lodash/ceil.js | 26 - .../node_modules/lodash/chain.js | 38 - .../node_modules/lodash/chunk.js | 50 - .../node_modules/lodash/clamp.js | 39 - .../node_modules/lodash/clone.js | 36 - .../node_modules/lodash/cloneDeep.js | 29 - .../node_modules/lodash/cloneDeepWith.js | 40 - .../node_modules/lodash/cloneWith.js | 42 - .../node_modules/lodash/collection.js | 30 - .../node_modules/lodash/commit.js | 33 - .../node_modules/lodash/compact.js | 31 - .../node_modules/lodash/concat.js | 43 - .../frontend-core/node_modules/lodash/cond.js | 60 - .../node_modules/lodash/conforms.js | 35 - .../node_modules/lodash/conformsTo.js | 32 - .../node_modules/lodash/constant.js | 26 - .../frontend-core/node_modules/lodash/core.js | 3877 -- .../node_modules/lodash/core.min.js | 29 - .../node_modules/lodash/countBy.js | 40 - .../node_modules/lodash/create.js | 43 - .../node_modules/lodash/curry.js | 57 - .../node_modules/lodash/curryRight.js | 54 - .../frontend-core/node_modules/lodash/date.js | 3 - .../node_modules/lodash/debounce.js | 191 - .../node_modules/lodash/deburr.js | 45 - .../node_modules/lodash/defaultTo.js | 25 - .../node_modules/lodash/defaults.js | 64 - .../node_modules/lodash/defaultsDeep.js | 30 - .../node_modules/lodash/defer.js | 26 - .../node_modules/lodash/delay.js | 28 - .../node_modules/lodash/difference.js | 33 - .../node_modules/lodash/differenceBy.js | 44 - .../node_modules/lodash/differenceWith.js | 40 - .../node_modules/lodash/divide.js | 22 - .../frontend-core/node_modules/lodash/drop.js | 38 - .../node_modules/lodash/dropRight.js | 39 - .../node_modules/lodash/dropRightWhile.js | 45 - .../node_modules/lodash/dropWhile.js | 45 - .../frontend-core/node_modules/lodash/each.js | 1 - .../node_modules/lodash/eachRight.js | 1 - .../node_modules/lodash/endsWith.js | 43 - .../node_modules/lodash/entries.js | 1 - .../node_modules/lodash/entriesIn.js | 1 - .../frontend-core/node_modules/lodash/eq.js | 37 - .../node_modules/lodash/escape.js | 43 - .../node_modules/lodash/escapeRegExp.js | 32 - .../node_modules/lodash/every.js | 56 - .../node_modules/lodash/extend.js | 1 - .../node_modules/lodash/extendWith.js | 1 - .../frontend-core/node_modules/lodash/fill.js | 45 - .../node_modules/lodash/filter.js | 52 - .../frontend-core/node_modules/lodash/find.js | 42 - .../node_modules/lodash/findIndex.js | 55 - .../node_modules/lodash/findKey.js | 44 - .../node_modules/lodash/findLast.js | 25 - .../node_modules/lodash/findLastIndex.js | 59 - .../node_modules/lodash/findLastKey.js | 44 - .../node_modules/lodash/first.js | 1 - .../node_modules/lodash/flake.lock | 40 - .../node_modules/lodash/flake.nix | 20 - .../node_modules/lodash/flatMap.js | 29 - .../node_modules/lodash/flatMapDeep.js | 31 - .../node_modules/lodash/flatMapDepth.js | 31 - .../node_modules/lodash/flatten.js | 22 - .../node_modules/lodash/flattenDeep.js | 25 - .../node_modules/lodash/flattenDepth.js | 33 - .../frontend-core/node_modules/lodash/flip.js | 28 - .../node_modules/lodash/floor.js | 26 - .../frontend-core/node_modules/lodash/flow.js | 27 - .../node_modules/lodash/flowRight.js | 26 - .../node_modules/lodash/forEach.js | 41 - .../node_modules/lodash/forEachRight.js | 31 - .../node_modules/lodash/forIn.js | 39 - .../node_modules/lodash/forInRight.js | 37 - .../node_modules/lodash/forOwn.js | 36 - .../node_modules/lodash/forOwnRight.js | 34 - .../frontend-core/node_modules/lodash/fp.js | 2 - .../frontend-core/node_modules/lodash/fp/F.js | 1 - .../frontend-core/node_modules/lodash/fp/T.js | 1 - .../node_modules/lodash/fp/__.js | 1 - .../node_modules/lodash/fp/_baseConvert.js | 569 - .../node_modules/lodash/fp/_convertBrowser.js | 18 - .../node_modules/lodash/fp/_falseOptions.js | 7 - .../node_modules/lodash/fp/_mapping.js | 358 - .../node_modules/lodash/fp/_util.js | 16 - .../node_modules/lodash/fp/add.js | 5 - .../node_modules/lodash/fp/after.js | 5 - .../node_modules/lodash/fp/all.js | 1 - .../node_modules/lodash/fp/allPass.js | 1 - .../node_modules/lodash/fp/always.js | 1 - .../node_modules/lodash/fp/any.js | 1 - .../node_modules/lodash/fp/anyPass.js | 1 - .../node_modules/lodash/fp/apply.js | 1 - .../node_modules/lodash/fp/array.js | 2 - .../node_modules/lodash/fp/ary.js | 5 - .../node_modules/lodash/fp/assign.js | 5 - .../node_modules/lodash/fp/assignAll.js | 5 - .../node_modules/lodash/fp/assignAllWith.js | 5 - .../node_modules/lodash/fp/assignIn.js | 5 - .../node_modules/lodash/fp/assignInAll.js | 5 - .../node_modules/lodash/fp/assignInAllWith.js | 5 - .../node_modules/lodash/fp/assignInWith.js | 5 - .../node_modules/lodash/fp/assignWith.js | 5 - .../node_modules/lodash/fp/assoc.js | 1 - .../node_modules/lodash/fp/assocPath.js | 1 - .../node_modules/lodash/fp/at.js | 5 - .../node_modules/lodash/fp/attempt.js | 5 - .../node_modules/lodash/fp/before.js | 5 - .../node_modules/lodash/fp/bind.js | 5 - .../node_modules/lodash/fp/bindAll.js | 5 - .../node_modules/lodash/fp/bindKey.js | 5 - .../node_modules/lodash/fp/camelCase.js | 5 - .../node_modules/lodash/fp/capitalize.js | 5 - .../node_modules/lodash/fp/castArray.js | 5 - .../node_modules/lodash/fp/ceil.js | 5 - .../node_modules/lodash/fp/chain.js | 5 - .../node_modules/lodash/fp/chunk.js | 5 - .../node_modules/lodash/fp/clamp.js | 5 - .../node_modules/lodash/fp/clone.js | 5 - .../node_modules/lodash/fp/cloneDeep.js | 5 - .../node_modules/lodash/fp/cloneDeepWith.js | 5 - .../node_modules/lodash/fp/cloneWith.js | 5 - .../node_modules/lodash/fp/collection.js | 2 - .../node_modules/lodash/fp/commit.js | 5 - .../node_modules/lodash/fp/compact.js | 5 - .../node_modules/lodash/fp/complement.js | 1 - .../node_modules/lodash/fp/compose.js | 1 - .../node_modules/lodash/fp/concat.js | 5 - .../node_modules/lodash/fp/cond.js | 5 - .../node_modules/lodash/fp/conforms.js | 1 - .../node_modules/lodash/fp/conformsTo.js | 5 - .../node_modules/lodash/fp/constant.js | 5 - .../node_modules/lodash/fp/contains.js | 1 - .../node_modules/lodash/fp/convert.js | 18 - .../node_modules/lodash/fp/countBy.js | 5 - .../node_modules/lodash/fp/create.js | 5 - .../node_modules/lodash/fp/curry.js | 5 - .../node_modules/lodash/fp/curryN.js | 5 - .../node_modules/lodash/fp/curryRight.js | 5 - .../node_modules/lodash/fp/curryRightN.js | 5 - .../node_modules/lodash/fp/date.js | 2 - .../node_modules/lodash/fp/debounce.js | 5 - .../node_modules/lodash/fp/deburr.js | 5 - .../node_modules/lodash/fp/defaultTo.js | 5 - .../node_modules/lodash/fp/defaults.js | 5 - .../node_modules/lodash/fp/defaultsAll.js | 5 - .../node_modules/lodash/fp/defaultsDeep.js | 5 - .../node_modules/lodash/fp/defaultsDeepAll.js | 5 - .../node_modules/lodash/fp/defer.js | 5 - .../node_modules/lodash/fp/delay.js | 5 - .../node_modules/lodash/fp/difference.js | 5 - .../node_modules/lodash/fp/differenceBy.js | 5 - .../node_modules/lodash/fp/differenceWith.js | 5 - .../node_modules/lodash/fp/dissoc.js | 1 - .../node_modules/lodash/fp/dissocPath.js | 1 - .../node_modules/lodash/fp/divide.js | 5 - .../node_modules/lodash/fp/drop.js | 5 - .../node_modules/lodash/fp/dropLast.js | 1 - .../node_modules/lodash/fp/dropLastWhile.js | 1 - .../node_modules/lodash/fp/dropRight.js | 5 - .../node_modules/lodash/fp/dropRightWhile.js | 5 - .../node_modules/lodash/fp/dropWhile.js | 5 - .../node_modules/lodash/fp/each.js | 1 - .../node_modules/lodash/fp/eachRight.js | 1 - .../node_modules/lodash/fp/endsWith.js | 5 - .../node_modules/lodash/fp/entries.js | 1 - .../node_modules/lodash/fp/entriesIn.js | 1 - .../node_modules/lodash/fp/eq.js | 5 - .../node_modules/lodash/fp/equals.js | 1 - .../node_modules/lodash/fp/escape.js | 5 - .../node_modules/lodash/fp/escapeRegExp.js | 5 - .../node_modules/lodash/fp/every.js | 5 - .../node_modules/lodash/fp/extend.js | 1 - .../node_modules/lodash/fp/extendAll.js | 1 - .../node_modules/lodash/fp/extendAllWith.js | 1 - .../node_modules/lodash/fp/extendWith.js | 1 - .../node_modules/lodash/fp/fill.js | 5 - .../node_modules/lodash/fp/filter.js | 5 - .../node_modules/lodash/fp/find.js | 5 - .../node_modules/lodash/fp/findFrom.js | 5 - .../node_modules/lodash/fp/findIndex.js | 5 - .../node_modules/lodash/fp/findIndexFrom.js | 5 - .../node_modules/lodash/fp/findKey.js | 5 - .../node_modules/lodash/fp/findLast.js | 5 - .../node_modules/lodash/fp/findLastFrom.js | 5 - .../node_modules/lodash/fp/findLastIndex.js | 5 - .../lodash/fp/findLastIndexFrom.js | 5 - .../node_modules/lodash/fp/findLastKey.js | 5 - .../node_modules/lodash/fp/first.js | 1 - .../node_modules/lodash/fp/flatMap.js | 5 - .../node_modules/lodash/fp/flatMapDeep.js | 5 - .../node_modules/lodash/fp/flatMapDepth.js | 5 - .../node_modules/lodash/fp/flatten.js | 5 - .../node_modules/lodash/fp/flattenDeep.js | 5 - .../node_modules/lodash/fp/flattenDepth.js | 5 - .../node_modules/lodash/fp/flip.js | 5 - .../node_modules/lodash/fp/floor.js | 5 - .../node_modules/lodash/fp/flow.js | 5 - .../node_modules/lodash/fp/flowRight.js | 5 - .../node_modules/lodash/fp/forEach.js | 5 - .../node_modules/lodash/fp/forEachRight.js | 5 - .../node_modules/lodash/fp/forIn.js | 5 - .../node_modules/lodash/fp/forInRight.js | 5 - .../node_modules/lodash/fp/forOwn.js | 5 - .../node_modules/lodash/fp/forOwnRight.js | 5 - .../node_modules/lodash/fp/fromPairs.js | 5 - .../node_modules/lodash/fp/function.js | 2 - .../node_modules/lodash/fp/functions.js | 5 - .../node_modules/lodash/fp/functionsIn.js | 5 - .../node_modules/lodash/fp/get.js | 5 - .../node_modules/lodash/fp/getOr.js | 5 - .../node_modules/lodash/fp/groupBy.js | 5 - .../node_modules/lodash/fp/gt.js | 5 - .../node_modules/lodash/fp/gte.js | 5 - .../node_modules/lodash/fp/has.js | 5 - .../node_modules/lodash/fp/hasIn.js | 5 - .../node_modules/lodash/fp/head.js | 5 - .../node_modules/lodash/fp/identical.js | 1 - .../node_modules/lodash/fp/identity.js | 5 - .../node_modules/lodash/fp/inRange.js | 5 - .../node_modules/lodash/fp/includes.js | 5 - .../node_modules/lodash/fp/includesFrom.js | 5 - .../node_modules/lodash/fp/indexBy.js | 1 - .../node_modules/lodash/fp/indexOf.js | 5 - .../node_modules/lodash/fp/indexOfFrom.js | 5 - .../node_modules/lodash/fp/init.js | 1 - .../node_modules/lodash/fp/initial.js | 5 - .../node_modules/lodash/fp/intersection.js | 5 - .../node_modules/lodash/fp/intersectionBy.js | 5 - .../lodash/fp/intersectionWith.js | 5 - .../node_modules/lodash/fp/invert.js | 5 - .../node_modules/lodash/fp/invertBy.js | 5 - .../node_modules/lodash/fp/invertObj.js | 1 - .../node_modules/lodash/fp/invoke.js | 5 - .../node_modules/lodash/fp/invokeArgs.js | 5 - .../node_modules/lodash/fp/invokeArgsMap.js | 5 - .../node_modules/lodash/fp/invokeMap.js | 5 - .../node_modules/lodash/fp/isArguments.js | 5 - .../node_modules/lodash/fp/isArray.js | 5 - .../node_modules/lodash/fp/isArrayBuffer.js | 5 - .../node_modules/lodash/fp/isArrayLike.js | 5 - .../lodash/fp/isArrayLikeObject.js | 5 - .../node_modules/lodash/fp/isBoolean.js | 5 - .../node_modules/lodash/fp/isBuffer.js | 5 - .../node_modules/lodash/fp/isDate.js | 5 - .../node_modules/lodash/fp/isElement.js | 5 - .../node_modules/lodash/fp/isEmpty.js | 5 - .../node_modules/lodash/fp/isEqual.js | 5 - .../node_modules/lodash/fp/isEqualWith.js | 5 - .../node_modules/lodash/fp/isError.js | 5 - .../node_modules/lodash/fp/isFinite.js | 5 - .../node_modules/lodash/fp/isFunction.js | 5 - .../node_modules/lodash/fp/isInteger.js | 5 - .../node_modules/lodash/fp/isLength.js | 5 - .../node_modules/lodash/fp/isMap.js | 5 - .../node_modules/lodash/fp/isMatch.js | 5 - .../node_modules/lodash/fp/isMatchWith.js | 5 - .../node_modules/lodash/fp/isNaN.js | 5 - .../node_modules/lodash/fp/isNative.js | 5 - .../node_modules/lodash/fp/isNil.js | 5 - .../node_modules/lodash/fp/isNull.js | 5 - .../node_modules/lodash/fp/isNumber.js | 5 - .../node_modules/lodash/fp/isObject.js | 5 - .../node_modules/lodash/fp/isObjectLike.js | 5 - .../node_modules/lodash/fp/isPlainObject.js | 5 - .../node_modules/lodash/fp/isRegExp.js | 5 - .../node_modules/lodash/fp/isSafeInteger.js | 5 - .../node_modules/lodash/fp/isSet.js | 5 - .../node_modules/lodash/fp/isString.js | 5 - .../node_modules/lodash/fp/isSymbol.js | 5 - .../node_modules/lodash/fp/isTypedArray.js | 5 - .../node_modules/lodash/fp/isUndefined.js | 5 - .../node_modules/lodash/fp/isWeakMap.js | 5 - .../node_modules/lodash/fp/isWeakSet.js | 5 - .../node_modules/lodash/fp/iteratee.js | 5 - .../node_modules/lodash/fp/join.js | 5 - .../node_modules/lodash/fp/juxt.js | 1 - .../node_modules/lodash/fp/kebabCase.js | 5 - .../node_modules/lodash/fp/keyBy.js | 5 - .../node_modules/lodash/fp/keys.js | 5 - .../node_modules/lodash/fp/keysIn.js | 5 - .../node_modules/lodash/fp/lang.js | 2 - .../node_modules/lodash/fp/last.js | 5 - .../node_modules/lodash/fp/lastIndexOf.js | 5 - .../node_modules/lodash/fp/lastIndexOfFrom.js | 5 - .../node_modules/lodash/fp/lowerCase.js | 5 - .../node_modules/lodash/fp/lowerFirst.js | 5 - .../node_modules/lodash/fp/lt.js | 5 - .../node_modules/lodash/fp/lte.js | 5 - .../node_modules/lodash/fp/map.js | 5 - .../node_modules/lodash/fp/mapKeys.js | 5 - .../node_modules/lodash/fp/mapValues.js | 5 - .../node_modules/lodash/fp/matches.js | 1 - .../node_modules/lodash/fp/matchesProperty.js | 5 - .../node_modules/lodash/fp/math.js | 2 - .../node_modules/lodash/fp/max.js | 5 - .../node_modules/lodash/fp/maxBy.js | 5 - .../node_modules/lodash/fp/mean.js | 5 - .../node_modules/lodash/fp/meanBy.js | 5 - .../node_modules/lodash/fp/memoize.js | 5 - .../node_modules/lodash/fp/merge.js | 5 - .../node_modules/lodash/fp/mergeAll.js | 5 - .../node_modules/lodash/fp/mergeAllWith.js | 5 - .../node_modules/lodash/fp/mergeWith.js | 5 - .../node_modules/lodash/fp/method.js | 5 - .../node_modules/lodash/fp/methodOf.js | 5 - .../node_modules/lodash/fp/min.js | 5 - .../node_modules/lodash/fp/minBy.js | 5 - .../node_modules/lodash/fp/mixin.js | 5 - .../node_modules/lodash/fp/multiply.js | 5 - .../node_modules/lodash/fp/nAry.js | 1 - .../node_modules/lodash/fp/negate.js | 5 - .../node_modules/lodash/fp/next.js | 5 - .../node_modules/lodash/fp/noop.js | 5 - .../node_modules/lodash/fp/now.js | 5 - .../node_modules/lodash/fp/nth.js | 5 - .../node_modules/lodash/fp/nthArg.js | 5 - .../node_modules/lodash/fp/number.js | 2 - .../node_modules/lodash/fp/object.js | 2 - .../node_modules/lodash/fp/omit.js | 5 - .../node_modules/lodash/fp/omitAll.js | 1 - .../node_modules/lodash/fp/omitBy.js | 5 - .../node_modules/lodash/fp/once.js | 5 - .../node_modules/lodash/fp/orderBy.js | 5 - .../node_modules/lodash/fp/over.js | 5 - .../node_modules/lodash/fp/overArgs.js | 5 - .../node_modules/lodash/fp/overEvery.js | 5 - .../node_modules/lodash/fp/overSome.js | 5 - .../node_modules/lodash/fp/pad.js | 5 - .../node_modules/lodash/fp/padChars.js | 5 - .../node_modules/lodash/fp/padCharsEnd.js | 5 - .../node_modules/lodash/fp/padCharsStart.js | 5 - .../node_modules/lodash/fp/padEnd.js | 5 - .../node_modules/lodash/fp/padStart.js | 5 - .../node_modules/lodash/fp/parseInt.js | 5 - .../node_modules/lodash/fp/partial.js | 5 - .../node_modules/lodash/fp/partialRight.js | 5 - .../node_modules/lodash/fp/partition.js | 5 - .../node_modules/lodash/fp/path.js | 1 - .../node_modules/lodash/fp/pathEq.js | 1 - .../node_modules/lodash/fp/pathOr.js | 1 - .../node_modules/lodash/fp/paths.js | 1 - .../node_modules/lodash/fp/pick.js | 5 - .../node_modules/lodash/fp/pickAll.js | 1 - .../node_modules/lodash/fp/pickBy.js | 5 - .../node_modules/lodash/fp/pipe.js | 1 - .../node_modules/lodash/fp/placeholder.js | 6 - .../node_modules/lodash/fp/plant.js | 5 - .../node_modules/lodash/fp/pluck.js | 1 - .../node_modules/lodash/fp/prop.js | 1 - .../node_modules/lodash/fp/propEq.js | 1 - .../node_modules/lodash/fp/propOr.js | 1 - .../node_modules/lodash/fp/property.js | 1 - .../node_modules/lodash/fp/propertyOf.js | 5 - .../node_modules/lodash/fp/props.js | 1 - .../node_modules/lodash/fp/pull.js | 5 - .../node_modules/lodash/fp/pullAll.js | 5 - .../node_modules/lodash/fp/pullAllBy.js | 5 - .../node_modules/lodash/fp/pullAllWith.js | 5 - .../node_modules/lodash/fp/pullAt.js | 5 - .../node_modules/lodash/fp/random.js | 5 - .../node_modules/lodash/fp/range.js | 5 - .../node_modules/lodash/fp/rangeRight.js | 5 - .../node_modules/lodash/fp/rangeStep.js | 5 - .../node_modules/lodash/fp/rangeStepRight.js | 5 - .../node_modules/lodash/fp/rearg.js | 5 - .../node_modules/lodash/fp/reduce.js | 5 - .../node_modules/lodash/fp/reduceRight.js | 5 - .../node_modules/lodash/fp/reject.js | 5 - .../node_modules/lodash/fp/remove.js | 5 - .../node_modules/lodash/fp/repeat.js | 5 - .../node_modules/lodash/fp/replace.js | 5 - .../node_modules/lodash/fp/rest.js | 5 - .../node_modules/lodash/fp/restFrom.js | 5 - .../node_modules/lodash/fp/result.js | 5 - .../node_modules/lodash/fp/reverse.js | 5 - .../node_modules/lodash/fp/round.js | 5 - .../node_modules/lodash/fp/sample.js | 5 - .../node_modules/lodash/fp/sampleSize.js | 5 - .../node_modules/lodash/fp/seq.js | 2 - .../node_modules/lodash/fp/set.js | 5 - .../node_modules/lodash/fp/setWith.js | 5 - .../node_modules/lodash/fp/shuffle.js | 5 - .../node_modules/lodash/fp/size.js | 5 - .../node_modules/lodash/fp/slice.js | 5 - .../node_modules/lodash/fp/snakeCase.js | 5 - .../node_modules/lodash/fp/some.js | 5 - .../node_modules/lodash/fp/sortBy.js | 5 - .../node_modules/lodash/fp/sortedIndex.js | 5 - .../node_modules/lodash/fp/sortedIndexBy.js | 5 - .../node_modules/lodash/fp/sortedIndexOf.js | 5 - .../node_modules/lodash/fp/sortedLastIndex.js | 5 - .../lodash/fp/sortedLastIndexBy.js | 5 - .../lodash/fp/sortedLastIndexOf.js | 5 - .../node_modules/lodash/fp/sortedUniq.js | 5 - .../node_modules/lodash/fp/sortedUniqBy.js | 5 - .../node_modules/lodash/fp/split.js | 5 - .../node_modules/lodash/fp/spread.js | 5 - .../node_modules/lodash/fp/spreadFrom.js | 5 - .../node_modules/lodash/fp/startCase.js | 5 - .../node_modules/lodash/fp/startsWith.js | 5 - .../node_modules/lodash/fp/string.js | 2 - .../node_modules/lodash/fp/stubArray.js | 5 - .../node_modules/lodash/fp/stubFalse.js | 5 - .../node_modules/lodash/fp/stubObject.js | 5 - .../node_modules/lodash/fp/stubString.js | 5 - .../node_modules/lodash/fp/stubTrue.js | 5 - .../node_modules/lodash/fp/subtract.js | 5 - .../node_modules/lodash/fp/sum.js | 5 - .../node_modules/lodash/fp/sumBy.js | 5 - .../lodash/fp/symmetricDifference.js | 1 - .../lodash/fp/symmetricDifferenceBy.js | 1 - .../lodash/fp/symmetricDifferenceWith.js | 1 - .../node_modules/lodash/fp/tail.js | 5 - .../node_modules/lodash/fp/take.js | 5 - .../node_modules/lodash/fp/takeLast.js | 1 - .../node_modules/lodash/fp/takeLastWhile.js | 1 - .../node_modules/lodash/fp/takeRight.js | 5 - .../node_modules/lodash/fp/takeRightWhile.js | 5 - .../node_modules/lodash/fp/takeWhile.js | 5 - .../node_modules/lodash/fp/tap.js | 5 - .../node_modules/lodash/fp/template.js | 5 - .../lodash/fp/templateSettings.js | 5 - .../node_modules/lodash/fp/throttle.js | 5 - .../node_modules/lodash/fp/thru.js | 5 - .../node_modules/lodash/fp/times.js | 5 - .../node_modules/lodash/fp/toArray.js | 5 - .../node_modules/lodash/fp/toFinite.js | 5 - .../node_modules/lodash/fp/toInteger.js | 5 - .../node_modules/lodash/fp/toIterator.js | 5 - .../node_modules/lodash/fp/toJSON.js | 5 - .../node_modules/lodash/fp/toLength.js | 5 - .../node_modules/lodash/fp/toLower.js | 5 - .../node_modules/lodash/fp/toNumber.js | 5 - .../node_modules/lodash/fp/toPairs.js | 5 - .../node_modules/lodash/fp/toPairsIn.js | 5 - .../node_modules/lodash/fp/toPath.js | 5 - .../node_modules/lodash/fp/toPlainObject.js | 5 - .../node_modules/lodash/fp/toSafeInteger.js | 5 - .../node_modules/lodash/fp/toString.js | 5 - .../node_modules/lodash/fp/toUpper.js | 5 - .../node_modules/lodash/fp/transform.js | 5 - .../node_modules/lodash/fp/trim.js | 5 - .../node_modules/lodash/fp/trimChars.js | 5 - .../node_modules/lodash/fp/trimCharsEnd.js | 5 - .../node_modules/lodash/fp/trimCharsStart.js | 5 - .../node_modules/lodash/fp/trimEnd.js | 5 - .../node_modules/lodash/fp/trimStart.js | 5 - .../node_modules/lodash/fp/truncate.js | 5 - .../node_modules/lodash/fp/unapply.js | 1 - .../node_modules/lodash/fp/unary.js | 5 - .../node_modules/lodash/fp/unescape.js | 5 - .../node_modules/lodash/fp/union.js | 5 - .../node_modules/lodash/fp/unionBy.js | 5 - .../node_modules/lodash/fp/unionWith.js | 5 - .../node_modules/lodash/fp/uniq.js | 5 - .../node_modules/lodash/fp/uniqBy.js | 5 - .../node_modules/lodash/fp/uniqWith.js | 5 - .../node_modules/lodash/fp/uniqueId.js | 5 - .../node_modules/lodash/fp/unnest.js | 1 - .../node_modules/lodash/fp/unset.js | 5 - .../node_modules/lodash/fp/unzip.js | 5 - .../node_modules/lodash/fp/unzipWith.js | 5 - .../node_modules/lodash/fp/update.js | 5 - .../node_modules/lodash/fp/updateWith.js | 5 - .../node_modules/lodash/fp/upperCase.js | 5 - .../node_modules/lodash/fp/upperFirst.js | 5 - .../node_modules/lodash/fp/useWith.js | 1 - .../node_modules/lodash/fp/util.js | 2 - .../node_modules/lodash/fp/value.js | 5 - .../node_modules/lodash/fp/valueOf.js | 5 - .../node_modules/lodash/fp/values.js | 5 - .../node_modules/lodash/fp/valuesIn.js | 5 - .../node_modules/lodash/fp/where.js | 1 - .../node_modules/lodash/fp/whereEq.js | 1 - .../node_modules/lodash/fp/without.js | 5 - .../node_modules/lodash/fp/words.js | 5 - .../node_modules/lodash/fp/wrap.js | 5 - .../node_modules/lodash/fp/wrapperAt.js | 5 - .../node_modules/lodash/fp/wrapperChain.js | 5 - .../node_modules/lodash/fp/wrapperLodash.js | 5 - .../node_modules/lodash/fp/wrapperReverse.js | 5 - .../node_modules/lodash/fp/wrapperValue.js | 5 - .../node_modules/lodash/fp/xor.js | 5 - .../node_modules/lodash/fp/xorBy.js | 5 - .../node_modules/lodash/fp/xorWith.js | 5 - .../node_modules/lodash/fp/zip.js | 5 - .../node_modules/lodash/fp/zipAll.js | 5 - .../node_modules/lodash/fp/zipObj.js | 1 - .../node_modules/lodash/fp/zipObject.js | 5 - .../node_modules/lodash/fp/zipObjectDeep.js | 5 - .../node_modules/lodash/fp/zipWith.js | 5 - .../node_modules/lodash/fromPairs.js | 28 - .../node_modules/lodash/function.js | 25 - .../node_modules/lodash/functions.js | 31 - .../node_modules/lodash/functionsIn.js | 31 - .../frontend-core/node_modules/lodash/get.js | 33 - .../node_modules/lodash/groupBy.js | 41 - .../frontend-core/node_modules/lodash/gt.js | 29 - .../frontend-core/node_modules/lodash/gte.js | 30 - .../frontend-core/node_modules/lodash/has.js | 35 - .../node_modules/lodash/hasIn.js | 34 - .../frontend-core/node_modules/lodash/head.js | 23 - .../node_modules/lodash/identity.js | 21 - .../node_modules/lodash/inRange.js | 55 - .../node_modules/lodash/includes.js | 53 - .../node_modules/lodash/index.js | 1 - .../node_modules/lodash/indexOf.js | 42 - .../node_modules/lodash/initial.js | 22 - .../node_modules/lodash/intersection.js | 30 - .../node_modules/lodash/intersectionBy.js | 45 - .../node_modules/lodash/intersectionWith.js | 41 - .../node_modules/lodash/invert.js | 42 - .../node_modules/lodash/invertBy.js | 56 - .../node_modules/lodash/invoke.js | 24 - .../node_modules/lodash/invokeMap.js | 41 - .../node_modules/lodash/isArguments.js | 36 - .../node_modules/lodash/isArray.js | 26 - .../node_modules/lodash/isArrayBuffer.js | 27 - .../node_modules/lodash/isArrayLike.js | 33 - .../node_modules/lodash/isArrayLikeObject.js | 33 - .../node_modules/lodash/isBoolean.js | 29 - .../node_modules/lodash/isBuffer.js | 38 - .../node_modules/lodash/isDate.js | 27 - .../node_modules/lodash/isElement.js | 25 - .../node_modules/lodash/isEmpty.js | 77 - .../node_modules/lodash/isEqual.js | 35 - .../node_modules/lodash/isEqualWith.js | 41 - .../node_modules/lodash/isError.js | 36 - .../node_modules/lodash/isFinite.js | 36 - .../node_modules/lodash/isFunction.js | 37 - .../node_modules/lodash/isInteger.js | 33 - .../node_modules/lodash/isLength.js | 35 - .../node_modules/lodash/isMap.js | 27 - .../node_modules/lodash/isMatch.js | 36 - .../node_modules/lodash/isMatchWith.js | 41 - .../node_modules/lodash/isNaN.js | 38 - .../node_modules/lodash/isNative.js | 40 - .../node_modules/lodash/isNil.js | 25 - .../node_modules/lodash/isNull.js | 22 - .../node_modules/lodash/isNumber.js | 38 - .../node_modules/lodash/isObject.js | 31 - .../node_modules/lodash/isObjectLike.js | 29 - .../node_modules/lodash/isPlainObject.js | 62 - .../node_modules/lodash/isRegExp.js | 27 - .../node_modules/lodash/isSafeInteger.js | 37 - .../node_modules/lodash/isSet.js | 27 - .../node_modules/lodash/isString.js | 30 - .../node_modules/lodash/isSymbol.js | 29 - .../node_modules/lodash/isTypedArray.js | 27 - .../node_modules/lodash/isUndefined.js | 22 - .../node_modules/lodash/isWeakMap.js | 28 - .../node_modules/lodash/isWeakSet.js | 28 - .../node_modules/lodash/iteratee.js | 53 - .../frontend-core/node_modules/lodash/join.js | 26 - .../node_modules/lodash/kebabCase.js | 28 - .../node_modules/lodash/keyBy.js | 36 - .../frontend-core/node_modules/lodash/keys.js | 37 - .../node_modules/lodash/keysIn.js | 32 - .../frontend-core/node_modules/lodash/lang.js | 58 - .../frontend-core/node_modules/lodash/last.js | 20 - .../node_modules/lodash/lastIndexOf.js | 46 - .../node_modules/lodash/lodash.js | 17209 --------- .../node_modules/lodash/lodash.min.js | 140 - .../node_modules/lodash/lowerCase.js | 27 - .../node_modules/lodash/lowerFirst.js | 22 - .../frontend-core/node_modules/lodash/lt.js | 29 - .../frontend-core/node_modules/lodash/lte.js | 30 - .../frontend-core/node_modules/lodash/map.js | 53 - .../node_modules/lodash/mapKeys.js | 36 - .../node_modules/lodash/mapValues.js | 43 - .../node_modules/lodash/matches.js | 46 - .../node_modules/lodash/matchesProperty.js | 44 - .../frontend-core/node_modules/lodash/math.js | 17 - .../frontend-core/node_modules/lodash/max.js | 29 - .../node_modules/lodash/maxBy.js | 34 - .../frontend-core/node_modules/lodash/mean.js | 22 - .../node_modules/lodash/meanBy.js | 31 - .../node_modules/lodash/memoize.js | 73 - .../node_modules/lodash/merge.js | 39 - .../node_modules/lodash/mergeWith.js | 39 - .../node_modules/lodash/method.js | 34 - .../node_modules/lodash/methodOf.js | 33 - .../frontend-core/node_modules/lodash/min.js | 29 - .../node_modules/lodash/minBy.js | 34 - .../node_modules/lodash/mixin.js | 74 - .../node_modules/lodash/multiply.js | 22 - .../node_modules/lodash/negate.js | 40 - .../frontend-core/node_modules/lodash/next.js | 35 - .../frontend-core/node_modules/lodash/noop.js | 17 - .../frontend-core/node_modules/lodash/now.js | 23 - .../frontend-core/node_modules/lodash/nth.js | 29 - .../node_modules/lodash/nthArg.js | 32 - .../node_modules/lodash/number.js | 5 - .../node_modules/lodash/object.js | 49 - .../frontend-core/node_modules/lodash/omit.js | 57 - .../node_modules/lodash/omitBy.js | 29 - .../frontend-core/node_modules/lodash/once.js | 25 - .../node_modules/lodash/orderBy.js | 47 - .../frontend-core/node_modules/lodash/over.js | 24 - .../node_modules/lodash/overArgs.js | 61 - .../node_modules/lodash/overEvery.js | 34 - .../node_modules/lodash/overSome.js | 37 - .../node_modules/lodash/package.json | 17 - .../frontend-core/node_modules/lodash/pad.js | 49 - .../node_modules/lodash/padEnd.js | 39 - .../node_modules/lodash/padStart.js | 39 - .../node_modules/lodash/parseInt.js | 43 - .../node_modules/lodash/partial.js | 50 - .../node_modules/lodash/partialRight.js | 49 - .../node_modules/lodash/partition.js | 43 - .../frontend-core/node_modules/lodash/pick.js | 25 - .../node_modules/lodash/pickBy.js | 37 - .../node_modules/lodash/plant.js | 48 - .../node_modules/lodash/property.js | 32 - .../node_modules/lodash/propertyOf.js | 30 - .../frontend-core/node_modules/lodash/pull.js | 29 - .../node_modules/lodash/pullAll.js | 29 - .../node_modules/lodash/pullAllBy.js | 33 - .../node_modules/lodash/pullAllWith.js | 32 - .../node_modules/lodash/pullAt.js | 43 - .../node_modules/lodash/random.js | 82 - .../node_modules/lodash/range.js | 46 - .../node_modules/lodash/rangeRight.js | 41 - .../node_modules/lodash/rearg.js | 33 - .../node_modules/lodash/reduce.js | 51 - .../node_modules/lodash/reduceRight.js | 36 - .../node_modules/lodash/reject.js | 46 - .../node_modules/lodash/release.md | 48 - .../node_modules/lodash/remove.js | 53 - .../node_modules/lodash/repeat.js | 37 - .../node_modules/lodash/replace.js | 29 - .../frontend-core/node_modules/lodash/rest.js | 40 - .../node_modules/lodash/result.js | 56 - .../node_modules/lodash/reverse.js | 34 - .../node_modules/lodash/round.js | 26 - .../node_modules/lodash/sample.js | 24 - .../node_modules/lodash/sampleSize.js | 37 - .../frontend-core/node_modules/lodash/seq.js | 16 - .../frontend-core/node_modules/lodash/set.js | 35 - .../node_modules/lodash/setWith.js | 32 - .../node_modules/lodash/shuffle.js | 25 - .../frontend-core/node_modules/lodash/size.js | 46 - .../node_modules/lodash/slice.js | 37 - .../node_modules/lodash/snakeCase.js | 28 - .../frontend-core/node_modules/lodash/some.js | 51 - .../node_modules/lodash/sortBy.js | 48 - .../node_modules/lodash/sortedIndex.js | 24 - .../node_modules/lodash/sortedIndexBy.js | 33 - .../node_modules/lodash/sortedIndexOf.js | 31 - .../node_modules/lodash/sortedLastIndex.js | 25 - .../node_modules/lodash/sortedLastIndexBy.js | 33 - .../node_modules/lodash/sortedLastIndexOf.js | 31 - .../node_modules/lodash/sortedUniq.js | 24 - .../node_modules/lodash/sortedUniqBy.js | 26 - .../node_modules/lodash/split.js | 52 - .../node_modules/lodash/spread.js | 63 - .../node_modules/lodash/startCase.js | 29 - .../node_modules/lodash/startsWith.js | 39 - .../node_modules/lodash/string.js | 33 - .../node_modules/lodash/stubArray.js | 23 - .../node_modules/lodash/stubFalse.js | 18 - .../node_modules/lodash/stubObject.js | 23 - .../node_modules/lodash/stubString.js | 18 - .../node_modules/lodash/stubTrue.js | 18 - .../node_modules/lodash/subtract.js | 22 - .../frontend-core/node_modules/lodash/sum.js | 24 - .../node_modules/lodash/sumBy.js | 33 - .../frontend-core/node_modules/lodash/tail.js | 22 - .../frontend-core/node_modules/lodash/take.js | 37 - .../node_modules/lodash/takeRight.js | 39 - .../node_modules/lodash/takeRightWhile.js | 45 - .../node_modules/lodash/takeWhile.js | 45 - .../frontend-core/node_modules/lodash/tap.js | 29 - .../node_modules/lodash/template.js | 272 - .../node_modules/lodash/templateSettings.js | 67 - .../node_modules/lodash/throttle.js | 69 - .../frontend-core/node_modules/lodash/thru.js | 28 - .../node_modules/lodash/times.js | 51 - .../node_modules/lodash/toArray.js | 58 - .../node_modules/lodash/toFinite.js | 42 - .../node_modules/lodash/toInteger.js | 36 - .../node_modules/lodash/toIterator.js | 23 - .../node_modules/lodash/toJSON.js | 1 - .../node_modules/lodash/toLength.js | 38 - .../node_modules/lodash/toLower.js | 28 - .../node_modules/lodash/toNumber.js | 64 - .../node_modules/lodash/toPairs.js | 30 - .../node_modules/lodash/toPairsIn.js | 30 - .../node_modules/lodash/toPath.js | 33 - .../node_modules/lodash/toPlainObject.js | 32 - .../node_modules/lodash/toSafeInteger.js | 37 - .../node_modules/lodash/toString.js | 28 - .../node_modules/lodash/toUpper.js | 28 - .../node_modules/lodash/transform.js | 65 - .../frontend-core/node_modules/lodash/trim.js | 47 - .../node_modules/lodash/trimEnd.js | 41 - .../node_modules/lodash/trimStart.js | 43 - .../node_modules/lodash/truncate.js | 111 - .../node_modules/lodash/unary.js | 22 - .../node_modules/lodash/unescape.js | 34 - .../node_modules/lodash/union.js | 26 - .../node_modules/lodash/unionBy.js | 39 - .../node_modules/lodash/unionWith.js | 34 - .../frontend-core/node_modules/lodash/uniq.js | 25 - .../node_modules/lodash/uniqBy.js | 31 - .../node_modules/lodash/uniqWith.js | 28 - .../node_modules/lodash/uniqueId.js | 28 - .../node_modules/lodash/unset.js | 34 - .../node_modules/lodash/unzip.js | 45 - .../node_modules/lodash/unzipWith.js | 39 - .../node_modules/lodash/update.js | 35 - .../node_modules/lodash/updateWith.js | 33 - .../node_modules/lodash/upperCase.js | 27 - .../node_modules/lodash/upperFirst.js | 22 - .../frontend-core/node_modules/lodash/util.js | 34 - .../node_modules/lodash/value.js | 1 - .../node_modules/lodash/valueOf.js | 1 - .../node_modules/lodash/values.js | 34 - .../node_modules/lodash/valuesIn.js | 32 - .../node_modules/lodash/without.js | 31 - .../node_modules/lodash/words.js | 35 - .../frontend-core/node_modules/lodash/wrap.js | 30 - .../node_modules/lodash/wrapperAt.js | 48 - .../node_modules/lodash/wrapperChain.js | 34 - .../node_modules/lodash/wrapperLodash.js | 147 - .../node_modules/lodash/wrapperReverse.js | 44 - .../node_modules/lodash/wrapperValue.js | 21 - .../frontend-core/node_modules/lodash/xor.js | 28 - .../node_modules/lodash/xorBy.js | 39 - .../node_modules/lodash/xorWith.js | 34 - .../frontend-core/node_modules/lodash/zip.js | 22 - .../node_modules/lodash/zipObject.js | 24 - .../node_modules/lodash/zipObjectDeep.js | 23 - .../node_modules/lodash/zipWith.js | 32 - .../node_modules/svelte/CHANGELOG.md | 2387 -- .../node_modules/svelte/LICENSE.md | 7 - .../node_modules/svelte/README.md | 75 - .../node_modules/svelte/animate/index.d.ts | 1 - .../node_modules/svelte/animate/index.js | 29 - .../node_modules/svelte/animate/index.mjs | 25 - .../node_modules/svelte/animate/package.json | 5 - .../node_modules/svelte/compiler.d.ts | 1 - .../node_modules/svelte/compiler.js | 32182 ---------------- .../node_modules/svelte/compiler.js.map | 1 - .../node_modules/svelte/compiler.mjs | 32168 --------------- .../node_modules/svelte/compiler.mjs.map | 1 - .../node_modules/svelte/easing/index.d.ts | 1 - .../node_modules/svelte/easing/index.js | 183 - .../node_modules/svelte/easing/index.mjs | 144 - .../node_modules/svelte/easing/package.json | 5 - .../node_modules/svelte/index.js | 80 - .../node_modules/svelte/index.mjs | 1 - .../node_modules/svelte/internal/index.d.ts | 1 - .../node_modules/svelte/internal/index.js | 2294 -- .../node_modules/svelte/internal/index.mjs | 2122 - .../node_modules/svelte/internal/package.json | 5 - .../node_modules/svelte/motion/index.d.ts | 1 - .../node_modules/svelte/motion/index.js | 216 - .../node_modules/svelte/motion/index.mjs | 211 - .../node_modules/svelte/motion/package.json | 5 - .../node_modules/svelte/package.json | 166 - .../node_modules/svelte/register.js | 56 - .../frontend-core/node_modules/svelte/ssr.js | 67 - .../frontend-core/node_modules/svelte/ssr.mjs | 7 - .../node_modules/svelte/store/index.d.ts | 1 - .../node_modules/svelte/store/index.js | 114 - .../node_modules/svelte/store/index.mjs | 103 - .../node_modules/svelte/store/package.json | 5 - .../node_modules/svelte/transition/index.d.ts | 1 - .../node_modules/svelte/transition/index.js | 192 - .../node_modules/svelte/transition/index.mjs | 182 - .../svelte/transition/package.json | 5 - .../svelte/types/compiler/Stats.d.ts | 22 - .../types/compiler/compile/Component.d.ts | 124 - .../compiler/compile/compiler_errors.d.ts | 1 - .../compiler/compile/compiler_warnings.d.ts | 1 - .../types/compiler/compile/create_module.d.ts | 14 - .../types/compiler/compile/css/Selector.d.ts | 32 - .../compiler/compile/css/Stylesheet.d.ts | 67 - .../compile/css/gather_possible_values.d.ts | 3 - .../compiler/compile/css/interfaces.d.ts | 6 - .../svelte/types/compiler/compile/index.d.ts | 13 - .../compiler/compile/internal_exports.d.ts | 2 - .../types/compiler/compile/nodes/Action.d.ts | 13 - .../compiler/compile/nodes/Animation.d.ts | 12 - .../compiler/compile/nodes/Attribute.d.ts | 30 - .../compiler/compile/nodes/AwaitBlock.d.ts | 22 - .../types/compiler/compile/nodes/Binding.d.ts | 19 - .../types/compiler/compile/nodes/Body.d.ts | 12 - .../compiler/compile/nodes/CatchBlock.d.ts | 12 - .../types/compiler/compile/nodes/Class.d.ts | 11 - .../types/compiler/compile/nodes/Comment.d.ts | 10 - .../compiler/compile/nodes/ConstTag.d.ts | 18 - .../compiler/compile/nodes/DebugTag.d.ts | 11 - .../compile/nodes/DefaultSlotTemplate.d.ts | 13 - .../compiler/compile/nodes/EachBlock.d.ts | 26 - .../types/compiler/compile/nodes/Element.d.ts | 44 - .../compiler/compile/nodes/ElseBlock.d.ts | 9 - .../compiler/compile/nodes/EventHandler.d.ts | 17 - .../compiler/compile/nodes/Fragment.d.ts | 13 - .../types/compiler/compile/nodes/Head.d.ts | 10 - .../types/compiler/compile/nodes/IfBlock.d.ts | 13 - .../compile/nodes/InlineComponent.d.ts | 24 - .../compiler/compile/nodes/KeyBlock.d.ts | 11 - .../types/compiler/compile/nodes/Let.d.ts | 12 - .../compiler/compile/nodes/MustacheTag.d.ts | 4 - .../types/compiler/compile/nodes/Options.d.ts | 4 - .../compiler/compile/nodes/PendingBlock.d.ts | 9 - .../compile/nodes/RawMustacheTag.d.ts | 4 - .../types/compiler/compile/nodes/Slot.d.ts | 14 - .../compiler/compile/nodes/SlotTemplate.d.ts | 18 - .../types/compiler/compile/nodes/Style.d.ts | 12 - .../compile/nodes/StyleDirective.d.ts | 12 - .../types/compiler/compile/nodes/Text.d.ts | 12 - .../compiler/compile/nodes/ThenBlock.d.ts | 12 - .../types/compiler/compile/nodes/Title.d.ts | 11 - .../compiler/compile/nodes/Transition.d.ts | 14 - .../types/compiler/compile/nodes/Window.d.ts | 14 - .../compiler/compile/nodes/interfaces.d.ts | 36 - .../compile/nodes/shared/AbstractBlock.d.ts | 10 - .../compile/nodes/shared/Context.d.ts | 17 - .../compile/nodes/shared/Expression.d.ts | 26 - .../compiler/compile/nodes/shared/Node.d.ts | 21 - .../compiler/compile/nodes/shared/Tag.d.ts | 8 - .../compile/nodes/shared/TemplateScope.d.ts | 23 - .../compile/nodes/shared/get_const_tags.d.ts | 5 - .../compile/nodes/shared/is_contextual.d.ts | 3 - .../compile/nodes/shared/map_children.d.ts | 21 - .../compiler/compile/render_dom/Block.d.ts | 81 - .../compiler/compile/render_dom/Renderer.d.ts | 46 - .../compiler/compile/render_dom/index.d.ts | 7 - .../compile/render_dom/invalidate.d.ts | 5 - .../render_dom/wrappers/AwaitBlock.d.ts | 39 - .../compile/render_dom/wrappers/Body.d.ts | 13 - .../compile/render_dom/wrappers/DebugTag.d.ts | 10 - .../render_dom/wrappers/EachBlock.d.ts | 56 - .../wrappers/Element/Attribute.d.ts | 42 - .../render_dom/wrappers/Element/Binding.d.ts | 24 - .../wrappers/Element/EventHandler.d.ts | 11 - .../wrappers/Element/SpreadAttribute.d.ts | 3 - .../wrappers/Element/StyleAttribute.d.ts | 16 - .../Element/fix_attribute_casing.d.ts | 1 - .../Element/handle_select_value_binding.d.ts | 3 - .../render_dom/wrappers/Element/index.d.ts | 204 - .../compile/render_dom/wrappers/Fragment.d.ts | 10 - .../compile/render_dom/wrappers/Head.d.ts | 12 - .../compile/render_dom/wrappers/IfBlock.d.ts | 47 - .../wrappers/InlineComponent/index.d.ts | 25 - .../compile/render_dom/wrappers/KeyBlock.d.ts | 18 - .../render_dom/wrappers/MustacheTag.d.ts | 12 - .../render_dom/wrappers/RawMustacheTag.d.ts | 12 - .../compile/render_dom/wrappers/Slot.d.ts | 17 - .../render_dom/wrappers/SlotTemplate.d.ts | 15 - .../compile/render_dom/wrappers/Text.d.ts | 14 - .../compile/render_dom/wrappers/Title.d.ts | 10 - .../compile/render_dom/wrappers/Window.d.ts | 13 - .../render_dom/wrappers/shared/Tag.d.ts | 14 - .../render_dom/wrappers/shared/Wrapper.d.ts | 21 - .../wrappers/shared/add_actions.d.ts | 5 - .../wrappers/shared/add_const_tags.d.ts | 5 - .../wrappers/shared/add_event_handlers.d.ts | 5 - .../render_dom/wrappers/shared/bind_this.d.ts | 5 - .../shared/create_debugging_comment.d.ts | 3 - .../wrappers/shared/get_slot_definition.d.ts | 177 - .../wrappers/shared/is_dynamic.d.ts | 2 - .../render_dom/wrappers/shared/is_head.d.ts | 1 - .../shared/mark_each_block_bindings.d.ts | 4 - .../compiler/compile/render_ssr/Renderer.d.ts | 33 - .../render_ssr/handlers/AwaitBlock.d.ts | 3 - .../compile/render_ssr/handlers/Comment.d.ts | 3 - .../compile/render_ssr/handlers/DebugTag.d.ts | 3 - .../render_ssr/handlers/EachBlock.d.ts | 3 - .../compile/render_ssr/handlers/Element.d.ts | 3 - .../compile/render_ssr/handlers/Head.d.ts | 3 - .../compile/render_ssr/handlers/HtmlTag.d.ts | 3 - .../compile/render_ssr/handlers/IfBlock.d.ts | 3 - .../render_ssr/handlers/InlineComponent.d.ts | 3 - .../compile/render_ssr/handlers/KeyBlock.d.ts | 3 - .../compile/render_ssr/handlers/Slot.d.ts | 5 - .../render_ssr/handlers/SlotTemplate.d.ts | 5 - .../compile/render_ssr/handlers/Tag.d.ts | 2 - .../compile/render_ssr/handlers/Text.d.ts | 3 - .../compile/render_ssr/handlers/Title.d.ts | 3 - .../handlers/shared/boolean_attributes.d.ts | 1 - .../handlers/shared/get_attribute_value.d.ts | 5 - .../handlers/shared/get_const_tags.d.ts | 10 - .../handlers/shared/get_slot_scope.d.ts | 3 - .../utils/remove_whitespace_children.d.ts | 2 - .../compiler/compile/render_ssr/index.d.ts | 7 - .../compiler/compile/utils/__test__.d.ts | 1 - .../compiler/compile/utils/add_to_set.d.ts | 1 - .../compile/utils/check_enable_sourcemap.d.ts | 2 - .../compile/utils/check_graph_for_cycles.d.ts | 1 - .../compiler/compile/utils/compare_node.d.ts | 2 - .../compile/utils/flatten_reference.d.ts | 6 - .../compile/utils/get_name_from_filename.d.ts | 1 - .../compiler/compile/utils/get_object.d.ts | 2 - .../compiler/compile/utils/get_slot_data.d.ts | 15 - .../types/compiler/compile/utils/hash.d.ts | 1 - .../compile/utils/is_used_as_reference.d.ts | 2 - .../utils/nodes_to_template_literal.d.ts | 7 - .../compile/utils/replace_object.d.ts | 2 - .../compile/utils/reserved_keywords.d.ts | 2 - .../types/compiler/compile/utils/scope.d.ts | 8 - .../utils/string_to_member_expression.d.ts | 2 - .../compiler/compile/utils/stringify.d.ts | 9 - .../svelte/types/compiler/config.d.ts | 1 - .../svelte/types/compiler/index.d.ts | 5 - .../svelte/types/compiler/interfaces.d.ts | 186 - .../svelte/types/compiler/parse/acorn.d.ts | 3 - .../svelte/types/compiler/parse/errors.d.ts | 1 - .../svelte/types/compiler/parse/index.d.ts | 38 - .../types/compiler/parse/read/context.d.ts | 6 - .../types/compiler/parse/read/expression.d.ts | 3 - .../types/compiler/parse/read/script.d.ts | 4 - .../types/compiler/parse/read/style.d.ts | 4 - .../types/compiler/parse/state/fragment.d.ts | 3 - .../types/compiler/parse/state/mustache.d.ts | 2 - .../types/compiler/parse/state/tag.d.ts | 2 - .../types/compiler/parse/state/text.d.ts | 2 - .../types/compiler/parse/utils/bracket.d.ts | 4 - .../types/compiler/parse/utils/entities.d.ts | 2034 - .../types/compiler/parse/utils/html.d.ts | 2 - .../types/compiler/parse/utils/node.d.ts | 2 - .../compiler/preprocess/decode_sourcemap.d.ts | 2 - .../types/compiler/preprocess/index.d.ts | 5 - .../compiler/preprocess/replace_in_code.d.ts | 4 - .../types/compiler/preprocess/types.d.ts | 27 - .../svelte/types/compiler/utils/clone.d.ts | 1 - .../svelte/types/compiler/utils/error.d.ts | 8 - .../compiler/utils/extract_svelte_ignore.d.ts | 8 - .../svelte/types/compiler/utils/flatten.d.ts | 2 - .../compiler/utils/full_char_code_at.d.ts | 1 - .../types/compiler/utils/fuzzymatch.d.ts | 1 - .../types/compiler/utils/get_code_frame.d.ts | 1 - .../svelte/types/compiler/utils/link.d.ts | 4 - .../svelte/types/compiler/utils/list.d.ts | 1 - .../types/compiler/utils/mapped_code.d.ts | 23 - .../svelte/types/compiler/utils/names.d.ts | 5 - .../types/compiler/utils/namespaces.d.ts | 9 - .../types/compiler/utils/nodes_match.d.ts | 1 - .../svelte/types/compiler/utils/patterns.d.ts | 4 - .../svelte/types/compiler/utils/trim.d.ts | 2 - .../svelte/types/runtime/ambient.d.ts | 3 - .../svelte/types/runtime/animate/index.d.ts | 16 - .../svelte/types/runtime/easing/index.d.ts | 31 - .../svelte/types/runtime/index.d.ts | 2 - .../types/runtime/internal/Component.d.ts | 54 - .../types/runtime/internal/animations.d.ts | 11 - .../types/runtime/internal/await_block.d.ts | 2 - .../svelte/types/runtime/internal/dev.d.ts | 125 - .../svelte/types/runtime/internal/dom.d.ts | 99 - .../types/runtime/internal/environment.d.ts | 6 - .../types/runtime/internal/globals.d.ts | 1 - .../svelte/types/runtime/internal/index.d.ts | 15 - .../types/runtime/internal/keyed_each.d.ts | 6 - .../types/runtime/internal/lifecycle.d.ts | 13 - .../svelte/types/runtime/internal/loop.d.ts | 15 - .../types/runtime/internal/scheduler.d.ts | 10 - .../svelte/types/runtime/internal/spread.d.ts | 2 - .../svelte/types/runtime/internal/ssr.d.ts | 36 - .../types/runtime/internal/style_manager.d.ts | 3 - .../types/runtime/internal/transitions.d.ts | 20 - .../svelte/types/runtime/internal/utils.d.ts | 31 - .../svelte/types/runtime/motion/index.d.ts | 2 - .../svelte/types/runtime/motion/spring.d.ts | 20 - .../svelte/types/runtime/motion/tweened.d.ts | 14 - .../svelte/types/runtime/motion/utils.d.ts | 1 - .../svelte/types/runtime/ssr.d.ts | 4 - .../svelte/types/runtime/store/index.d.ts | 82 - .../types/runtime/transition/index.d.ts | 66 - 1292 files changed, 2 insertions(+), 122556 deletions(-) delete mode 100644 packages/frontend-core/node_modules/lodash/LICENSE delete mode 100644 packages/frontend-core/node_modules/lodash/README.md delete mode 100644 packages/frontend-core/node_modules/lodash/_DataView.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Hash.js delete mode 100644 packages/frontend-core/node_modules/lodash/_LazyWrapper.js delete mode 100644 packages/frontend-core/node_modules/lodash/_ListCache.js delete mode 100644 packages/frontend-core/node_modules/lodash/_LodashWrapper.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Map.js delete mode 100644 packages/frontend-core/node_modules/lodash/_MapCache.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Promise.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Set.js delete mode 100644 packages/frontend-core/node_modules/lodash/_SetCache.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Stack.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Symbol.js delete mode 100644 packages/frontend-core/node_modules/lodash/_Uint8Array.js delete mode 100644 packages/frontend-core/node_modules/lodash/_WeakMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_apply.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayAggregator.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayEach.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayEachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayEvery.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayFilter.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayIncludes.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayIncludesWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayLikeKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayPush.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayReduce.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayReduceRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arraySample.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arraySampleSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arrayShuffle.js delete mode 100644 packages/frontend-core/node_modules/lodash/_arraySome.js delete mode 100644 packages/frontend-core/node_modules/lodash/_asciiSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/_asciiToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_asciiWords.js delete mode 100644 packages/frontend-core/node_modules/lodash/_assignMergeValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_assignValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_assocIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseAggregator.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseAssign.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseAssignIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseAssignValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseClamp.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseClone.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseConforms.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseConformsTo.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseCreate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseDelay.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseDifference.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseEach.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseEachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseEvery.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseExtremum.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFill.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFilter.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFindIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFindKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFlatten.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFor.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseForOwn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseForOwnRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseForRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseFunctions.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseGetAllKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseGetTag.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseGt.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseHasIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseInRange.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIndexOfWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIntersection.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseInverter.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseInvoke.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsArguments.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsArrayBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsDate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsEqual.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsEqualDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsMatch.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsNaN.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsNative.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIsTypedArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseIteratee.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseKeysIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseLodash.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseLt.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMatches.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMatchesProperty.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMean.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMerge.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseMergeDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseNth.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseOrderBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePick.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePickBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseProperty.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePropertyDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePropertyOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePullAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/_basePullAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseRandom.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseRange.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseReduce.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseRepeat.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseRest.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSample.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSampleSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSetData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSetToString.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseShuffle.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSlice.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSome.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSortBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedIndexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSortedUniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseSum.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseTimes.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseToNumber.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseToPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseToString.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseTrim.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseUnary.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseUniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseUnset.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseUpdate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseValues.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseWrapperValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseXor.js delete mode 100644 packages/frontend-core/node_modules/lodash/_baseZipObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cacheHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_castArrayLikeObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/_castFunction.js delete mode 100644 packages/frontend-core/node_modules/lodash/_castPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/_castRest.js delete mode 100644 packages/frontend-core/node_modules/lodash/_castSlice.js delete mode 100644 packages/frontend-core/node_modules/lodash/_charsEndIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_charsStartIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneArrayBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneDataView.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneSymbol.js delete mode 100644 packages/frontend-core/node_modules/lodash/_cloneTypedArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_compareAscending.js delete mode 100644 packages/frontend-core/node_modules/lodash/_compareMultiple.js delete mode 100644 packages/frontend-core/node_modules/lodash/_composeArgs.js delete mode 100644 packages/frontend-core/node_modules/lodash/_composeArgsRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/_copyArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_copyObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/_copySymbols.js delete mode 100644 packages/frontend-core/node_modules/lodash/_copySymbolsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_coreJsData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_countHolders.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createAggregator.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createAssigner.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createBaseEach.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createBaseFor.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createBind.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createCaseFirst.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createCompounder.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createCtor.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createCurry.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createFind.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createFlow.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createHybrid.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createInverter.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createMathOperation.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createOver.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createPadding.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createPartial.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createRange.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createRecurry.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createRelationalOperation.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createRound.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createToPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/_createWrap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_customDefaultsAssignIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_customDefaultsMerge.js delete mode 100644 packages/frontend-core/node_modules/lodash/_customOmitClone.js delete mode 100644 packages/frontend-core/node_modules/lodash/_deburrLetter.js delete mode 100644 packages/frontend-core/node_modules/lodash/_defineProperty.js delete mode 100644 packages/frontend-core/node_modules/lodash/_equalArrays.js delete mode 100644 packages/frontend-core/node_modules/lodash/_equalByTag.js delete mode 100644 packages/frontend-core/node_modules/lodash/_equalObjects.js delete mode 100644 packages/frontend-core/node_modules/lodash/_escapeHtmlChar.js delete mode 100644 packages/frontend-core/node_modules/lodash/_escapeStringChar.js delete mode 100644 packages/frontend-core/node_modules/lodash/_flatRest.js delete mode 100644 packages/frontend-core/node_modules/lodash/_freeGlobal.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getAllKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getAllKeysIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getFuncName.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getHolder.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getMapData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getMatchData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getNative.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getPrototype.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getRawTag.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getSymbols.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getSymbolsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getTag.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getView.js delete mode 100644 packages/frontend-core/node_modules/lodash/_getWrapDetails.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hasPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hasUnicode.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hasUnicodeWord.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hashClear.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hashDelete.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hashGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hashHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_hashSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_initCloneArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_initCloneByTag.js delete mode 100644 packages/frontend-core/node_modules/lodash/_initCloneObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/_insertWrapDetails.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isFlattenable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isIterateeCall.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isKeyable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isLaziable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isMaskable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isMasked.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isPrototype.js delete mode 100644 packages/frontend-core/node_modules/lodash/_isStrictComparable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_iteratorToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_lazyClone.js delete mode 100644 packages/frontend-core/node_modules/lodash/_lazyReverse.js delete mode 100644 packages/frontend-core/node_modules/lodash/_lazyValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/_listCacheClear.js delete mode 100644 packages/frontend-core/node_modules/lodash/_listCacheDelete.js delete mode 100644 packages/frontend-core/node_modules/lodash/_listCacheGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_listCacheHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_listCacheSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheClear.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheDelete.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapCacheSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mapToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_matchesStrictComparable.js delete mode 100644 packages/frontend-core/node_modules/lodash/_memoizeCapped.js delete mode 100644 packages/frontend-core/node_modules/lodash/_mergeData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_metaMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/_nativeCreate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_nativeKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/_nativeKeysIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/_nodeUtil.js delete mode 100644 packages/frontend-core/node_modules/lodash/_objectToString.js delete mode 100644 packages/frontend-core/node_modules/lodash/_overArg.js delete mode 100644 packages/frontend-core/node_modules/lodash/_overRest.js delete mode 100644 packages/frontend-core/node_modules/lodash/_parent.js delete mode 100644 packages/frontend-core/node_modules/lodash/_reEscape.js delete mode 100644 packages/frontend-core/node_modules/lodash/_reEvaluate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_reInterpolate.js delete mode 100644 packages/frontend-core/node_modules/lodash/_realNames.js delete mode 100644 packages/frontend-core/node_modules/lodash/_reorder.js delete mode 100644 packages/frontend-core/node_modules/lodash/_replaceHolders.js delete mode 100644 packages/frontend-core/node_modules/lodash/_root.js delete mode 100644 packages/frontend-core/node_modules/lodash/_safeGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setCacheAdd.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setCacheHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setData.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setToPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setToString.js delete mode 100644 packages/frontend-core/node_modules/lodash/_setWrapToString.js delete mode 100644 packages/frontend-core/node_modules/lodash/_shortOut.js delete mode 100644 packages/frontend-core/node_modules/lodash/_shuffleSelf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stackClear.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stackDelete.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stackGet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stackHas.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stackSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/_strictIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_strictLastIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stringSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stringToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_stringToPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/_toKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/_toSource.js delete mode 100644 packages/frontend-core/node_modules/lodash/_trimmedEndIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/_unescapeHtmlChar.js delete mode 100644 packages/frontend-core/node_modules/lodash/_unicodeSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/_unicodeToArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/_unicodeWords.js delete mode 100644 packages/frontend-core/node_modules/lodash/_updateWrapDetails.js delete mode 100644 packages/frontend-core/node_modules/lodash/_wrapperClone.js delete mode 100644 packages/frontend-core/node_modules/lodash/add.js delete mode 100644 packages/frontend-core/node_modules/lodash/after.js delete mode 100644 packages/frontend-core/node_modules/lodash/array.js delete mode 100644 packages/frontend-core/node_modules/lodash/ary.js delete mode 100644 packages/frontend-core/node_modules/lodash/assign.js delete mode 100644 packages/frontend-core/node_modules/lodash/assignIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/assignInWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/assignWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/at.js delete mode 100644 packages/frontend-core/node_modules/lodash/attempt.js delete mode 100644 packages/frontend-core/node_modules/lodash/before.js delete mode 100644 packages/frontend-core/node_modules/lodash/bind.js delete mode 100644 packages/frontend-core/node_modules/lodash/bindAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/bindKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/camelCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/capitalize.js delete mode 100644 packages/frontend-core/node_modules/lodash/castArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/ceil.js delete mode 100644 packages/frontend-core/node_modules/lodash/chain.js delete mode 100644 packages/frontend-core/node_modules/lodash/chunk.js delete mode 100644 packages/frontend-core/node_modules/lodash/clamp.js delete mode 100644 packages/frontend-core/node_modules/lodash/clone.js delete mode 100644 packages/frontend-core/node_modules/lodash/cloneDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/cloneDeepWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/cloneWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/collection.js delete mode 100644 packages/frontend-core/node_modules/lodash/commit.js delete mode 100644 packages/frontend-core/node_modules/lodash/compact.js delete mode 100644 packages/frontend-core/node_modules/lodash/concat.js delete mode 100644 packages/frontend-core/node_modules/lodash/cond.js delete mode 100644 packages/frontend-core/node_modules/lodash/conforms.js delete mode 100644 packages/frontend-core/node_modules/lodash/conformsTo.js delete mode 100644 packages/frontend-core/node_modules/lodash/constant.js delete mode 100644 packages/frontend-core/node_modules/lodash/core.js delete mode 100644 packages/frontend-core/node_modules/lodash/core.min.js delete mode 100644 packages/frontend-core/node_modules/lodash/countBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/create.js delete mode 100644 packages/frontend-core/node_modules/lodash/curry.js delete mode 100644 packages/frontend-core/node_modules/lodash/curryRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/date.js delete mode 100644 packages/frontend-core/node_modules/lodash/debounce.js delete mode 100644 packages/frontend-core/node_modules/lodash/deburr.js delete mode 100644 packages/frontend-core/node_modules/lodash/defaultTo.js delete mode 100644 packages/frontend-core/node_modules/lodash/defaults.js delete mode 100644 packages/frontend-core/node_modules/lodash/defaultsDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/defer.js delete mode 100644 packages/frontend-core/node_modules/lodash/delay.js delete mode 100644 packages/frontend-core/node_modules/lodash/difference.js delete mode 100644 packages/frontend-core/node_modules/lodash/differenceBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/differenceWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/divide.js delete mode 100644 packages/frontend-core/node_modules/lodash/drop.js delete mode 100644 packages/frontend-core/node_modules/lodash/dropRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/dropRightWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/dropWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/each.js delete mode 100644 packages/frontend-core/node_modules/lodash/eachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/endsWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/entries.js delete mode 100644 packages/frontend-core/node_modules/lodash/entriesIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/eq.js delete mode 100644 packages/frontend-core/node_modules/lodash/escape.js delete mode 100644 packages/frontend-core/node_modules/lodash/escapeRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/every.js delete mode 100644 packages/frontend-core/node_modules/lodash/extend.js delete mode 100644 packages/frontend-core/node_modules/lodash/extendWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fill.js delete mode 100644 packages/frontend-core/node_modules/lodash/filter.js delete mode 100644 packages/frontend-core/node_modules/lodash/find.js delete mode 100644 packages/frontend-core/node_modules/lodash/findIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/findKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/findLast.js delete mode 100644 packages/frontend-core/node_modules/lodash/findLastIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/findLastKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/first.js delete mode 100644 packages/frontend-core/node_modules/lodash/flake.lock delete mode 100644 packages/frontend-core/node_modules/lodash/flake.nix delete mode 100644 packages/frontend-core/node_modules/lodash/flatMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/flatMapDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/flatMapDepth.js delete mode 100644 packages/frontend-core/node_modules/lodash/flatten.js delete mode 100644 packages/frontend-core/node_modules/lodash/flattenDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/flattenDepth.js delete mode 100644 packages/frontend-core/node_modules/lodash/flip.js delete mode 100644 packages/frontend-core/node_modules/lodash/floor.js delete mode 100644 packages/frontend-core/node_modules/lodash/flow.js delete mode 100644 packages/frontend-core/node_modules/lodash/flowRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/forEach.js delete mode 100644 packages/frontend-core/node_modules/lodash/forEachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/forIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/forInRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/forOwn.js delete mode 100644 packages/frontend-core/node_modules/lodash/forOwnRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/F.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/T.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/__.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/_baseConvert.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/_convertBrowser.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/_falseOptions.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/_mapping.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/_util.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/add.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/after.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/all.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/allPass.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/always.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/any.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/anyPass.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/apply.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/array.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/ary.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assign.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignInWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assignWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assoc.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/assocPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/at.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/attempt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/before.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/bind.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/bindAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/bindKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/camelCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/capitalize.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/castArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/ceil.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/chain.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/chunk.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/clamp.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/clone.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneDeepWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/cloneWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/collection.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/commit.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/compact.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/complement.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/compose.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/concat.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/cond.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/conforms.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/conformsTo.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/constant.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/contains.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/convert.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/countBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/create.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/curry.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/curryN.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/curryRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/curryRightN.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/date.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/debounce.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/deburr.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultTo.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defaults.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defaultsDeepAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/defer.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/delay.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/difference.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/differenceBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/differenceWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dissoc.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dissocPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/divide.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/drop.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dropLast.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dropLastWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dropRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dropRightWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/dropWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/each.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/eachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/endsWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/entries.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/entriesIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/eq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/equals.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/escape.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/escapeRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/every.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/extend.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/extendAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/extendAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/extendWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/fill.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/filter.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/find.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findIndexFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findLast.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastIndexFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/findLastKey.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/first.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMapDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flatMapDepth.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flatten.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flattenDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flattenDepth.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flip.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/floor.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flow.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/flowRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forEach.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forEachRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forInRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forOwn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/forOwnRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/fromPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/function.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/functions.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/functionsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/get.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/getOr.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/groupBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/gt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/gte.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/has.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/hasIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/head.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/identical.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/identity.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/inRange.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/includes.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/includesFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/indexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/indexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/indexOfFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/init.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/initial.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/intersection.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/intersectionBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/intersectionWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invert.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invertBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invertObj.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invoke.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeArgs.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeArgsMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/invokeMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isArguments.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayLike.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isArrayLikeObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isBoolean.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isDate.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isElement.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isEmpty.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isEqual.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isEqualWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isError.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isFinite.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isFunction.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isLength.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isMatch.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isMatchWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isNaN.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isNative.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isNil.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isNull.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isNumber.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isObjectLike.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isPlainObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isSafeInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isString.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isSymbol.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isTypedArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isUndefined.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isWeakMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/isWeakSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/iteratee.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/join.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/juxt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/kebabCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/keyBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/keys.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/keysIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lang.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/last.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lastIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lastIndexOfFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lowerCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lowerFirst.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/lte.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/map.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mapKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mapValues.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/matches.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/matchesProperty.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/math.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/max.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/maxBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mean.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/meanBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/memoize.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/merge.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mergeWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/method.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/methodOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/min.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/minBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/mixin.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/multiply.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/nAry.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/negate.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/next.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/noop.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/now.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/nth.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/nthArg.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/number.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/object.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/omit.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/omitAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/omitBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/once.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/orderBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/over.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/overArgs.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/overEvery.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/overSome.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pad.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/padChars.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/padCharsEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/padCharsStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/padEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/padStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/parseInt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/partial.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/partialRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/partition.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/path.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pathEq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pathOr.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/paths.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pick.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pickAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pickBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pipe.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/placeholder.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/plant.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pluck.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/prop.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/propEq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/propOr.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/property.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/propertyOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/props.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pull.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAllBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/pullAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/random.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/range.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeStep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/rangeStepRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/rearg.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/reduce.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/reduceRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/reject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/remove.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/repeat.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/replace.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/rest.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/restFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/result.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/reverse.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/round.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sample.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sampleSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/seq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/set.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/setWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/shuffle.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/size.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/slice.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/snakeCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/some.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedLastIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedUniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sortedUniqBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/split.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/spread.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/spreadFrom.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/startCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/startsWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/string.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/stubArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/stubFalse.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/stubObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/stubString.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/stubTrue.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/subtract.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sum.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/sumBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifference.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/tail.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/take.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/takeLast.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/takeLastWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/takeRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/takeRightWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/takeWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/tap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/template.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/templateSettings.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/throttle.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/thru.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/times.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toFinite.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toIterator.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toJSON.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toLength.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toLower.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toNumber.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toPairsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toPlainObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toSafeInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toString.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/toUpper.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/transform.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trim.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trimChars.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trimCharsEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trimCharsStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trimEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/trimStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/truncate.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unapply.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unary.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unescape.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/union.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unionBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unionWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/uniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/uniqueId.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unnest.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unset.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unzip.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/unzipWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/update.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/updateWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/upperCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/upperFirst.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/useWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/util.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/value.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/valueOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/values.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/valuesIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/where.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/whereEq.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/without.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/words.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrap.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperChain.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperLodash.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperReverse.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/wrapperValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/xor.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/xorBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/xorWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zip.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zipAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObj.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zipObjectDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/fp/zipWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/fromPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/function.js delete mode 100644 packages/frontend-core/node_modules/lodash/functions.js delete mode 100644 packages/frontend-core/node_modules/lodash/functionsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/get.js delete mode 100644 packages/frontend-core/node_modules/lodash/groupBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/gt.js delete mode 100644 packages/frontend-core/node_modules/lodash/gte.js delete mode 100644 packages/frontend-core/node_modules/lodash/has.js delete mode 100644 packages/frontend-core/node_modules/lodash/hasIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/head.js delete mode 100644 packages/frontend-core/node_modules/lodash/identity.js delete mode 100644 packages/frontend-core/node_modules/lodash/inRange.js delete mode 100644 packages/frontend-core/node_modules/lodash/includes.js delete mode 100644 packages/frontend-core/node_modules/lodash/index.js delete mode 100644 packages/frontend-core/node_modules/lodash/indexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/initial.js delete mode 100644 packages/frontend-core/node_modules/lodash/intersection.js delete mode 100644 packages/frontend-core/node_modules/lodash/intersectionBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/intersectionWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/invert.js delete mode 100644 packages/frontend-core/node_modules/lodash/invertBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/invoke.js delete mode 100644 packages/frontend-core/node_modules/lodash/invokeMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/isArguments.js delete mode 100644 packages/frontend-core/node_modules/lodash/isArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/isArrayBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/isArrayLike.js delete mode 100644 packages/frontend-core/node_modules/lodash/isArrayLikeObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/isBoolean.js delete mode 100644 packages/frontend-core/node_modules/lodash/isBuffer.js delete mode 100644 packages/frontend-core/node_modules/lodash/isDate.js delete mode 100644 packages/frontend-core/node_modules/lodash/isElement.js delete mode 100644 packages/frontend-core/node_modules/lodash/isEmpty.js delete mode 100644 packages/frontend-core/node_modules/lodash/isEqual.js delete mode 100644 packages/frontend-core/node_modules/lodash/isEqualWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/isError.js delete mode 100644 packages/frontend-core/node_modules/lodash/isFinite.js delete mode 100644 packages/frontend-core/node_modules/lodash/isFunction.js delete mode 100644 packages/frontend-core/node_modules/lodash/isInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/isLength.js delete mode 100644 packages/frontend-core/node_modules/lodash/isMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/isMatch.js delete mode 100644 packages/frontend-core/node_modules/lodash/isMatchWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/isNaN.js delete mode 100644 packages/frontend-core/node_modules/lodash/isNative.js delete mode 100644 packages/frontend-core/node_modules/lodash/isNil.js delete mode 100644 packages/frontend-core/node_modules/lodash/isNull.js delete mode 100644 packages/frontend-core/node_modules/lodash/isNumber.js delete mode 100644 packages/frontend-core/node_modules/lodash/isObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/isObjectLike.js delete mode 100644 packages/frontend-core/node_modules/lodash/isPlainObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/isRegExp.js delete mode 100644 packages/frontend-core/node_modules/lodash/isSafeInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/isSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/isString.js delete mode 100644 packages/frontend-core/node_modules/lodash/isSymbol.js delete mode 100644 packages/frontend-core/node_modules/lodash/isTypedArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/isUndefined.js delete mode 100644 packages/frontend-core/node_modules/lodash/isWeakMap.js delete mode 100644 packages/frontend-core/node_modules/lodash/isWeakSet.js delete mode 100644 packages/frontend-core/node_modules/lodash/iteratee.js delete mode 100644 packages/frontend-core/node_modules/lodash/join.js delete mode 100644 packages/frontend-core/node_modules/lodash/kebabCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/keyBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/keys.js delete mode 100644 packages/frontend-core/node_modules/lodash/keysIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/lang.js delete mode 100644 packages/frontend-core/node_modules/lodash/last.js delete mode 100644 packages/frontend-core/node_modules/lodash/lastIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/lodash.js delete mode 100644 packages/frontend-core/node_modules/lodash/lodash.min.js delete mode 100644 packages/frontend-core/node_modules/lodash/lowerCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/lowerFirst.js delete mode 100644 packages/frontend-core/node_modules/lodash/lt.js delete mode 100644 packages/frontend-core/node_modules/lodash/lte.js delete mode 100644 packages/frontend-core/node_modules/lodash/map.js delete mode 100644 packages/frontend-core/node_modules/lodash/mapKeys.js delete mode 100644 packages/frontend-core/node_modules/lodash/mapValues.js delete mode 100644 packages/frontend-core/node_modules/lodash/matches.js delete mode 100644 packages/frontend-core/node_modules/lodash/matchesProperty.js delete mode 100644 packages/frontend-core/node_modules/lodash/math.js delete mode 100644 packages/frontend-core/node_modules/lodash/max.js delete mode 100644 packages/frontend-core/node_modules/lodash/maxBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/mean.js delete mode 100644 packages/frontend-core/node_modules/lodash/meanBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/memoize.js delete mode 100644 packages/frontend-core/node_modules/lodash/merge.js delete mode 100644 packages/frontend-core/node_modules/lodash/mergeWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/method.js delete mode 100644 packages/frontend-core/node_modules/lodash/methodOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/min.js delete mode 100644 packages/frontend-core/node_modules/lodash/minBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/mixin.js delete mode 100644 packages/frontend-core/node_modules/lodash/multiply.js delete mode 100644 packages/frontend-core/node_modules/lodash/negate.js delete mode 100644 packages/frontend-core/node_modules/lodash/next.js delete mode 100644 packages/frontend-core/node_modules/lodash/noop.js delete mode 100644 packages/frontend-core/node_modules/lodash/now.js delete mode 100644 packages/frontend-core/node_modules/lodash/nth.js delete mode 100644 packages/frontend-core/node_modules/lodash/nthArg.js delete mode 100644 packages/frontend-core/node_modules/lodash/number.js delete mode 100644 packages/frontend-core/node_modules/lodash/object.js delete mode 100644 packages/frontend-core/node_modules/lodash/omit.js delete mode 100644 packages/frontend-core/node_modules/lodash/omitBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/once.js delete mode 100644 packages/frontend-core/node_modules/lodash/orderBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/over.js delete mode 100644 packages/frontend-core/node_modules/lodash/overArgs.js delete mode 100644 packages/frontend-core/node_modules/lodash/overEvery.js delete mode 100644 packages/frontend-core/node_modules/lodash/overSome.js delete mode 100644 packages/frontend-core/node_modules/lodash/package.json delete mode 100644 packages/frontend-core/node_modules/lodash/pad.js delete mode 100644 packages/frontend-core/node_modules/lodash/padEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/padStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/parseInt.js delete mode 100644 packages/frontend-core/node_modules/lodash/partial.js delete mode 100644 packages/frontend-core/node_modules/lodash/partialRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/partition.js delete mode 100644 packages/frontend-core/node_modules/lodash/pick.js delete mode 100644 packages/frontend-core/node_modules/lodash/pickBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/plant.js delete mode 100644 packages/frontend-core/node_modules/lodash/property.js delete mode 100644 packages/frontend-core/node_modules/lodash/propertyOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/pull.js delete mode 100644 packages/frontend-core/node_modules/lodash/pullAll.js delete mode 100644 packages/frontend-core/node_modules/lodash/pullAllBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/pullAllWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/pullAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/random.js delete mode 100644 packages/frontend-core/node_modules/lodash/range.js delete mode 100644 packages/frontend-core/node_modules/lodash/rangeRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/rearg.js delete mode 100644 packages/frontend-core/node_modules/lodash/reduce.js delete mode 100644 packages/frontend-core/node_modules/lodash/reduceRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/reject.js delete mode 100644 packages/frontend-core/node_modules/lodash/release.md delete mode 100644 packages/frontend-core/node_modules/lodash/remove.js delete mode 100644 packages/frontend-core/node_modules/lodash/repeat.js delete mode 100644 packages/frontend-core/node_modules/lodash/replace.js delete mode 100644 packages/frontend-core/node_modules/lodash/rest.js delete mode 100644 packages/frontend-core/node_modules/lodash/result.js delete mode 100644 packages/frontend-core/node_modules/lodash/reverse.js delete mode 100644 packages/frontend-core/node_modules/lodash/round.js delete mode 100644 packages/frontend-core/node_modules/lodash/sample.js delete mode 100644 packages/frontend-core/node_modules/lodash/sampleSize.js delete mode 100644 packages/frontend-core/node_modules/lodash/seq.js delete mode 100644 packages/frontend-core/node_modules/lodash/set.js delete mode 100644 packages/frontend-core/node_modules/lodash/setWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/shuffle.js delete mode 100644 packages/frontend-core/node_modules/lodash/size.js delete mode 100644 packages/frontend-core/node_modules/lodash/slice.js delete mode 100644 packages/frontend-core/node_modules/lodash/snakeCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/some.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedIndexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndex.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndexBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedLastIndexOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedUniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/sortedUniqBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/split.js delete mode 100644 packages/frontend-core/node_modules/lodash/spread.js delete mode 100644 packages/frontend-core/node_modules/lodash/startCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/startsWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/string.js delete mode 100644 packages/frontend-core/node_modules/lodash/stubArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/stubFalse.js delete mode 100644 packages/frontend-core/node_modules/lodash/stubObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/stubString.js delete mode 100644 packages/frontend-core/node_modules/lodash/stubTrue.js delete mode 100644 packages/frontend-core/node_modules/lodash/subtract.js delete mode 100644 packages/frontend-core/node_modules/lodash/sum.js delete mode 100644 packages/frontend-core/node_modules/lodash/sumBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/tail.js delete mode 100644 packages/frontend-core/node_modules/lodash/take.js delete mode 100644 packages/frontend-core/node_modules/lodash/takeRight.js delete mode 100644 packages/frontend-core/node_modules/lodash/takeRightWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/takeWhile.js delete mode 100644 packages/frontend-core/node_modules/lodash/tap.js delete mode 100644 packages/frontend-core/node_modules/lodash/template.js delete mode 100644 packages/frontend-core/node_modules/lodash/templateSettings.js delete mode 100644 packages/frontend-core/node_modules/lodash/throttle.js delete mode 100644 packages/frontend-core/node_modules/lodash/thru.js delete mode 100644 packages/frontend-core/node_modules/lodash/times.js delete mode 100644 packages/frontend-core/node_modules/lodash/toArray.js delete mode 100644 packages/frontend-core/node_modules/lodash/toFinite.js delete mode 100644 packages/frontend-core/node_modules/lodash/toInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/toIterator.js delete mode 100644 packages/frontend-core/node_modules/lodash/toJSON.js delete mode 100644 packages/frontend-core/node_modules/lodash/toLength.js delete mode 100644 packages/frontend-core/node_modules/lodash/toLower.js delete mode 100644 packages/frontend-core/node_modules/lodash/toNumber.js delete mode 100644 packages/frontend-core/node_modules/lodash/toPairs.js delete mode 100644 packages/frontend-core/node_modules/lodash/toPairsIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/toPath.js delete mode 100644 packages/frontend-core/node_modules/lodash/toPlainObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/toSafeInteger.js delete mode 100644 packages/frontend-core/node_modules/lodash/toString.js delete mode 100644 packages/frontend-core/node_modules/lodash/toUpper.js delete mode 100644 packages/frontend-core/node_modules/lodash/transform.js delete mode 100644 packages/frontend-core/node_modules/lodash/trim.js delete mode 100644 packages/frontend-core/node_modules/lodash/trimEnd.js delete mode 100644 packages/frontend-core/node_modules/lodash/trimStart.js delete mode 100644 packages/frontend-core/node_modules/lodash/truncate.js delete mode 100644 packages/frontend-core/node_modules/lodash/unary.js delete mode 100644 packages/frontend-core/node_modules/lodash/unescape.js delete mode 100644 packages/frontend-core/node_modules/lodash/union.js delete mode 100644 packages/frontend-core/node_modules/lodash/unionBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/unionWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/uniq.js delete mode 100644 packages/frontend-core/node_modules/lodash/uniqBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/uniqWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/uniqueId.js delete mode 100644 packages/frontend-core/node_modules/lodash/unset.js delete mode 100644 packages/frontend-core/node_modules/lodash/unzip.js delete mode 100644 packages/frontend-core/node_modules/lodash/unzipWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/update.js delete mode 100644 packages/frontend-core/node_modules/lodash/updateWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/upperCase.js delete mode 100644 packages/frontend-core/node_modules/lodash/upperFirst.js delete mode 100644 packages/frontend-core/node_modules/lodash/util.js delete mode 100644 packages/frontend-core/node_modules/lodash/value.js delete mode 100644 packages/frontend-core/node_modules/lodash/valueOf.js delete mode 100644 packages/frontend-core/node_modules/lodash/values.js delete mode 100644 packages/frontend-core/node_modules/lodash/valuesIn.js delete mode 100644 packages/frontend-core/node_modules/lodash/without.js delete mode 100644 packages/frontend-core/node_modules/lodash/words.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrap.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrapperAt.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrapperChain.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrapperLodash.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrapperReverse.js delete mode 100644 packages/frontend-core/node_modules/lodash/wrapperValue.js delete mode 100644 packages/frontend-core/node_modules/lodash/xor.js delete mode 100644 packages/frontend-core/node_modules/lodash/xorBy.js delete mode 100644 packages/frontend-core/node_modules/lodash/xorWith.js delete mode 100644 packages/frontend-core/node_modules/lodash/zip.js delete mode 100644 packages/frontend-core/node_modules/lodash/zipObject.js delete mode 100644 packages/frontend-core/node_modules/lodash/zipObjectDeep.js delete mode 100644 packages/frontend-core/node_modules/lodash/zipWith.js delete mode 100644 packages/frontend-core/node_modules/svelte/CHANGELOG.md delete mode 100644 packages/frontend-core/node_modules/svelte/LICENSE.md delete mode 100644 packages/frontend-core/node_modules/svelte/README.md delete mode 100644 packages/frontend-core/node_modules/svelte/animate/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/animate/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/animate/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/animate/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/compiler.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/compiler.js delete mode 100644 packages/frontend-core/node_modules/svelte/compiler.js.map delete mode 100644 packages/frontend-core/node_modules/svelte/compiler.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/compiler.mjs.map delete mode 100644 packages/frontend-core/node_modules/svelte/easing/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/easing/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/easing/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/easing/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/internal/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/internal/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/internal/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/internal/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/motion/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/motion/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/motion/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/motion/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/register.js delete mode 100644 packages/frontend-core/node_modules/svelte/ssr.js delete mode 100644 packages/frontend-core/node_modules/svelte/ssr.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/store/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/store/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/store/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/store/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/transition/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/transition/index.js delete mode 100644 packages/frontend-core/node_modules/svelte/transition/index.mjs delete mode 100644 packages/frontend-core/node_modules/svelte/transition/package.json delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/Stats.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/Component.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_errors.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_warnings.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/create_module.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Selector.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Stylesheet.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/gather_possible_values.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/css/interfaces.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/internal_exports.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Action.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Animation.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Attribute.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/AwaitBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Binding.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Body.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/CatchBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Class.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Comment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ConstTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DebugTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DefaultSlotTemplate.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EachBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Element.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ElseBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EventHandler.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Fragment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Head.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/IfBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/InlineComponent.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/KeyBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Let.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/MustacheTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Options.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/PendingBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/RawMustacheTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Slot.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/SlotTemplate.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Style.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/StyleDirective.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Text.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ThenBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Title.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Transition.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Window.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/interfaces.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/AbstractBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Context.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Expression.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Node.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Tag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/TemplateScope.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/get_const_tags.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/is_contextual.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/map_children.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Block.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Renderer.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/invalidate.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/AwaitBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Body.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/DebugTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/EachBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Attribute.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Binding.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/EventHandler.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/SpreadAttribute.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/StyleAttribute.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/fix_attribute_casing.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/handle_select_value_binding.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Fragment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Head.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/IfBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/InlineComponent/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/KeyBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/MustacheTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/RawMustacheTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Slot.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/SlotTemplate.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Text.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Title.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Window.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Tag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Wrapper.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_actions.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_const_tags.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_event_handlers.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/bind_this.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/create_debugging_comment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/get_slot_definition.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_dynamic.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_head.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/mark_each_block_bindings.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/Renderer.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/AwaitBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Comment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/DebugTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/EachBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Element.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Head.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/HtmlTag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/IfBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/InlineComponent.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/KeyBlock.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Slot.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/SlotTemplate.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Tag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Text.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Title.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/boolean_attributes.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_attribute_value.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_const_tags.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_slot_scope.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/utils/remove_whitespace_children.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/__test__.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/add_to_set.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_enable_sourcemap.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_graph_for_cycles.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/compare_node.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/flatten_reference.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_name_from_filename.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_object.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_slot_data.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/hash.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/is_used_as_reference.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/nodes_to_template_literal.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/replace_object.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/reserved_keywords.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/scope.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/string_to_member_expression.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/stringify.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/config.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/interfaces.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/acorn.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/errors.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/context.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/expression.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/script.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/read/style.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/fragment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/mustache.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/tag.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/state/text.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/bracket.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/entities.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/html.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/node.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/decode_sourcemap.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/replace_in_code.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/preprocess/types.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/clone.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/error.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/extract_svelte_ignore.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/flatten.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/full_char_code_at.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/fuzzymatch.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/get_code_frame.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/link.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/list.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/mapped_code.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/names.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/namespaces.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/nodes_match.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/patterns.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/compiler/utils/trim.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/ambient.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/animate/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/easing/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/Component.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/animations.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/await_block.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/dev.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/dom.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/environment.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/globals.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/keyed_each.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/lifecycle.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/loop.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/scheduler.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/spread.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/ssr.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/style_manager.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/transitions.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/internal/utils.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/spring.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/tweened.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/motion/utils.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/ssr.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/store/index.d.ts delete mode 100644 packages/frontend-core/node_modules/svelte/types/runtime/transition/index.d.ts diff --git a/packages/builder/src/components/backend/DataTable/Table.svelte b/packages/builder/src/components/backend/DataTable/Table.svelte index ab94080959..0333bad611 100644 --- a/packages/builder/src/components/backend/DataTable/Table.svelte +++ b/packages/builder/src/components/backend/DataTable/Table.svelte @@ -2,7 +2,7 @@ import { fade } from "svelte/transition" import { goto, params } from "@roxi/routify" import { Table, Modal, Heading, notifications, Layout } from "@budibase/bbui" - import { API } "api" + import { API } from "api" import Spinner from "components/common/Spinner.svelte" import DeleteRowsButton from "./buttons/DeleteRowsButton.svelte" import CreateEditRow from "./modals/CreateEditRow.svelte" @@ -91,7 +91,7 @@ try { await API.deleteRows({ tableId, - rows: selectedRows + rows: selectedRows, }) data = data.filter(row => !selectedRows.includes(row)) notifications.success(`Successfully deleted ${selectedRows.length} rows`) diff --git a/packages/frontend-core/node_modules/lodash/LICENSE b/packages/frontend-core/node_modules/lodash/LICENSE deleted file mode 100644 index 77c42f1408..0000000000 --- a/packages/frontend-core/node_modules/lodash/LICENSE +++ /dev/null @@ -1,47 +0,0 @@ -Copyright OpenJS Foundation and other contributors - -Based on Underscore.js, copyright Jeremy Ashkenas, -DocumentCloud and Investigative Reporters & Editors - -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -available at https://github.com/lodash/lodash - -The following license applies to all parts of this software except as -documented below: - -==== - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==== - -Copyright and related rights for sample code are waived via CC0. Sample -code is defined as all source code displayed within the prose of the -documentation. - -CC0: http://creativecommons.org/publicdomain/zero/1.0/ - -==== - -Files located in the node_modules and vendor directories are externally -maintained libraries used by this software which have their own -licenses; we recommend you read them, as their terms may differ from the -terms above. diff --git a/packages/frontend-core/node_modules/lodash/README.md b/packages/frontend-core/node_modules/lodash/README.md deleted file mode 100644 index 3ab1a05ce7..0000000000 --- a/packages/frontend-core/node_modules/lodash/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# lodash v4.17.21 - -The [Lodash](https://lodash.com/) library exported as [Node.js](https://nodejs.org/) modules. - -## Installation - -Using npm: -```shell -$ npm i -g npm -$ npm i --save lodash -``` - -In Node.js: -```js -// Load the full build. -var _ = require('lodash'); -// Load the core build. -var _ = require('lodash/core'); -// Load the FP build for immutable auto-curried iteratee-first data-last methods. -var fp = require('lodash/fp'); - -// Load method categories. -var array = require('lodash/array'); -var object = require('lodash/fp/object'); - -// Cherry-pick methods for smaller browserify/rollup/webpack bundles. -var at = require('lodash/at'); -var curryN = require('lodash/fp/curryN'); -``` - -See the [package source](https://github.com/lodash/lodash/tree/4.17.21-npm) for more details. - -**Note:**
-Install [n_](https://www.npmjs.com/package/n_) for Lodash use in the Node.js < 6 REPL. - -## Support - -Tested in Chrome 74-75, Firefox 66-67, IE 11, Edge 18, Safari 11-12, & Node.js 8-12.
-Automated [browser](https://saucelabs.com/u/lodash) & [CI](https://travis-ci.org/lodash/lodash/) test runs are available. diff --git a/packages/frontend-core/node_modules/lodash/_DataView.js b/packages/frontend-core/node_modules/lodash/_DataView.js deleted file mode 100644 index ac2d57ca67..0000000000 --- a/packages/frontend-core/node_modules/lodash/_DataView.js +++ /dev/null @@ -1,7 +0,0 @@ -var getNative = require('./_getNative'), - root = require('./_root'); - -/* Built-in method references that are verified to be native. */ -var DataView = getNative(root, 'DataView'); - -module.exports = DataView; diff --git a/packages/frontend-core/node_modules/lodash/_Hash.js b/packages/frontend-core/node_modules/lodash/_Hash.js deleted file mode 100644 index b504fe3407..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Hash.js +++ /dev/null @@ -1,32 +0,0 @@ -var hashClear = require('./_hashClear'), - hashDelete = require('./_hashDelete'), - hashGet = require('./_hashGet'), - hashHas = require('./_hashHas'), - hashSet = require('./_hashSet'); - -/** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Hash(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `Hash`. -Hash.prototype.clear = hashClear; -Hash.prototype['delete'] = hashDelete; -Hash.prototype.get = hashGet; -Hash.prototype.has = hashHas; -Hash.prototype.set = hashSet; - -module.exports = Hash; diff --git a/packages/frontend-core/node_modules/lodash/_LazyWrapper.js b/packages/frontend-core/node_modules/lodash/_LazyWrapper.js deleted file mode 100644 index 81786c7f1e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_LazyWrapper.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseCreate = require('./_baseCreate'), - baseLodash = require('./_baseLodash'); - -/** Used as references for the maximum length and index of an array. */ -var MAX_ARRAY_LENGTH = 4294967295; - -/** - * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. - * - * @private - * @constructor - * @param {*} value The value to wrap. - */ -function LazyWrapper(value) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__dir__ = 1; - this.__filtered__ = false; - this.__iteratees__ = []; - this.__takeCount__ = MAX_ARRAY_LENGTH; - this.__views__ = []; -} - -// Ensure `LazyWrapper` is an instance of `baseLodash`. -LazyWrapper.prototype = baseCreate(baseLodash.prototype); -LazyWrapper.prototype.constructor = LazyWrapper; - -module.exports = LazyWrapper; diff --git a/packages/frontend-core/node_modules/lodash/_ListCache.js b/packages/frontend-core/node_modules/lodash/_ListCache.js deleted file mode 100644 index 26895c3a8d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_ListCache.js +++ /dev/null @@ -1,32 +0,0 @@ -var listCacheClear = require('./_listCacheClear'), - listCacheDelete = require('./_listCacheDelete'), - listCacheGet = require('./_listCacheGet'), - listCacheHas = require('./_listCacheHas'), - listCacheSet = require('./_listCacheSet'); - -/** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function ListCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `ListCache`. -ListCache.prototype.clear = listCacheClear; -ListCache.prototype['delete'] = listCacheDelete; -ListCache.prototype.get = listCacheGet; -ListCache.prototype.has = listCacheHas; -ListCache.prototype.set = listCacheSet; - -module.exports = ListCache; diff --git a/packages/frontend-core/node_modules/lodash/_LodashWrapper.js b/packages/frontend-core/node_modules/lodash/_LodashWrapper.js deleted file mode 100644 index c1e4d9df76..0000000000 --- a/packages/frontend-core/node_modules/lodash/_LodashWrapper.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseCreate = require('./_baseCreate'), - baseLodash = require('./_baseLodash'); - -/** - * The base constructor for creating `lodash` wrapper objects. - * - * @private - * @param {*} value The value to wrap. - * @param {boolean} [chainAll] Enable explicit method chain sequences. - */ -function LodashWrapper(value, chainAll) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__chain__ = !!chainAll; - this.__index__ = 0; - this.__values__ = undefined; -} - -LodashWrapper.prototype = baseCreate(baseLodash.prototype); -LodashWrapper.prototype.constructor = LodashWrapper; - -module.exports = LodashWrapper; diff --git a/packages/frontend-core/node_modules/lodash/_Map.js b/packages/frontend-core/node_modules/lodash/_Map.js deleted file mode 100644 index b73f29a0f9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Map.js +++ /dev/null @@ -1,7 +0,0 @@ -var getNative = require('./_getNative'), - root = require('./_root'); - -/* Built-in method references that are verified to be native. */ -var Map = getNative(root, 'Map'); - -module.exports = Map; diff --git a/packages/frontend-core/node_modules/lodash/_MapCache.js b/packages/frontend-core/node_modules/lodash/_MapCache.js deleted file mode 100644 index 4a4eea7bf9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_MapCache.js +++ /dev/null @@ -1,32 +0,0 @@ -var mapCacheClear = require('./_mapCacheClear'), - mapCacheDelete = require('./_mapCacheDelete'), - mapCacheGet = require('./_mapCacheGet'), - mapCacheHas = require('./_mapCacheHas'), - mapCacheSet = require('./_mapCacheSet'); - -/** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function MapCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -// Add methods to `MapCache`. -MapCache.prototype.clear = mapCacheClear; -MapCache.prototype['delete'] = mapCacheDelete; -MapCache.prototype.get = mapCacheGet; -MapCache.prototype.has = mapCacheHas; -MapCache.prototype.set = mapCacheSet; - -module.exports = MapCache; diff --git a/packages/frontend-core/node_modules/lodash/_Promise.js b/packages/frontend-core/node_modules/lodash/_Promise.js deleted file mode 100644 index 247b9e1bac..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Promise.js +++ /dev/null @@ -1,7 +0,0 @@ -var getNative = require('./_getNative'), - root = require('./_root'); - -/* Built-in method references that are verified to be native. */ -var Promise = getNative(root, 'Promise'); - -module.exports = Promise; diff --git a/packages/frontend-core/node_modules/lodash/_Set.js b/packages/frontend-core/node_modules/lodash/_Set.js deleted file mode 100644 index b3c8dcbf03..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Set.js +++ /dev/null @@ -1,7 +0,0 @@ -var getNative = require('./_getNative'), - root = require('./_root'); - -/* Built-in method references that are verified to be native. */ -var Set = getNative(root, 'Set'); - -module.exports = Set; diff --git a/packages/frontend-core/node_modules/lodash/_SetCache.js b/packages/frontend-core/node_modules/lodash/_SetCache.js deleted file mode 100644 index 6468b0647f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_SetCache.js +++ /dev/null @@ -1,27 +0,0 @@ -var MapCache = require('./_MapCache'), - setCacheAdd = require('./_setCacheAdd'), - setCacheHas = require('./_setCacheHas'); - -/** - * - * Creates an array cache object to store unique values. - * - * @private - * @constructor - * @param {Array} [values] The values to cache. - */ -function SetCache(values) { - var index = -1, - length = values == null ? 0 : values.length; - - this.__data__ = new MapCache; - while (++index < length) { - this.add(values[index]); - } -} - -// Add methods to `SetCache`. -SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; -SetCache.prototype.has = setCacheHas; - -module.exports = SetCache; diff --git a/packages/frontend-core/node_modules/lodash/_Stack.js b/packages/frontend-core/node_modules/lodash/_Stack.js deleted file mode 100644 index 80b2cf1b0c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Stack.js +++ /dev/null @@ -1,27 +0,0 @@ -var ListCache = require('./_ListCache'), - stackClear = require('./_stackClear'), - stackDelete = require('./_stackDelete'), - stackGet = require('./_stackGet'), - stackHas = require('./_stackHas'), - stackSet = require('./_stackSet'); - -/** - * Creates a stack cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; -} - -// Add methods to `Stack`. -Stack.prototype.clear = stackClear; -Stack.prototype['delete'] = stackDelete; -Stack.prototype.get = stackGet; -Stack.prototype.has = stackHas; -Stack.prototype.set = stackSet; - -module.exports = Stack; diff --git a/packages/frontend-core/node_modules/lodash/_Symbol.js b/packages/frontend-core/node_modules/lodash/_Symbol.js deleted file mode 100644 index a013f7c5b7..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Symbol.js +++ /dev/null @@ -1,6 +0,0 @@ -var root = require('./_root'); - -/** Built-in value references. */ -var Symbol = root.Symbol; - -module.exports = Symbol; diff --git a/packages/frontend-core/node_modules/lodash/_Uint8Array.js b/packages/frontend-core/node_modules/lodash/_Uint8Array.js deleted file mode 100644 index 2fb30e1573..0000000000 --- a/packages/frontend-core/node_modules/lodash/_Uint8Array.js +++ /dev/null @@ -1,6 +0,0 @@ -var root = require('./_root'); - -/** Built-in value references. */ -var Uint8Array = root.Uint8Array; - -module.exports = Uint8Array; diff --git a/packages/frontend-core/node_modules/lodash/_WeakMap.js b/packages/frontend-core/node_modules/lodash/_WeakMap.js deleted file mode 100644 index 567f86c61e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_WeakMap.js +++ /dev/null @@ -1,7 +0,0 @@ -var getNative = require('./_getNative'), - root = require('./_root'); - -/* Built-in method references that are verified to be native. */ -var WeakMap = getNative(root, 'WeakMap'); - -module.exports = WeakMap; diff --git a/packages/frontend-core/node_modules/lodash/_apply.js b/packages/frontend-core/node_modules/lodash/_apply.js deleted file mode 100644 index 36436dda50..0000000000 --- a/packages/frontend-core/node_modules/lodash/_apply.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A faster alternative to `Function#apply`, this function invokes `func` - * with the `this` binding of `thisArg` and the arguments of `args`. - * - * @private - * @param {Function} func The function to invoke. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} args The arguments to invoke `func` with. - * @returns {*} Returns the result of `func`. - */ -function apply(func, thisArg, args) { - switch (args.length) { - case 0: return func.call(thisArg); - case 1: return func.call(thisArg, args[0]); - case 2: return func.call(thisArg, args[0], args[1]); - case 3: return func.call(thisArg, args[0], args[1], args[2]); - } - return func.apply(thisArg, args); -} - -module.exports = apply; diff --git a/packages/frontend-core/node_modules/lodash/_arrayAggregator.js b/packages/frontend-core/node_modules/lodash/_arrayAggregator.js deleted file mode 100644 index d96c3ca47c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayAggregator.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * A specialized version of `baseAggregator` for arrays. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ -function arrayAggregator(array, setter, iteratee, accumulator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - var value = array[index]; - setter(accumulator, value, iteratee(value), array); - } - return accumulator; -} - -module.exports = arrayAggregator; diff --git a/packages/frontend-core/node_modules/lodash/_arrayEach.js b/packages/frontend-core/node_modules/lodash/_arrayEach.js deleted file mode 100644 index 2c5f579688..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayEach.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * A specialized version of `_.forEach` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ -function arrayEach(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (iteratee(array[index], index, array) === false) { - break; - } - } - return array; -} - -module.exports = arrayEach; diff --git a/packages/frontend-core/node_modules/lodash/_arrayEachRight.js b/packages/frontend-core/node_modules/lodash/_arrayEachRight.js deleted file mode 100644 index 976ca5c29b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayEachRight.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A specialized version of `_.forEachRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ -function arrayEachRight(array, iteratee) { - var length = array == null ? 0 : array.length; - - while (length--) { - if (iteratee(array[length], length, array) === false) { - break; - } - } - return array; -} - -module.exports = arrayEachRight; diff --git a/packages/frontend-core/node_modules/lodash/_arrayEvery.js b/packages/frontend-core/node_modules/lodash/_arrayEvery.js deleted file mode 100644 index e26a918450..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayEvery.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * A specialized version of `_.every` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - */ -function arrayEvery(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (!predicate(array[index], index, array)) { - return false; - } - } - return true; -} - -module.exports = arrayEvery; diff --git a/packages/frontend-core/node_modules/lodash/_arrayFilter.js b/packages/frontend-core/node_modules/lodash/_arrayFilter.js deleted file mode 100644 index 75ea254459..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayFilter.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * A specialized version of `_.filter` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ -function arrayFilter(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; - } - } - return result; -} - -module.exports = arrayFilter; diff --git a/packages/frontend-core/node_modules/lodash/_arrayIncludes.js b/packages/frontend-core/node_modules/lodash/_arrayIncludes.js deleted file mode 100644 index 3737a6d9eb..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayIncludes.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseIndexOf = require('./_baseIndexOf'); - -/** - * A specialized version of `_.includes` for arrays without support for - * specifying an index to search from. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ -function arrayIncludes(array, value) { - var length = array == null ? 0 : array.length; - return !!length && baseIndexOf(array, value, 0) > -1; -} - -module.exports = arrayIncludes; diff --git a/packages/frontend-core/node_modules/lodash/_arrayIncludesWith.js b/packages/frontend-core/node_modules/lodash/_arrayIncludesWith.js deleted file mode 100644 index 235fd97580..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayIncludesWith.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * This function is like `arrayIncludes` except that it accepts a comparator. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @param {Function} comparator The comparator invoked per element. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ -function arrayIncludesWith(array, value, comparator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (comparator(value, array[index])) { - return true; - } - } - return false; -} - -module.exports = arrayIncludesWith; diff --git a/packages/frontend-core/node_modules/lodash/_arrayLikeKeys.js b/packages/frontend-core/node_modules/lodash/_arrayLikeKeys.js deleted file mode 100644 index b2ec9ce786..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayLikeKeys.js +++ /dev/null @@ -1,49 +0,0 @@ -var baseTimes = require('./_baseTimes'), - isArguments = require('./isArguments'), - isArray = require('./isArray'), - isBuffer = require('./isBuffer'), - isIndex = require('./_isIndex'), - isTypedArray = require('./isTypedArray'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Creates an array of the enumerable property names of the array-like `value`. - * - * @private - * @param {*} value The value to query. - * @param {boolean} inherited Specify returning inherited property names. - * @returns {Array} Returns the array of property names. - */ -function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), - isArg = !isArr && isArguments(value), - isBuff = !isArr && !isArg && isBuffer(value), - isType = !isArr && !isArg && !isBuff && isTypedArray(value), - skipIndexes = isArr || isArg || isBuff || isType, - result = skipIndexes ? baseTimes(value.length, String) : [], - length = result.length; - - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && - !(skipIndexes && ( - // Safari 9 has enumerable `arguments.length` in strict mode. - key == 'length' || - // Node.js 0.10 has enumerable non-index properties on buffers. - (isBuff && (key == 'offset' || key == 'parent')) || - // PhantomJS 2 has enumerable non-index properties on typed arrays. - (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || - // Skip index properties. - isIndex(key, length) - ))) { - result.push(key); - } - } - return result; -} - -module.exports = arrayLikeKeys; diff --git a/packages/frontend-core/node_modules/lodash/_arrayMap.js b/packages/frontend-core/node_modules/lodash/_arrayMap.js deleted file mode 100644 index 22b22464e2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayMap.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A specialized version of `_.map` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ -function arrayMap(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length, - result = Array(length); - - while (++index < length) { - result[index] = iteratee(array[index], index, array); - } - return result; -} - -module.exports = arrayMap; diff --git a/packages/frontend-core/node_modules/lodash/_arrayPush.js b/packages/frontend-core/node_modules/lodash/_arrayPush.js deleted file mode 100644 index 7d742b383e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayPush.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ -function arrayPush(array, values) { - var index = -1, - length = values.length, - offset = array.length; - - while (++index < length) { - array[offset + index] = values[index]; - } - return array; -} - -module.exports = arrayPush; diff --git a/packages/frontend-core/node_modules/lodash/_arrayReduce.js b/packages/frontend-core/node_modules/lodash/_arrayReduce.js deleted file mode 100644 index de8b79b287..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayReduce.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * A specialized version of `_.reduce` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the first element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ -function arrayReduce(array, iteratee, accumulator, initAccum) { - var index = -1, - length = array == null ? 0 : array.length; - - if (initAccum && length) { - accumulator = array[++index]; - } - while (++index < length) { - accumulator = iteratee(accumulator, array[index], index, array); - } - return accumulator; -} - -module.exports = arrayReduce; diff --git a/packages/frontend-core/node_modules/lodash/_arrayReduceRight.js b/packages/frontend-core/node_modules/lodash/_arrayReduceRight.js deleted file mode 100644 index 22d8976deb..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayReduceRight.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * A specialized version of `_.reduceRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the last element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ -function arrayReduceRight(array, iteratee, accumulator, initAccum) { - var length = array == null ? 0 : array.length; - if (initAccum && length) { - accumulator = array[--length]; - } - while (length--) { - accumulator = iteratee(accumulator, array[length], length, array); - } - return accumulator; -} - -module.exports = arrayReduceRight; diff --git a/packages/frontend-core/node_modules/lodash/_arraySample.js b/packages/frontend-core/node_modules/lodash/_arraySample.js deleted file mode 100644 index fcab0105e8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arraySample.js +++ /dev/null @@ -1,15 +0,0 @@ -var baseRandom = require('./_baseRandom'); - -/** - * A specialized version of `_.sample` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @returns {*} Returns the random element. - */ -function arraySample(array) { - var length = array.length; - return length ? array[baseRandom(0, length - 1)] : undefined; -} - -module.exports = arraySample; diff --git a/packages/frontend-core/node_modules/lodash/_arraySampleSize.js b/packages/frontend-core/node_modules/lodash/_arraySampleSize.js deleted file mode 100644 index 8c7e364f51..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arraySampleSize.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseClamp = require('./_baseClamp'), - copyArray = require('./_copyArray'), - shuffleSelf = require('./_shuffleSelf'); - -/** - * A specialized version of `_.sampleSize` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ -function arraySampleSize(array, n) { - return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); -} - -module.exports = arraySampleSize; diff --git a/packages/frontend-core/node_modules/lodash/_arrayShuffle.js b/packages/frontend-core/node_modules/lodash/_arrayShuffle.js deleted file mode 100644 index 46313a39b7..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arrayShuffle.js +++ /dev/null @@ -1,15 +0,0 @@ -var copyArray = require('./_copyArray'), - shuffleSelf = require('./_shuffleSelf'); - -/** - * A specialized version of `_.shuffle` for arrays. - * - * @private - * @param {Array} array The array to shuffle. - * @returns {Array} Returns the new shuffled array. - */ -function arrayShuffle(array) { - return shuffleSelf(copyArray(array)); -} - -module.exports = arrayShuffle; diff --git a/packages/frontend-core/node_modules/lodash/_arraySome.js b/packages/frontend-core/node_modules/lodash/_arraySome.js deleted file mode 100644 index 6fd02fd4ae..0000000000 --- a/packages/frontend-core/node_modules/lodash/_arraySome.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * A specialized version of `_.some` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ -function arraySome(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; - } - } - return false; -} - -module.exports = arraySome; diff --git a/packages/frontend-core/node_modules/lodash/_asciiSize.js b/packages/frontend-core/node_modules/lodash/_asciiSize.js deleted file mode 100644 index 11d29c33ad..0000000000 --- a/packages/frontend-core/node_modules/lodash/_asciiSize.js +++ /dev/null @@ -1,12 +0,0 @@ -var baseProperty = require('./_baseProperty'); - -/** - * Gets the size of an ASCII `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ -var asciiSize = baseProperty('length'); - -module.exports = asciiSize; diff --git a/packages/frontend-core/node_modules/lodash/_asciiToArray.js b/packages/frontend-core/node_modules/lodash/_asciiToArray.js deleted file mode 100644 index 8e3dd5b47f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_asciiToArray.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * Converts an ASCII `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ -function asciiToArray(string) { - return string.split(''); -} - -module.exports = asciiToArray; diff --git a/packages/frontend-core/node_modules/lodash/_asciiWords.js b/packages/frontend-core/node_modules/lodash/_asciiWords.js deleted file mode 100644 index d765f0f763..0000000000 --- a/packages/frontend-core/node_modules/lodash/_asciiWords.js +++ /dev/null @@ -1,15 +0,0 @@ -/** Used to match words composed of alphanumeric characters. */ -var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; - -/** - * Splits an ASCII `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ -function asciiWords(string) { - return string.match(reAsciiWord) || []; -} - -module.exports = asciiWords; diff --git a/packages/frontend-core/node_modules/lodash/_assignMergeValue.js b/packages/frontend-core/node_modules/lodash/_assignMergeValue.js deleted file mode 100644 index cb1185e992..0000000000 --- a/packages/frontend-core/node_modules/lodash/_assignMergeValue.js +++ /dev/null @@ -1,20 +0,0 @@ -var baseAssignValue = require('./_baseAssignValue'), - eq = require('./eq'); - -/** - * This function is like `assignValue` except that it doesn't assign - * `undefined` values. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function assignMergeValue(object, key, value) { - if ((value !== undefined && !eq(object[key], value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } -} - -module.exports = assignMergeValue; diff --git a/packages/frontend-core/node_modules/lodash/_assignValue.js b/packages/frontend-core/node_modules/lodash/_assignValue.js deleted file mode 100644 index 40839575b5..0000000000 --- a/packages/frontend-core/node_modules/lodash/_assignValue.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseAssignValue = require('./_baseAssignValue'), - eq = require('./eq'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Assigns `value` to `key` of `object` if the existing value is not equivalent - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } -} - -module.exports = assignValue; diff --git a/packages/frontend-core/node_modules/lodash/_assocIndexOf.js b/packages/frontend-core/node_modules/lodash/_assocIndexOf.js deleted file mode 100644 index 5b77a2bdd3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_assocIndexOf.js +++ /dev/null @@ -1,21 +0,0 @@ -var eq = require('./eq'); - -/** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; -} - -module.exports = assocIndexOf; diff --git a/packages/frontend-core/node_modules/lodash/_baseAggregator.js b/packages/frontend-core/node_modules/lodash/_baseAggregator.js deleted file mode 100644 index 4bc9e91f41..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseAggregator.js +++ /dev/null @@ -1,21 +0,0 @@ -var baseEach = require('./_baseEach'); - -/** - * Aggregates elements of `collection` on `accumulator` with keys transformed - * by `iteratee` and values set by `setter`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ -function baseAggregator(collection, setter, iteratee, accumulator) { - baseEach(collection, function(value, key, collection) { - setter(accumulator, value, iteratee(value), collection); - }); - return accumulator; -} - -module.exports = baseAggregator; diff --git a/packages/frontend-core/node_modules/lodash/_baseAssign.js b/packages/frontend-core/node_modules/lodash/_baseAssign.js deleted file mode 100644 index e5c4a1a5b0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseAssign.js +++ /dev/null @@ -1,17 +0,0 @@ -var copyObject = require('./_copyObject'), - keys = require('./keys'); - -/** - * The base implementation of `_.assign` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ -function baseAssign(object, source) { - return object && copyObject(source, keys(source), object); -} - -module.exports = baseAssign; diff --git a/packages/frontend-core/node_modules/lodash/_baseAssignIn.js b/packages/frontend-core/node_modules/lodash/_baseAssignIn.js deleted file mode 100644 index 6624f90067..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseAssignIn.js +++ /dev/null @@ -1,17 +0,0 @@ -var copyObject = require('./_copyObject'), - keysIn = require('./keysIn'); - -/** - * The base implementation of `_.assignIn` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ -function baseAssignIn(object, source) { - return object && copyObject(source, keysIn(source), object); -} - -module.exports = baseAssignIn; diff --git a/packages/frontend-core/node_modules/lodash/_baseAssignValue.js b/packages/frontend-core/node_modules/lodash/_baseAssignValue.js deleted file mode 100644 index d6f66ef3a5..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseAssignValue.js +++ /dev/null @@ -1,25 +0,0 @@ -var defineProperty = require('./_defineProperty'); - -/** - * The base implementation of `assignValue` and `assignMergeValue` without - * value checks. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ -function baseAssignValue(object, key, value) { - if (key == '__proto__' && defineProperty) { - defineProperty(object, key, { - 'configurable': true, - 'enumerable': true, - 'value': value, - 'writable': true - }); - } else { - object[key] = value; - } -} - -module.exports = baseAssignValue; diff --git a/packages/frontend-core/node_modules/lodash/_baseAt.js b/packages/frontend-core/node_modules/lodash/_baseAt.js deleted file mode 100644 index 90e4237a06..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseAt.js +++ /dev/null @@ -1,23 +0,0 @@ -var get = require('./get'); - -/** - * The base implementation of `_.at` without support for individual paths. - * - * @private - * @param {Object} object The object to iterate over. - * @param {string[]} paths The property paths to pick. - * @returns {Array} Returns the picked elements. - */ -function baseAt(object, paths) { - var index = -1, - length = paths.length, - result = Array(length), - skip = object == null; - - while (++index < length) { - result[index] = skip ? undefined : get(object, paths[index]); - } - return result; -} - -module.exports = baseAt; diff --git a/packages/frontend-core/node_modules/lodash/_baseClamp.js b/packages/frontend-core/node_modules/lodash/_baseClamp.js deleted file mode 100644 index a1c5692927..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseClamp.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * The base implementation of `_.clamp` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - */ -function baseClamp(number, lower, upper) { - if (number === number) { - if (upper !== undefined) { - number = number <= upper ? number : upper; - } - if (lower !== undefined) { - number = number >= lower ? number : lower; - } - } - return number; -} - -module.exports = baseClamp; diff --git a/packages/frontend-core/node_modules/lodash/_baseClone.js b/packages/frontend-core/node_modules/lodash/_baseClone.js deleted file mode 100644 index 69f87054c5..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseClone.js +++ /dev/null @@ -1,166 +0,0 @@ -var Stack = require('./_Stack'), - arrayEach = require('./_arrayEach'), - assignValue = require('./_assignValue'), - baseAssign = require('./_baseAssign'), - baseAssignIn = require('./_baseAssignIn'), - cloneBuffer = require('./_cloneBuffer'), - copyArray = require('./_copyArray'), - copySymbols = require('./_copySymbols'), - copySymbolsIn = require('./_copySymbolsIn'), - getAllKeys = require('./_getAllKeys'), - getAllKeysIn = require('./_getAllKeysIn'), - getTag = require('./_getTag'), - initCloneArray = require('./_initCloneArray'), - initCloneByTag = require('./_initCloneByTag'), - initCloneObject = require('./_initCloneObject'), - isArray = require('./isArray'), - isBuffer = require('./isBuffer'), - isMap = require('./isMap'), - isObject = require('./isObject'), - isSet = require('./isSet'), - keys = require('./keys'), - keysIn = require('./keysIn'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_DEEP_FLAG = 1, - CLONE_FLAT_FLAG = 2, - CLONE_SYMBOLS_FLAG = 4; - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - mapTag = '[object Map]', - numberTag = '[object Number]', - objectTag = '[object Object]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]', - weakMapTag = '[object WeakMap]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - -/** Used to identify `toStringTag` values supported by `_.clone`. */ -var cloneableTags = {}; -cloneableTags[argsTag] = cloneableTags[arrayTag] = -cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = -cloneableTags[boolTag] = cloneableTags[dateTag] = -cloneableTags[float32Tag] = cloneableTags[float64Tag] = -cloneableTags[int8Tag] = cloneableTags[int16Tag] = -cloneableTags[int32Tag] = cloneableTags[mapTag] = -cloneableTags[numberTag] = cloneableTags[objectTag] = -cloneableTags[regexpTag] = cloneableTags[setTag] = -cloneableTags[stringTag] = cloneableTags[symbolTag] = -cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = -cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; -cloneableTags[errorTag] = cloneableTags[funcTag] = -cloneableTags[weakMapTag] = false; - -/** - * The base implementation of `_.clone` and `_.cloneDeep` which tracks - * traversed objects. - * - * @private - * @param {*} value The value to clone. - * @param {boolean} bitmask The bitmask flags. - * 1 - Deep clone - * 2 - Flatten inherited properties - * 4 - Clone symbols - * @param {Function} [customizer] The function to customize cloning. - * @param {string} [key] The key of `value`. - * @param {Object} [object] The parent object of `value`. - * @param {Object} [stack] Tracks traversed objects and their clone counterparts. - * @returns {*} Returns the cloned value. - */ -function baseClone(value, bitmask, customizer, key, object, stack) { - var result, - isDeep = bitmask & CLONE_DEEP_FLAG, - isFlat = bitmask & CLONE_FLAT_FLAG, - isFull = bitmask & CLONE_SYMBOLS_FLAG; - - if (customizer) { - result = object ? customizer(value, key, object, stack) : customizer(value); - } - if (result !== undefined) { - return result; - } - if (!isObject(value)) { - return value; - } - var isArr = isArray(value); - if (isArr) { - result = initCloneArray(value); - if (!isDeep) { - return copyArray(value, result); - } - } else { - var tag = getTag(value), - isFunc = tag == funcTag || tag == genTag; - - if (isBuffer(value)) { - return cloneBuffer(value, isDeep); - } - if (tag == objectTag || tag == argsTag || (isFunc && !object)) { - result = (isFlat || isFunc) ? {} : initCloneObject(value); - if (!isDeep) { - return isFlat - ? copySymbolsIn(value, baseAssignIn(result, value)) - : copySymbols(value, baseAssign(result, value)); - } - } else { - if (!cloneableTags[tag]) { - return object ? value : {}; - } - result = initCloneByTag(value, tag, isDeep); - } - } - // Check for circular references and return its corresponding clone. - stack || (stack = new Stack); - var stacked = stack.get(value); - if (stacked) { - return stacked; - } - stack.set(value, result); - - if (isSet(value)) { - value.forEach(function(subValue) { - result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); - }); - } else if (isMap(value)) { - value.forEach(function(subValue, key) { - result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - } - - var keysFunc = isFull - ? (isFlat ? getAllKeysIn : getAllKeys) - : (isFlat ? keysIn : keys); - - var props = isArr ? undefined : keysFunc(value); - arrayEach(props || value, function(subValue, key) { - if (props) { - key = subValue; - subValue = value[key]; - } - // Recursively populate clone (susceptible to call stack limits). - assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - return result; -} - -module.exports = baseClone; diff --git a/packages/frontend-core/node_modules/lodash/_baseConforms.js b/packages/frontend-core/node_modules/lodash/_baseConforms.js deleted file mode 100644 index 947e20d409..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseConforms.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseConformsTo = require('./_baseConformsTo'), - keys = require('./keys'); - -/** - * The base implementation of `_.conforms` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property predicates to conform to. - * @returns {Function} Returns the new spec function. - */ -function baseConforms(source) { - var props = keys(source); - return function(object) { - return baseConformsTo(object, source, props); - }; -} - -module.exports = baseConforms; diff --git a/packages/frontend-core/node_modules/lodash/_baseConformsTo.js b/packages/frontend-core/node_modules/lodash/_baseConformsTo.js deleted file mode 100644 index e449cb84bd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseConformsTo.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * The base implementation of `_.conformsTo` which accepts `props` to check. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - */ -function baseConformsTo(object, source, props) { - var length = props.length; - if (object == null) { - return !length; - } - object = Object(object); - while (length--) { - var key = props[length], - predicate = source[key], - value = object[key]; - - if ((value === undefined && !(key in object)) || !predicate(value)) { - return false; - } - } - return true; -} - -module.exports = baseConformsTo; diff --git a/packages/frontend-core/node_modules/lodash/_baseCreate.js b/packages/frontend-core/node_modules/lodash/_baseCreate.js deleted file mode 100644 index ffa6a52acd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseCreate.js +++ /dev/null @@ -1,30 +0,0 @@ -var isObject = require('./isObject'); - -/** Built-in value references. */ -var objectCreate = Object.create; - -/** - * The base implementation of `_.create` without support for assigning - * properties to the created object. - * - * @private - * @param {Object} proto The object to inherit from. - * @returns {Object} Returns the new object. - */ -var baseCreate = (function() { - function object() {} - return function(proto) { - if (!isObject(proto)) { - return {}; - } - if (objectCreate) { - return objectCreate(proto); - } - object.prototype = proto; - var result = new object; - object.prototype = undefined; - return result; - }; -}()); - -module.exports = baseCreate; diff --git a/packages/frontend-core/node_modules/lodash/_baseDelay.js b/packages/frontend-core/node_modules/lodash/_baseDelay.js deleted file mode 100644 index 1486d697e3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseDelay.js +++ /dev/null @@ -1,21 +0,0 @@ -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** - * The base implementation of `_.delay` and `_.defer` which accepts `args` - * to provide to `func`. - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {Array} args The arguments to provide to `func`. - * @returns {number|Object} Returns the timer id or timeout object. - */ -function baseDelay(func, wait, args) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return setTimeout(function() { func.apply(undefined, args); }, wait); -} - -module.exports = baseDelay; diff --git a/packages/frontend-core/node_modules/lodash/_baseDifference.js b/packages/frontend-core/node_modules/lodash/_baseDifference.js deleted file mode 100644 index 343ac19f02..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseDifference.js +++ /dev/null @@ -1,67 +0,0 @@ -var SetCache = require('./_SetCache'), - arrayIncludes = require('./_arrayIncludes'), - arrayIncludesWith = require('./_arrayIncludesWith'), - arrayMap = require('./_arrayMap'), - baseUnary = require('./_baseUnary'), - cacheHas = require('./_cacheHas'); - -/** Used as the size to enable large array optimizations. */ -var LARGE_ARRAY_SIZE = 200; - -/** - * The base implementation of methods like `_.difference` without support - * for excluding multiple arrays or iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Array} values The values to exclude. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - */ -function baseDifference(array, values, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - isCommon = true, - length = array.length, - result = [], - valuesLength = values.length; - - if (!length) { - return result; - } - if (iteratee) { - values = arrayMap(values, baseUnary(iteratee)); - } - if (comparator) { - includes = arrayIncludesWith; - isCommon = false; - } - else if (values.length >= LARGE_ARRAY_SIZE) { - includes = cacheHas; - isCommon = false; - values = new SetCache(values); - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee == null ? value : iteratee(value); - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var valuesIndex = valuesLength; - while (valuesIndex--) { - if (values[valuesIndex] === computed) { - continue outer; - } - } - result.push(value); - } - else if (!includes(values, computed, comparator)) { - result.push(value); - } - } - return result; -} - -module.exports = baseDifference; diff --git a/packages/frontend-core/node_modules/lodash/_baseEach.js b/packages/frontend-core/node_modules/lodash/_baseEach.js deleted file mode 100644 index 512c067682..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseEach.js +++ /dev/null @@ -1,14 +0,0 @@ -var baseForOwn = require('./_baseForOwn'), - createBaseEach = require('./_createBaseEach'); - -/** - * The base implementation of `_.forEach` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ -var baseEach = createBaseEach(baseForOwn); - -module.exports = baseEach; diff --git a/packages/frontend-core/node_modules/lodash/_baseEachRight.js b/packages/frontend-core/node_modules/lodash/_baseEachRight.js deleted file mode 100644 index 0a8feeca44..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseEachRight.js +++ /dev/null @@ -1,14 +0,0 @@ -var baseForOwnRight = require('./_baseForOwnRight'), - createBaseEach = require('./_createBaseEach'); - -/** - * The base implementation of `_.forEachRight` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ -var baseEachRight = createBaseEach(baseForOwnRight, true); - -module.exports = baseEachRight; diff --git a/packages/frontend-core/node_modules/lodash/_baseEvery.js b/packages/frontend-core/node_modules/lodash/_baseEvery.js deleted file mode 100644 index fa52f7bc7d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseEvery.js +++ /dev/null @@ -1,21 +0,0 @@ -var baseEach = require('./_baseEach'); - -/** - * The base implementation of `_.every` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false` - */ -function baseEvery(collection, predicate) { - var result = true; - baseEach(collection, function(value, index, collection) { - result = !!predicate(value, index, collection); - return result; - }); - return result; -} - -module.exports = baseEvery; diff --git a/packages/frontend-core/node_modules/lodash/_baseExtremum.js b/packages/frontend-core/node_modules/lodash/_baseExtremum.js deleted file mode 100644 index 9d6aa77edb..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseExtremum.js +++ /dev/null @@ -1,32 +0,0 @@ -var isSymbol = require('./isSymbol'); - -/** - * The base implementation of methods like `_.max` and `_.min` which accepts a - * `comparator` to determine the extremum value. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The iteratee invoked per iteration. - * @param {Function} comparator The comparator used to compare values. - * @returns {*} Returns the extremum value. - */ -function baseExtremum(array, iteratee, comparator) { - var index = -1, - length = array.length; - - while (++index < length) { - var value = array[index], - current = iteratee(value); - - if (current != null && (computed === undefined - ? (current === current && !isSymbol(current)) - : comparator(current, computed) - )) { - var computed = current, - result = value; - } - } - return result; -} - -module.exports = baseExtremum; diff --git a/packages/frontend-core/node_modules/lodash/_baseFill.js b/packages/frontend-core/node_modules/lodash/_baseFill.js deleted file mode 100644 index 46ef9c761a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFill.js +++ /dev/null @@ -1,32 +0,0 @@ -var toInteger = require('./toInteger'), - toLength = require('./toLength'); - -/** - * The base implementation of `_.fill` without an iteratee call guard. - * - * @private - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - */ -function baseFill(array, value, start, end) { - var length = array.length; - - start = toInteger(start); - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = (end === undefined || end > length) ? length : toInteger(end); - if (end < 0) { - end += length; - } - end = start > end ? 0 : toLength(end); - while (start < end) { - array[start++] = value; - } - return array; -} - -module.exports = baseFill; diff --git a/packages/frontend-core/node_modules/lodash/_baseFilter.js b/packages/frontend-core/node_modules/lodash/_baseFilter.js deleted file mode 100644 index 467847736a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFilter.js +++ /dev/null @@ -1,21 +0,0 @@ -var baseEach = require('./_baseEach'); - -/** - * The base implementation of `_.filter` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ -function baseFilter(collection, predicate) { - var result = []; - baseEach(collection, function(value, index, collection) { - if (predicate(value, index, collection)) { - result.push(value); - } - }); - return result; -} - -module.exports = baseFilter; diff --git a/packages/frontend-core/node_modules/lodash/_baseFindIndex.js b/packages/frontend-core/node_modules/lodash/_baseFindIndex.js deleted file mode 100644 index e3f5d8aa2b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFindIndex.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * The base implementation of `_.findIndex` and `_.findLastIndex` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {number} fromIndex The index to search from. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function baseFindIndex(array, predicate, fromIndex, fromRight) { - var length = array.length, - index = fromIndex + (fromRight ? 1 : -1); - - while ((fromRight ? index-- : ++index < length)) { - if (predicate(array[index], index, array)) { - return index; - } - } - return -1; -} - -module.exports = baseFindIndex; diff --git a/packages/frontend-core/node_modules/lodash/_baseFindKey.js b/packages/frontend-core/node_modules/lodash/_baseFindKey.js deleted file mode 100644 index 2e430f3a21..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFindKey.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * The base implementation of methods like `_.findKey` and `_.findLastKey`, - * without support for iteratee shorthands, which iterates over `collection` - * using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the found element or its key, else `undefined`. - */ -function baseFindKey(collection, predicate, eachFunc) { - var result; - eachFunc(collection, function(value, key, collection) { - if (predicate(value, key, collection)) { - result = key; - return false; - } - }); - return result; -} - -module.exports = baseFindKey; diff --git a/packages/frontend-core/node_modules/lodash/_baseFlatten.js b/packages/frontend-core/node_modules/lodash/_baseFlatten.js deleted file mode 100644 index 4b1e009b15..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFlatten.js +++ /dev/null @@ -1,38 +0,0 @@ -var arrayPush = require('./_arrayPush'), - isFlattenable = require('./_isFlattenable'); - -/** - * The base implementation of `_.flatten` with support for restricting flattening. - * - * @private - * @param {Array} array The array to flatten. - * @param {number} depth The maximum recursion depth. - * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. - * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. - * @param {Array} [result=[]] The initial result value. - * @returns {Array} Returns the new flattened array. - */ -function baseFlatten(array, depth, predicate, isStrict, result) { - var index = -1, - length = array.length; - - predicate || (predicate = isFlattenable); - result || (result = []); - - while (++index < length) { - var value = array[index]; - if (depth > 0 && predicate(value)) { - if (depth > 1) { - // Recursively flatten arrays (susceptible to call stack limits). - baseFlatten(value, depth - 1, predicate, isStrict, result); - } else { - arrayPush(result, value); - } - } else if (!isStrict) { - result[result.length] = value; - } - } - return result; -} - -module.exports = baseFlatten; diff --git a/packages/frontend-core/node_modules/lodash/_baseFor.js b/packages/frontend-core/node_modules/lodash/_baseFor.js deleted file mode 100644 index d946590f8a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFor.js +++ /dev/null @@ -1,16 +0,0 @@ -var createBaseFor = require('./_createBaseFor'); - -/** - * The base implementation of `baseForOwn` which iterates over `object` - * properties returned by `keysFunc` and invokes `iteratee` for each property. - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ -var baseFor = createBaseFor(); - -module.exports = baseFor; diff --git a/packages/frontend-core/node_modules/lodash/_baseForOwn.js b/packages/frontend-core/node_modules/lodash/_baseForOwn.js deleted file mode 100644 index 503d523441..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseForOwn.js +++ /dev/null @@ -1,16 +0,0 @@ -var baseFor = require('./_baseFor'), - keys = require('./keys'); - -/** - * The base implementation of `_.forOwn` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ -function baseForOwn(object, iteratee) { - return object && baseFor(object, iteratee, keys); -} - -module.exports = baseForOwn; diff --git a/packages/frontend-core/node_modules/lodash/_baseForOwnRight.js b/packages/frontend-core/node_modules/lodash/_baseForOwnRight.js deleted file mode 100644 index a4b10e6c59..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseForOwnRight.js +++ /dev/null @@ -1,16 +0,0 @@ -var baseForRight = require('./_baseForRight'), - keys = require('./keys'); - -/** - * The base implementation of `_.forOwnRight` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ -function baseForOwnRight(object, iteratee) { - return object && baseForRight(object, iteratee, keys); -} - -module.exports = baseForOwnRight; diff --git a/packages/frontend-core/node_modules/lodash/_baseForRight.js b/packages/frontend-core/node_modules/lodash/_baseForRight.js deleted file mode 100644 index 32842cd817..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseForRight.js +++ /dev/null @@ -1,15 +0,0 @@ -var createBaseFor = require('./_createBaseFor'); - -/** - * This function is like `baseFor` except that it iterates over properties - * in the opposite order. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ -var baseForRight = createBaseFor(true); - -module.exports = baseForRight; diff --git a/packages/frontend-core/node_modules/lodash/_baseFunctions.js b/packages/frontend-core/node_modules/lodash/_baseFunctions.js deleted file mode 100644 index d23bc9b475..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseFunctions.js +++ /dev/null @@ -1,19 +0,0 @@ -var arrayFilter = require('./_arrayFilter'), - isFunction = require('./isFunction'); - -/** - * The base implementation of `_.functions` which creates an array of - * `object` function property names filtered from `props`. - * - * @private - * @param {Object} object The object to inspect. - * @param {Array} props The property names to filter. - * @returns {Array} Returns the function names. - */ -function baseFunctions(object, props) { - return arrayFilter(props, function(key) { - return isFunction(object[key]); - }); -} - -module.exports = baseFunctions; diff --git a/packages/frontend-core/node_modules/lodash/_baseGet.js b/packages/frontend-core/node_modules/lodash/_baseGet.js deleted file mode 100644 index a194913d21..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseGet.js +++ /dev/null @@ -1,24 +0,0 @@ -var castPath = require('./_castPath'), - toKey = require('./_toKey'); - -/** - * The base implementation of `_.get` without support for default values. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @returns {*} Returns the resolved value. - */ -function baseGet(object, path) { - path = castPath(path, object); - - var index = 0, - length = path.length; - - while (object != null && index < length) { - object = object[toKey(path[index++])]; - } - return (index && index == length) ? object : undefined; -} - -module.exports = baseGet; diff --git a/packages/frontend-core/node_modules/lodash/_baseGetAllKeys.js b/packages/frontend-core/node_modules/lodash/_baseGetAllKeys.js deleted file mode 100644 index 8ad204ea41..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseGetAllKeys.js +++ /dev/null @@ -1,20 +0,0 @@ -var arrayPush = require('./_arrayPush'), - isArray = require('./isArray'); - -/** - * The base implementation of `getAllKeys` and `getAllKeysIn` which uses - * `keysFunc` and `symbolsFunc` to get the enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Function} keysFunc The function to get the keys of `object`. - * @param {Function} symbolsFunc The function to get the symbols of `object`. - * @returns {Array} Returns the array of property names and symbols. - */ -function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); -} - -module.exports = baseGetAllKeys; diff --git a/packages/frontend-core/node_modules/lodash/_baseGetTag.js b/packages/frontend-core/node_modules/lodash/_baseGetTag.js deleted file mode 100644 index b927ccc172..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseGetTag.js +++ /dev/null @@ -1,28 +0,0 @@ -var Symbol = require('./_Symbol'), - getRawTag = require('./_getRawTag'), - objectToString = require('./_objectToString'); - -/** `Object#toString` result references. */ -var nullTag = '[object Null]', - undefinedTag = '[object Undefined]'; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); -} - -module.exports = baseGetTag; diff --git a/packages/frontend-core/node_modules/lodash/_baseGt.js b/packages/frontend-core/node_modules/lodash/_baseGt.js deleted file mode 100644 index 502d273ca8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseGt.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * The base implementation of `_.gt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - */ -function baseGt(value, other) { - return value > other; -} - -module.exports = baseGt; diff --git a/packages/frontend-core/node_modules/lodash/_baseHas.js b/packages/frontend-core/node_modules/lodash/_baseHas.js deleted file mode 100644 index 1b730321c2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseHas.js +++ /dev/null @@ -1,19 +0,0 @@ -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * The base implementation of `_.has` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ -function baseHas(object, key) { - return object != null && hasOwnProperty.call(object, key); -} - -module.exports = baseHas; diff --git a/packages/frontend-core/node_modules/lodash/_baseHasIn.js b/packages/frontend-core/node_modules/lodash/_baseHasIn.js deleted file mode 100644 index 2e0d04269f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseHasIn.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * The base implementation of `_.hasIn` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ -function baseHasIn(object, key) { - return object != null && key in Object(object); -} - -module.exports = baseHasIn; diff --git a/packages/frontend-core/node_modules/lodash/_baseInRange.js b/packages/frontend-core/node_modules/lodash/_baseInRange.js deleted file mode 100644 index ec95666187..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseInRange.js +++ /dev/null @@ -1,18 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max, - nativeMin = Math.min; - -/** - * The base implementation of `_.inRange` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to check. - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - */ -function baseInRange(number, start, end) { - return number >= nativeMin(start, end) && number < nativeMax(start, end); -} - -module.exports = baseInRange; diff --git a/packages/frontend-core/node_modules/lodash/_baseIndexOf.js b/packages/frontend-core/node_modules/lodash/_baseIndexOf.js deleted file mode 100644 index 167e706e79..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIndexOf.js +++ /dev/null @@ -1,20 +0,0 @@ -var baseFindIndex = require('./_baseFindIndex'), - baseIsNaN = require('./_baseIsNaN'), - strictIndexOf = require('./_strictIndexOf'); - -/** - * The base implementation of `_.indexOf` without `fromIndex` bounds checks. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function baseIndexOf(array, value, fromIndex) { - return value === value - ? strictIndexOf(array, value, fromIndex) - : baseFindIndex(array, baseIsNaN, fromIndex); -} - -module.exports = baseIndexOf; diff --git a/packages/frontend-core/node_modules/lodash/_baseIndexOfWith.js b/packages/frontend-core/node_modules/lodash/_baseIndexOfWith.js deleted file mode 100644 index f815fe0dda..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIndexOfWith.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * This function is like `baseIndexOf` except that it accepts a comparator. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @param {Function} comparator The comparator invoked per element. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function baseIndexOfWith(array, value, fromIndex, comparator) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (comparator(array[index], value)) { - return index; - } - } - return -1; -} - -module.exports = baseIndexOfWith; diff --git a/packages/frontend-core/node_modules/lodash/_baseIntersection.js b/packages/frontend-core/node_modules/lodash/_baseIntersection.js deleted file mode 100644 index c1d250c2aa..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIntersection.js +++ /dev/null @@ -1,74 +0,0 @@ -var SetCache = require('./_SetCache'), - arrayIncludes = require('./_arrayIncludes'), - arrayIncludesWith = require('./_arrayIncludesWith'), - arrayMap = require('./_arrayMap'), - baseUnary = require('./_baseUnary'), - cacheHas = require('./_cacheHas'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMin = Math.min; - -/** - * The base implementation of methods like `_.intersection`, without support - * for iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of shared values. - */ -function baseIntersection(arrays, iteratee, comparator) { - var includes = comparator ? arrayIncludesWith : arrayIncludes, - length = arrays[0].length, - othLength = arrays.length, - othIndex = othLength, - caches = Array(othLength), - maxLength = Infinity, - result = []; - - while (othIndex--) { - var array = arrays[othIndex]; - if (othIndex && iteratee) { - array = arrayMap(array, baseUnary(iteratee)); - } - maxLength = nativeMin(array.length, maxLength); - caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) - ? new SetCache(othIndex && array) - : undefined; - } - array = arrays[0]; - - var index = -1, - seen = caches[0]; - - outer: - while (++index < length && result.length < maxLength) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (!(seen - ? cacheHas(seen, computed) - : includes(result, computed, comparator) - )) { - othIndex = othLength; - while (--othIndex) { - var cache = caches[othIndex]; - if (!(cache - ? cacheHas(cache, computed) - : includes(arrays[othIndex], computed, comparator)) - ) { - continue outer; - } - } - if (seen) { - seen.push(computed); - } - result.push(value); - } - } - return result; -} - -module.exports = baseIntersection; diff --git a/packages/frontend-core/node_modules/lodash/_baseInverter.js b/packages/frontend-core/node_modules/lodash/_baseInverter.js deleted file mode 100644 index fbc337f01e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseInverter.js +++ /dev/null @@ -1,21 +0,0 @@ -var baseForOwn = require('./_baseForOwn'); - -/** - * The base implementation of `_.invert` and `_.invertBy` which inverts - * `object` with values transformed by `iteratee` and set by `setter`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform values. - * @param {Object} accumulator The initial inverted object. - * @returns {Function} Returns `accumulator`. - */ -function baseInverter(object, setter, iteratee, accumulator) { - baseForOwn(object, function(value, key, object) { - setter(accumulator, iteratee(value), key, object); - }); - return accumulator; -} - -module.exports = baseInverter; diff --git a/packages/frontend-core/node_modules/lodash/_baseInvoke.js b/packages/frontend-core/node_modules/lodash/_baseInvoke.js deleted file mode 100644 index 49bcf3c353..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseInvoke.js +++ /dev/null @@ -1,24 +0,0 @@ -var apply = require('./_apply'), - castPath = require('./_castPath'), - last = require('./last'), - parent = require('./_parent'), - toKey = require('./_toKey'); - -/** - * The base implementation of `_.invoke` without support for individual - * method arguments. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {Array} args The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - */ -function baseInvoke(object, path, args) { - path = castPath(path, object); - object = parent(object, path); - var func = object == null ? object : object[toKey(last(path))]; - return func == null ? undefined : apply(func, object, args); -} - -module.exports = baseInvoke; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsArguments.js b/packages/frontend-core/node_modules/lodash/_baseIsArguments.js deleted file mode 100644 index b3562cca2c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsArguments.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]'; - -/** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ -function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; -} - -module.exports = baseIsArguments; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsArrayBuffer.js b/packages/frontend-core/node_modules/lodash/_baseIsArrayBuffer.js deleted file mode 100644 index a2c4f30a82..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsArrayBuffer.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -var arrayBufferTag = '[object ArrayBuffer]'; - -/** - * The base implementation of `_.isArrayBuffer` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - */ -function baseIsArrayBuffer(value) { - return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; -} - -module.exports = baseIsArrayBuffer; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsDate.js b/packages/frontend-core/node_modules/lodash/_baseIsDate.js deleted file mode 100644 index ba67c7857f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsDate.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var dateTag = '[object Date]'; - -/** - * The base implementation of `_.isDate` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - */ -function baseIsDate(value) { - return isObjectLike(value) && baseGetTag(value) == dateTag; -} - -module.exports = baseIsDate; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsEqual.js b/packages/frontend-core/node_modules/lodash/_baseIsEqual.js deleted file mode 100644 index 00a68a4f51..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsEqual.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseIsEqualDeep = require('./_baseIsEqualDeep'), - isObjectLike = require('./isObjectLike'); - -/** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ -function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); -} - -module.exports = baseIsEqual; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsEqualDeep.js b/packages/frontend-core/node_modules/lodash/_baseIsEqualDeep.js deleted file mode 100644 index e3cfd6a8d0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsEqualDeep.js +++ /dev/null @@ -1,83 +0,0 @@ -var Stack = require('./_Stack'), - equalArrays = require('./_equalArrays'), - equalByTag = require('./_equalByTag'), - equalObjects = require('./_equalObjects'), - getTag = require('./_getTag'), - isArray = require('./isArray'), - isBuffer = require('./isBuffer'), - isTypedArray = require('./isTypedArray'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1; - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - objectTag = '[object Object]'; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : getTag(object), - othTag = othIsArr ? arrayTag : getTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; - } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack || (stack = new Stack); - return (objIsArr || isTypedArray(object)) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - stack || (stack = new Stack); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - } - } - if (!isSameTag) { - return false; - } - stack || (stack = new Stack); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack); -} - -module.exports = baseIsEqualDeep; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsMap.js b/packages/frontend-core/node_modules/lodash/_baseIsMap.js deleted file mode 100644 index 02a4021cab..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsMap.js +++ /dev/null @@ -1,18 +0,0 @@ -var getTag = require('./_getTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var mapTag = '[object Map]'; - -/** - * The base implementation of `_.isMap` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - */ -function baseIsMap(value) { - return isObjectLike(value) && getTag(value) == mapTag; -} - -module.exports = baseIsMap; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsMatch.js b/packages/frontend-core/node_modules/lodash/_baseIsMatch.js deleted file mode 100644 index 72494bed40..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsMatch.js +++ /dev/null @@ -1,62 +0,0 @@ -var Stack = require('./_Stack'), - baseIsEqual = require('./_baseIsEqual'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** - * The base implementation of `_.isMatch` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Array} matchData The property names, values, and compare flags to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - */ -function baseIsMatch(object, source, matchData, customizer) { - var index = matchData.length, - length = index, - noCustomizer = !customizer; - - if (object == null) { - return !length; - } - object = Object(object); - while (index--) { - var data = matchData[index]; - if ((noCustomizer && data[2]) - ? data[1] !== object[data[0]] - : !(data[0] in object) - ) { - return false; - } - } - while (++index < length) { - data = matchData[index]; - var key = data[0], - objValue = object[key], - srcValue = data[1]; - - if (noCustomizer && data[2]) { - if (objValue === undefined && !(key in object)) { - return false; - } - } else { - var stack = new Stack; - if (customizer) { - var result = customizer(objValue, srcValue, key, object, source, stack); - } - if (!(result === undefined - ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) - : result - )) { - return false; - } - } - } - return true; -} - -module.exports = baseIsMatch; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsNaN.js b/packages/frontend-core/node_modules/lodash/_baseIsNaN.js deleted file mode 100644 index 316f1eb1ef..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsNaN.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * The base implementation of `_.isNaN` without support for number objects. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - */ -function baseIsNaN(value) { - return value !== value; -} - -module.exports = baseIsNaN; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsNative.js b/packages/frontend-core/node_modules/lodash/_baseIsNative.js deleted file mode 100644 index 8702330495..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsNative.js +++ /dev/null @@ -1,47 +0,0 @@ -var isFunction = require('./isFunction'), - isMasked = require('./_isMasked'), - isObject = require('./isObject'), - toSource = require('./_toSource'); - -/** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ -var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; - -/** Used to detect host constructors (Safari). */ -var reIsHostCtor = /^\[object .+?Constructor\]$/; - -/** Used for built-in method references. */ -var funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Used to detect if a method is native. */ -var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' -); - -/** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ -function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); -} - -module.exports = baseIsNative; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsRegExp.js b/packages/frontend-core/node_modules/lodash/_baseIsRegExp.js deleted file mode 100644 index 6cd7c1aee7..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsRegExp.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var regexpTag = '[object RegExp]'; - -/** - * The base implementation of `_.isRegExp` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - */ -function baseIsRegExp(value) { - return isObjectLike(value) && baseGetTag(value) == regexpTag; -} - -module.exports = baseIsRegExp; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsSet.js b/packages/frontend-core/node_modules/lodash/_baseIsSet.js deleted file mode 100644 index 6dee36716e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsSet.js +++ /dev/null @@ -1,18 +0,0 @@ -var getTag = require('./_getTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var setTag = '[object Set]'; - -/** - * The base implementation of `_.isSet` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - */ -function baseIsSet(value) { - return isObjectLike(value) && getTag(value) == setTag; -} - -module.exports = baseIsSet; diff --git a/packages/frontend-core/node_modules/lodash/_baseIsTypedArray.js b/packages/frontend-core/node_modules/lodash/_baseIsTypedArray.js deleted file mode 100644 index 1edb32ff3f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIsTypedArray.js +++ /dev/null @@ -1,60 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isLength = require('./isLength'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - funcTag = '[object Function]', - mapTag = '[object Map]', - numberTag = '[object Number]', - objectTag = '[object Object]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - weakMapTag = '[object WeakMap]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - -/** Used to identify `toStringTag` values of typed arrays. */ -var typedArrayTags = {}; -typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = -typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = -typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = -typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = -typedArrayTags[uint32Tag] = true; -typedArrayTags[argsTag] = typedArrayTags[arrayTag] = -typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = -typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = -typedArrayTags[errorTag] = typedArrayTags[funcTag] = -typedArrayTags[mapTag] = typedArrayTags[numberTag] = -typedArrayTags[objectTag] = typedArrayTags[regexpTag] = -typedArrayTags[setTag] = typedArrayTags[stringTag] = -typedArrayTags[weakMapTag] = false; - -/** - * The base implementation of `_.isTypedArray` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - */ -function baseIsTypedArray(value) { - return isObjectLike(value) && - isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; -} - -module.exports = baseIsTypedArray; diff --git a/packages/frontend-core/node_modules/lodash/_baseIteratee.js b/packages/frontend-core/node_modules/lodash/_baseIteratee.js deleted file mode 100644 index 995c257567..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseIteratee.js +++ /dev/null @@ -1,31 +0,0 @@ -var baseMatches = require('./_baseMatches'), - baseMatchesProperty = require('./_baseMatchesProperty'), - identity = require('./identity'), - isArray = require('./isArray'), - property = require('./property'); - -/** - * The base implementation of `_.iteratee`. - * - * @private - * @param {*} [value=_.identity] The value to convert to an iteratee. - * @returns {Function} Returns the iteratee. - */ -function baseIteratee(value) { - // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. - // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. - if (typeof value == 'function') { - return value; - } - if (value == null) { - return identity; - } - if (typeof value == 'object') { - return isArray(value) - ? baseMatchesProperty(value[0], value[1]) - : baseMatches(value); - } - return property(value); -} - -module.exports = baseIteratee; diff --git a/packages/frontend-core/node_modules/lodash/_baseKeys.js b/packages/frontend-core/node_modules/lodash/_baseKeys.js deleted file mode 100644 index 45e9e6f39f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseKeys.js +++ /dev/null @@ -1,30 +0,0 @@ -var isPrototype = require('./_isPrototype'), - nativeKeys = require('./_nativeKeys'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != 'constructor') { - result.push(key); - } - } - return result; -} - -module.exports = baseKeys; diff --git a/packages/frontend-core/node_modules/lodash/_baseKeysIn.js b/packages/frontend-core/node_modules/lodash/_baseKeysIn.js deleted file mode 100644 index ea8a0a1742..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseKeysIn.js +++ /dev/null @@ -1,33 +0,0 @@ -var isObject = require('./isObject'), - isPrototype = require('./_isPrototype'), - nativeKeysIn = require('./_nativeKeysIn'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function baseKeysIn(object) { - if (!isObject(object)) { - return nativeKeysIn(object); - } - var isProto = isPrototype(object), - result = []; - - for (var key in object) { - if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { - result.push(key); - } - } - return result; -} - -module.exports = baseKeysIn; diff --git a/packages/frontend-core/node_modules/lodash/_baseLodash.js b/packages/frontend-core/node_modules/lodash/_baseLodash.js deleted file mode 100644 index f76c790e2e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseLodash.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * The function whose prototype chain sequence wrappers inherit from. - * - * @private - */ -function baseLodash() { - // No operation performed. -} - -module.exports = baseLodash; diff --git a/packages/frontend-core/node_modules/lodash/_baseLt.js b/packages/frontend-core/node_modules/lodash/_baseLt.js deleted file mode 100644 index 8674d2946a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseLt.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * The base implementation of `_.lt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - */ -function baseLt(value, other) { - return value < other; -} - -module.exports = baseLt; diff --git a/packages/frontend-core/node_modules/lodash/_baseMap.js b/packages/frontend-core/node_modules/lodash/_baseMap.js deleted file mode 100644 index 0bf5cead5c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMap.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseEach = require('./_baseEach'), - isArrayLike = require('./isArrayLike'); - -/** - * The base implementation of `_.map` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ -function baseMap(collection, iteratee) { - var index = -1, - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value, key, collection) { - result[++index] = iteratee(value, key, collection); - }); - return result; -} - -module.exports = baseMap; diff --git a/packages/frontend-core/node_modules/lodash/_baseMatches.js b/packages/frontend-core/node_modules/lodash/_baseMatches.js deleted file mode 100644 index e56582ad88..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMatches.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseIsMatch = require('./_baseIsMatch'), - getMatchData = require('./_getMatchData'), - matchesStrictComparable = require('./_matchesStrictComparable'); - -/** - * The base implementation of `_.matches` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property values to match. - * @returns {Function} Returns the new spec function. - */ -function baseMatches(source) { - var matchData = getMatchData(source); - if (matchData.length == 1 && matchData[0][2]) { - return matchesStrictComparable(matchData[0][0], matchData[0][1]); - } - return function(object) { - return object === source || baseIsMatch(object, source, matchData); - }; -} - -module.exports = baseMatches; diff --git a/packages/frontend-core/node_modules/lodash/_baseMatchesProperty.js b/packages/frontend-core/node_modules/lodash/_baseMatchesProperty.js deleted file mode 100644 index 24afd893d2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMatchesProperty.js +++ /dev/null @@ -1,33 +0,0 @@ -var baseIsEqual = require('./_baseIsEqual'), - get = require('./get'), - hasIn = require('./hasIn'), - isKey = require('./_isKey'), - isStrictComparable = require('./_isStrictComparable'), - matchesStrictComparable = require('./_matchesStrictComparable'), - toKey = require('./_toKey'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** - * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. - * - * @private - * @param {string} path The path of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ -function baseMatchesProperty(path, srcValue) { - if (isKey(path) && isStrictComparable(srcValue)) { - return matchesStrictComparable(toKey(path), srcValue); - } - return function(object) { - var objValue = get(object, path); - return (objValue === undefined && objValue === srcValue) - ? hasIn(object, path) - : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); - }; -} - -module.exports = baseMatchesProperty; diff --git a/packages/frontend-core/node_modules/lodash/_baseMean.js b/packages/frontend-core/node_modules/lodash/_baseMean.js deleted file mode 100644 index fa9e00a0a2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMean.js +++ /dev/null @@ -1,20 +0,0 @@ -var baseSum = require('./_baseSum'); - -/** Used as references for various `Number` constants. */ -var NAN = 0 / 0; - -/** - * The base implementation of `_.mean` and `_.meanBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the mean. - */ -function baseMean(array, iteratee) { - var length = array == null ? 0 : array.length; - return length ? (baseSum(array, iteratee) / length) : NAN; -} - -module.exports = baseMean; diff --git a/packages/frontend-core/node_modules/lodash/_baseMerge.js b/packages/frontend-core/node_modules/lodash/_baseMerge.js deleted file mode 100644 index c98b5eb0b6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMerge.js +++ /dev/null @@ -1,42 +0,0 @@ -var Stack = require('./_Stack'), - assignMergeValue = require('./_assignMergeValue'), - baseFor = require('./_baseFor'), - baseMergeDeep = require('./_baseMergeDeep'), - isObject = require('./isObject'), - keysIn = require('./keysIn'), - safeGet = require('./_safeGet'); - -/** - * The base implementation of `_.merge` without support for multiple sources. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {number} srcIndex The index of `source`. - * @param {Function} [customizer] The function to customize merged values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ -function baseMerge(object, source, srcIndex, customizer, stack) { - if (object === source) { - return; - } - baseFor(source, function(srcValue, key) { - stack || (stack = new Stack); - if (isObject(srcValue)) { - baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); - } - else { - var newValue = customizer - ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) - : undefined; - - if (newValue === undefined) { - newValue = srcValue; - } - assignMergeValue(object, key, newValue); - } - }, keysIn); -} - -module.exports = baseMerge; diff --git a/packages/frontend-core/node_modules/lodash/_baseMergeDeep.js b/packages/frontend-core/node_modules/lodash/_baseMergeDeep.js deleted file mode 100644 index 4679e8dce4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseMergeDeep.js +++ /dev/null @@ -1,94 +0,0 @@ -var assignMergeValue = require('./_assignMergeValue'), - cloneBuffer = require('./_cloneBuffer'), - cloneTypedArray = require('./_cloneTypedArray'), - copyArray = require('./_copyArray'), - initCloneObject = require('./_initCloneObject'), - isArguments = require('./isArguments'), - isArray = require('./isArray'), - isArrayLikeObject = require('./isArrayLikeObject'), - isBuffer = require('./isBuffer'), - isFunction = require('./isFunction'), - isObject = require('./isObject'), - isPlainObject = require('./isPlainObject'), - isTypedArray = require('./isTypedArray'), - safeGet = require('./_safeGet'), - toPlainObject = require('./toPlainObject'); - -/** - * A specialized version of `baseMerge` for arrays and objects which performs - * deep merges and tracks traversed objects enabling objects with circular - * references to be merged. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {string} key The key of the value to merge. - * @param {number} srcIndex The index of `source`. - * @param {Function} mergeFunc The function to merge values. - * @param {Function} [customizer] The function to customize assigned values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ -function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { - var objValue = safeGet(object, key), - srcValue = safeGet(source, key), - stacked = stack.get(srcValue); - - if (stacked) { - assignMergeValue(object, key, stacked); - return; - } - var newValue = customizer - ? customizer(objValue, srcValue, (key + ''), object, source, stack) - : undefined; - - var isCommon = newValue === undefined; - - if (isCommon) { - var isArr = isArray(srcValue), - isBuff = !isArr && isBuffer(srcValue), - isTyped = !isArr && !isBuff && isTypedArray(srcValue); - - newValue = srcValue; - if (isArr || isBuff || isTyped) { - if (isArray(objValue)) { - newValue = objValue; - } - else if (isArrayLikeObject(objValue)) { - newValue = copyArray(objValue); - } - else if (isBuff) { - isCommon = false; - newValue = cloneBuffer(srcValue, true); - } - else if (isTyped) { - isCommon = false; - newValue = cloneTypedArray(srcValue, true); - } - else { - newValue = []; - } - } - else if (isPlainObject(srcValue) || isArguments(srcValue)) { - newValue = objValue; - if (isArguments(objValue)) { - newValue = toPlainObject(objValue); - } - else if (!isObject(objValue) || isFunction(objValue)) { - newValue = initCloneObject(srcValue); - } - } - else { - isCommon = false; - } - } - if (isCommon) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, newValue); - mergeFunc(newValue, srcValue, srcIndex, customizer, stack); - stack['delete'](srcValue); - } - assignMergeValue(object, key, newValue); -} - -module.exports = baseMergeDeep; diff --git a/packages/frontend-core/node_modules/lodash/_baseNth.js b/packages/frontend-core/node_modules/lodash/_baseNth.js deleted file mode 100644 index 0403c2a368..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseNth.js +++ /dev/null @@ -1,20 +0,0 @@ -var isIndex = require('./_isIndex'); - -/** - * The base implementation of `_.nth` which doesn't coerce arguments. - * - * @private - * @param {Array} array The array to query. - * @param {number} n The index of the element to return. - * @returns {*} Returns the nth element of `array`. - */ -function baseNth(array, n) { - var length = array.length; - if (!length) { - return; - } - n += n < 0 ? length : 0; - return isIndex(n, length) ? array[n] : undefined; -} - -module.exports = baseNth; diff --git a/packages/frontend-core/node_modules/lodash/_baseOrderBy.js b/packages/frontend-core/node_modules/lodash/_baseOrderBy.js deleted file mode 100644 index 775a01741e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseOrderBy.js +++ /dev/null @@ -1,49 +0,0 @@ -var arrayMap = require('./_arrayMap'), - baseGet = require('./_baseGet'), - baseIteratee = require('./_baseIteratee'), - baseMap = require('./_baseMap'), - baseSortBy = require('./_baseSortBy'), - baseUnary = require('./_baseUnary'), - compareMultiple = require('./_compareMultiple'), - identity = require('./identity'), - isArray = require('./isArray'); - -/** - * The base implementation of `_.orderBy` without param guards. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. - * @param {string[]} orders The sort orders of `iteratees`. - * @returns {Array} Returns the new sorted array. - */ -function baseOrderBy(collection, iteratees, orders) { - if (iteratees.length) { - iteratees = arrayMap(iteratees, function(iteratee) { - if (isArray(iteratee)) { - return function(value) { - return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee); - } - } - return iteratee; - }); - } else { - iteratees = [identity]; - } - - var index = -1; - iteratees = arrayMap(iteratees, baseUnary(baseIteratee)); - - var result = baseMap(collection, function(value, key, collection) { - var criteria = arrayMap(iteratees, function(iteratee) { - return iteratee(value); - }); - return { 'criteria': criteria, 'index': ++index, 'value': value }; - }); - - return baseSortBy(result, function(object, other) { - return compareMultiple(object, other, orders); - }); -} - -module.exports = baseOrderBy; diff --git a/packages/frontend-core/node_modules/lodash/_basePick.js b/packages/frontend-core/node_modules/lodash/_basePick.js deleted file mode 100644 index 09b458a600..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePick.js +++ /dev/null @@ -1,19 +0,0 @@ -var basePickBy = require('./_basePickBy'), - hasIn = require('./hasIn'); - -/** - * The base implementation of `_.pick` without support for individual - * property identifiers. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @returns {Object} Returns the new object. - */ -function basePick(object, paths) { - return basePickBy(object, paths, function(value, path) { - return hasIn(object, path); - }); -} - -module.exports = basePick; diff --git a/packages/frontend-core/node_modules/lodash/_basePickBy.js b/packages/frontend-core/node_modules/lodash/_basePickBy.js deleted file mode 100644 index 85be68c84f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePickBy.js +++ /dev/null @@ -1,30 +0,0 @@ -var baseGet = require('./_baseGet'), - baseSet = require('./_baseSet'), - castPath = require('./_castPath'); - -/** - * The base implementation of `_.pickBy` without support for iteratee shorthands. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @param {Function} predicate The function invoked per property. - * @returns {Object} Returns the new object. - */ -function basePickBy(object, paths, predicate) { - var index = -1, - length = paths.length, - result = {}; - - while (++index < length) { - var path = paths[index], - value = baseGet(object, path); - - if (predicate(value, path)) { - baseSet(result, castPath(path, object), value); - } - } - return result; -} - -module.exports = basePickBy; diff --git a/packages/frontend-core/node_modules/lodash/_baseProperty.js b/packages/frontend-core/node_modules/lodash/_baseProperty.js deleted file mode 100644 index 496281ec40..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseProperty.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * The base implementation of `_.property` without support for deep paths. - * - * @private - * @param {string} key The key of the property to get. - * @returns {Function} Returns the new accessor function. - */ -function baseProperty(key) { - return function(object) { - return object == null ? undefined : object[key]; - }; -} - -module.exports = baseProperty; diff --git a/packages/frontend-core/node_modules/lodash/_basePropertyDeep.js b/packages/frontend-core/node_modules/lodash/_basePropertyDeep.js deleted file mode 100644 index 1e5aae50c4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePropertyDeep.js +++ /dev/null @@ -1,16 +0,0 @@ -var baseGet = require('./_baseGet'); - -/** - * A specialized version of `baseProperty` which supports deep paths. - * - * @private - * @param {Array|string} path The path of the property to get. - * @returns {Function} Returns the new accessor function. - */ -function basePropertyDeep(path) { - return function(object) { - return baseGet(object, path); - }; -} - -module.exports = basePropertyDeep; diff --git a/packages/frontend-core/node_modules/lodash/_basePropertyOf.js b/packages/frontend-core/node_modules/lodash/_basePropertyOf.js deleted file mode 100644 index 4617399908..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePropertyOf.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * The base implementation of `_.propertyOf` without support for deep paths. - * - * @private - * @param {Object} object The object to query. - * @returns {Function} Returns the new accessor function. - */ -function basePropertyOf(object) { - return function(key) { - return object == null ? undefined : object[key]; - }; -} - -module.exports = basePropertyOf; diff --git a/packages/frontend-core/node_modules/lodash/_basePullAll.js b/packages/frontend-core/node_modules/lodash/_basePullAll.js deleted file mode 100644 index 305720edea..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePullAll.js +++ /dev/null @@ -1,51 +0,0 @@ -var arrayMap = require('./_arrayMap'), - baseIndexOf = require('./_baseIndexOf'), - baseIndexOfWith = require('./_baseIndexOfWith'), - baseUnary = require('./_baseUnary'), - copyArray = require('./_copyArray'); - -/** Used for built-in method references. */ -var arrayProto = Array.prototype; - -/** Built-in value references. */ -var splice = arrayProto.splice; - -/** - * The base implementation of `_.pullAllBy` without support for iteratee - * shorthands. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns `array`. - */ -function basePullAll(array, values, iteratee, comparator) { - var indexOf = comparator ? baseIndexOfWith : baseIndexOf, - index = -1, - length = values.length, - seen = array; - - if (array === values) { - values = copyArray(values); - } - if (iteratee) { - seen = arrayMap(array, baseUnary(iteratee)); - } - while (++index < length) { - var fromIndex = 0, - value = values[index], - computed = iteratee ? iteratee(value) : value; - - while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { - if (seen !== array) { - splice.call(seen, fromIndex, 1); - } - splice.call(array, fromIndex, 1); - } - } - return array; -} - -module.exports = basePullAll; diff --git a/packages/frontend-core/node_modules/lodash/_basePullAt.js b/packages/frontend-core/node_modules/lodash/_basePullAt.js deleted file mode 100644 index c3e9e71023..0000000000 --- a/packages/frontend-core/node_modules/lodash/_basePullAt.js +++ /dev/null @@ -1,37 +0,0 @@ -var baseUnset = require('./_baseUnset'), - isIndex = require('./_isIndex'); - -/** Used for built-in method references. */ -var arrayProto = Array.prototype; - -/** Built-in value references. */ -var splice = arrayProto.splice; - -/** - * The base implementation of `_.pullAt` without support for individual - * indexes or capturing the removed elements. - * - * @private - * @param {Array} array The array to modify. - * @param {number[]} indexes The indexes of elements to remove. - * @returns {Array} Returns `array`. - */ -function basePullAt(array, indexes) { - var length = array ? indexes.length : 0, - lastIndex = length - 1; - - while (length--) { - var index = indexes[length]; - if (length == lastIndex || index !== previous) { - var previous = index; - if (isIndex(index)) { - splice.call(array, index, 1); - } else { - baseUnset(array, index); - } - } - } - return array; -} - -module.exports = basePullAt; diff --git a/packages/frontend-core/node_modules/lodash/_baseRandom.js b/packages/frontend-core/node_modules/lodash/_baseRandom.js deleted file mode 100644 index 94f76a7663..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseRandom.js +++ /dev/null @@ -1,18 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeFloor = Math.floor, - nativeRandom = Math.random; - -/** - * The base implementation of `_.random` without support for returning - * floating-point numbers. - * - * @private - * @param {number} lower The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the random number. - */ -function baseRandom(lower, upper) { - return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); -} - -module.exports = baseRandom; diff --git a/packages/frontend-core/node_modules/lodash/_baseRange.js b/packages/frontend-core/node_modules/lodash/_baseRange.js deleted file mode 100644 index 0fb8e419fb..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseRange.js +++ /dev/null @@ -1,28 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeCeil = Math.ceil, - nativeMax = Math.max; - -/** - * The base implementation of `_.range` and `_.rangeRight` which doesn't - * coerce arguments. - * - * @private - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @param {number} step The value to increment or decrement by. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the range of numbers. - */ -function baseRange(start, end, step, fromRight) { - var index = -1, - length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), - result = Array(length); - - while (length--) { - result[fromRight ? length : ++index] = start; - start += step; - } - return result; -} - -module.exports = baseRange; diff --git a/packages/frontend-core/node_modules/lodash/_baseReduce.js b/packages/frontend-core/node_modules/lodash/_baseReduce.js deleted file mode 100644 index 5a1f8b57f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseReduce.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * The base implementation of `_.reduce` and `_.reduceRight`, without support - * for iteratee shorthands, which iterates over `collection` using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} accumulator The initial value. - * @param {boolean} initAccum Specify using the first or last element of - * `collection` as the initial value. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the accumulated value. - */ -function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { - eachFunc(collection, function(value, index, collection) { - accumulator = initAccum - ? (initAccum = false, value) - : iteratee(accumulator, value, index, collection); - }); - return accumulator; -} - -module.exports = baseReduce; diff --git a/packages/frontend-core/node_modules/lodash/_baseRepeat.js b/packages/frontend-core/node_modules/lodash/_baseRepeat.js deleted file mode 100644 index ee44c31ab0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseRepeat.js +++ /dev/null @@ -1,35 +0,0 @@ -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeFloor = Math.floor; - -/** - * The base implementation of `_.repeat` which doesn't coerce arguments. - * - * @private - * @param {string} string The string to repeat. - * @param {number} n The number of times to repeat the string. - * @returns {string} Returns the repeated string. - */ -function baseRepeat(string, n) { - var result = ''; - if (!string || n < 1 || n > MAX_SAFE_INTEGER) { - return result; - } - // Leverage the exponentiation by squaring algorithm for a faster repeat. - // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. - do { - if (n % 2) { - result += string; - } - n = nativeFloor(n / 2); - if (n) { - string += string; - } - } while (n); - - return result; -} - -module.exports = baseRepeat; diff --git a/packages/frontend-core/node_modules/lodash/_baseRest.js b/packages/frontend-core/node_modules/lodash/_baseRest.js deleted file mode 100644 index d0dc4bdd1f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseRest.js +++ /dev/null @@ -1,17 +0,0 @@ -var identity = require('./identity'), - overRest = require('./_overRest'), - setToString = require('./_setToString'); - -/** - * The base implementation of `_.rest` which doesn't validate or coerce arguments. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - */ -function baseRest(func, start) { - return setToString(overRest(func, start, identity), func + ''); -} - -module.exports = baseRest; diff --git a/packages/frontend-core/node_modules/lodash/_baseSample.js b/packages/frontend-core/node_modules/lodash/_baseSample.js deleted file mode 100644 index 58582b9112..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSample.js +++ /dev/null @@ -1,15 +0,0 @@ -var arraySample = require('./_arraySample'), - values = require('./values'); - -/** - * The base implementation of `_.sample`. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @returns {*} Returns the random element. - */ -function baseSample(collection) { - return arraySample(values(collection)); -} - -module.exports = baseSample; diff --git a/packages/frontend-core/node_modules/lodash/_baseSampleSize.js b/packages/frontend-core/node_modules/lodash/_baseSampleSize.js deleted file mode 100644 index 5c90ec5181..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSampleSize.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseClamp = require('./_baseClamp'), - shuffleSelf = require('./_shuffleSelf'), - values = require('./values'); - -/** - * The base implementation of `_.sampleSize` without param guards. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ -function baseSampleSize(collection, n) { - var array = values(collection); - return shuffleSelf(array, baseClamp(n, 0, array.length)); -} - -module.exports = baseSampleSize; diff --git a/packages/frontend-core/node_modules/lodash/_baseSet.js b/packages/frontend-core/node_modules/lodash/_baseSet.js deleted file mode 100644 index 99f4fbf9c3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSet.js +++ /dev/null @@ -1,51 +0,0 @@ -var assignValue = require('./_assignValue'), - castPath = require('./_castPath'), - isIndex = require('./_isIndex'), - isObject = require('./isObject'), - toKey = require('./_toKey'); - -/** - * The base implementation of `_.set`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ -function baseSet(object, path, value, customizer) { - if (!isObject(object)) { - return object; - } - path = castPath(path, object); - - var index = -1, - length = path.length, - lastIndex = length - 1, - nested = object; - - while (nested != null && ++index < length) { - var key = toKey(path[index]), - newValue = value; - - if (key === '__proto__' || key === 'constructor' || key === 'prototype') { - return object; - } - - if (index != lastIndex) { - var objValue = nested[key]; - newValue = customizer ? customizer(objValue, key, nested) : undefined; - if (newValue === undefined) { - newValue = isObject(objValue) - ? objValue - : (isIndex(path[index + 1]) ? [] : {}); - } - } - assignValue(nested, key, newValue); - nested = nested[key]; - } - return object; -} - -module.exports = baseSet; diff --git a/packages/frontend-core/node_modules/lodash/_baseSetData.js b/packages/frontend-core/node_modules/lodash/_baseSetData.js deleted file mode 100644 index c409947ddb..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSetData.js +++ /dev/null @@ -1,17 +0,0 @@ -var identity = require('./identity'), - metaMap = require('./_metaMap'); - -/** - * The base implementation of `setData` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ -var baseSetData = !metaMap ? identity : function(func, data) { - metaMap.set(func, data); - return func; -}; - -module.exports = baseSetData; diff --git a/packages/frontend-core/node_modules/lodash/_baseSetToString.js b/packages/frontend-core/node_modules/lodash/_baseSetToString.js deleted file mode 100644 index 89eaca38df..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSetToString.js +++ /dev/null @@ -1,22 +0,0 @@ -var constant = require('./constant'), - defineProperty = require('./_defineProperty'), - identity = require('./identity'); - -/** - * The base implementation of `setToString` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ -var baseSetToString = !defineProperty ? identity : function(func, string) { - return defineProperty(func, 'toString', { - 'configurable': true, - 'enumerable': false, - 'value': constant(string), - 'writable': true - }); -}; - -module.exports = baseSetToString; diff --git a/packages/frontend-core/node_modules/lodash/_baseShuffle.js b/packages/frontend-core/node_modules/lodash/_baseShuffle.js deleted file mode 100644 index 023077ac4e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseShuffle.js +++ /dev/null @@ -1,15 +0,0 @@ -var shuffleSelf = require('./_shuffleSelf'), - values = require('./values'); - -/** - * The base implementation of `_.shuffle`. - * - * @private - * @param {Array|Object} collection The collection to shuffle. - * @returns {Array} Returns the new shuffled array. - */ -function baseShuffle(collection) { - return shuffleSelf(values(collection)); -} - -module.exports = baseShuffle; diff --git a/packages/frontend-core/node_modules/lodash/_baseSlice.js b/packages/frontend-core/node_modules/lodash/_baseSlice.js deleted file mode 100644 index 786f6c99e9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSlice.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * The base implementation of `_.slice` without an iteratee call guard. - * - * @private - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ -function baseSlice(array, start, end) { - var index = -1, - length = array.length; - - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = end > length ? length : end; - if (end < 0) { - end += length; - } - length = start > end ? 0 : ((end - start) >>> 0); - start >>>= 0; - - var result = Array(length); - while (++index < length) { - result[index] = array[index + start]; - } - return result; -} - -module.exports = baseSlice; diff --git a/packages/frontend-core/node_modules/lodash/_baseSome.js b/packages/frontend-core/node_modules/lodash/_baseSome.js deleted file mode 100644 index 58f3f447a3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSome.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseEach = require('./_baseEach'); - -/** - * The base implementation of `_.some` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ -function baseSome(collection, predicate) { - var result; - - baseEach(collection, function(value, index, collection) { - result = predicate(value, index, collection); - return !result; - }); - return !!result; -} - -module.exports = baseSome; diff --git a/packages/frontend-core/node_modules/lodash/_baseSortBy.js b/packages/frontend-core/node_modules/lodash/_baseSortBy.js deleted file mode 100644 index a25c92eda6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSortBy.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * The base implementation of `_.sortBy` which uses `comparer` to define the - * sort order of `array` and replaces criteria objects with their corresponding - * values. - * - * @private - * @param {Array} array The array to sort. - * @param {Function} comparer The function to define sort order. - * @returns {Array} Returns `array`. - */ -function baseSortBy(array, comparer) { - var length = array.length; - - array.sort(comparer); - while (length--) { - array[length] = array[length].value; - } - return array; -} - -module.exports = baseSortBy; diff --git a/packages/frontend-core/node_modules/lodash/_baseSortedIndex.js b/packages/frontend-core/node_modules/lodash/_baseSortedIndex.js deleted file mode 100644 index 638c366c77..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSortedIndex.js +++ /dev/null @@ -1,42 +0,0 @@ -var baseSortedIndexBy = require('./_baseSortedIndexBy'), - identity = require('./identity'), - isSymbol = require('./isSymbol'); - -/** Used as references for the maximum length and index of an array. */ -var MAX_ARRAY_LENGTH = 4294967295, - HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; - -/** - * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which - * performs a binary search of `array` to determine the index at which `value` - * should be inserted into `array` in order to maintain its sort order. - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ -function baseSortedIndex(array, value, retHighest) { - var low = 0, - high = array == null ? low : array.length; - - if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { - while (low < high) { - var mid = (low + high) >>> 1, - computed = array[mid]; - - if (computed !== null && !isSymbol(computed) && - (retHighest ? (computed <= value) : (computed < value))) { - low = mid + 1; - } else { - high = mid; - } - } - return high; - } - return baseSortedIndexBy(array, value, identity, retHighest); -} - -module.exports = baseSortedIndex; diff --git a/packages/frontend-core/node_modules/lodash/_baseSortedIndexBy.js b/packages/frontend-core/node_modules/lodash/_baseSortedIndexBy.js deleted file mode 100644 index c247b377ff..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSortedIndexBy.js +++ /dev/null @@ -1,67 +0,0 @@ -var isSymbol = require('./isSymbol'); - -/** Used as references for the maximum length and index of an array. */ -var MAX_ARRAY_LENGTH = 4294967295, - MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeFloor = Math.floor, - nativeMin = Math.min; - -/** - * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` - * which invokes `iteratee` for `value` and each element of `array` to compute - * their sort ranking. The iteratee is invoked with one argument; (value). - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} iteratee The iteratee invoked per element. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ -function baseSortedIndexBy(array, value, iteratee, retHighest) { - var low = 0, - high = array == null ? 0 : array.length; - if (high === 0) { - return 0; - } - - value = iteratee(value); - var valIsNaN = value !== value, - valIsNull = value === null, - valIsSymbol = isSymbol(value), - valIsUndefined = value === undefined; - - while (low < high) { - var mid = nativeFloor((low + high) / 2), - computed = iteratee(array[mid]), - othIsDefined = computed !== undefined, - othIsNull = computed === null, - othIsReflexive = computed === computed, - othIsSymbol = isSymbol(computed); - - if (valIsNaN) { - var setLow = retHighest || othIsReflexive; - } else if (valIsUndefined) { - setLow = othIsReflexive && (retHighest || othIsDefined); - } else if (valIsNull) { - setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); - } else if (valIsSymbol) { - setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); - } else if (othIsNull || othIsSymbol) { - setLow = false; - } else { - setLow = retHighest ? (computed <= value) : (computed < value); - } - if (setLow) { - low = mid + 1; - } else { - high = mid; - } - } - return nativeMin(high, MAX_ARRAY_INDEX); -} - -module.exports = baseSortedIndexBy; diff --git a/packages/frontend-core/node_modules/lodash/_baseSortedUniq.js b/packages/frontend-core/node_modules/lodash/_baseSortedUniq.js deleted file mode 100644 index 802159a3db..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSortedUniq.js +++ /dev/null @@ -1,30 +0,0 @@ -var eq = require('./eq'); - -/** - * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ -function baseSortedUniq(array, iteratee) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - if (!index || !eq(computed, seen)) { - var seen = computed; - result[resIndex++] = value === 0 ? 0 : value; - } - } - return result; -} - -module.exports = baseSortedUniq; diff --git a/packages/frontend-core/node_modules/lodash/_baseSum.js b/packages/frontend-core/node_modules/lodash/_baseSum.js deleted file mode 100644 index a9e84c13c9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseSum.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * The base implementation of `_.sum` and `_.sumBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the sum. - */ -function baseSum(array, iteratee) { - var result, - index = -1, - length = array.length; - - while (++index < length) { - var current = iteratee(array[index]); - if (current !== undefined) { - result = result === undefined ? current : (result + current); - } - } - return result; -} - -module.exports = baseSum; diff --git a/packages/frontend-core/node_modules/lodash/_baseTimes.js b/packages/frontend-core/node_modules/lodash/_baseTimes.js deleted file mode 100644 index 0603fc37ea..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseTimes.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ -function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; -} - -module.exports = baseTimes; diff --git a/packages/frontend-core/node_modules/lodash/_baseToNumber.js b/packages/frontend-core/node_modules/lodash/_baseToNumber.js deleted file mode 100644 index 04859f391f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseToNumber.js +++ /dev/null @@ -1,24 +0,0 @@ -var isSymbol = require('./isSymbol'); - -/** Used as references for various `Number` constants. */ -var NAN = 0 / 0; - -/** - * The base implementation of `_.toNumber` which doesn't ensure correct - * conversions of binary, hexadecimal, or octal string values. - * - * @private - * @param {*} value The value to process. - * @returns {number} Returns the number. - */ -function baseToNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - return +value; -} - -module.exports = baseToNumber; diff --git a/packages/frontend-core/node_modules/lodash/_baseToPairs.js b/packages/frontend-core/node_modules/lodash/_baseToPairs.js deleted file mode 100644 index bff199128f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseToPairs.js +++ /dev/null @@ -1,18 +0,0 @@ -var arrayMap = require('./_arrayMap'); - -/** - * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array - * of key-value pairs for `object` corresponding to the property names of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the key-value pairs. - */ -function baseToPairs(object, props) { - return arrayMap(props, function(key) { - return [key, object[key]]; - }); -} - -module.exports = baseToPairs; diff --git a/packages/frontend-core/node_modules/lodash/_baseToString.js b/packages/frontend-core/node_modules/lodash/_baseToString.js deleted file mode 100644 index ada6ad298c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseToString.js +++ /dev/null @@ -1,37 +0,0 @@ -var Symbol = require('./_Symbol'), - arrayMap = require('./_arrayMap'), - isArray = require('./isArray'), - isSymbol = require('./isSymbol'); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolToString = symbolProto ? symbolProto.toString : undefined; - -/** - * The base implementation of `_.toString` which doesn't convert nullish - * values to empty strings. - * - * @private - * @param {*} value The value to process. - * @returns {string} Returns the string. - */ -function baseToString(value) { - // Exit early for strings to avoid a performance hit in some environments. - if (typeof value == 'string') { - return value; - } - if (isArray(value)) { - // Recursively convert values (susceptible to call stack limits). - return arrayMap(value, baseToString) + ''; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ''; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; -} - -module.exports = baseToString; diff --git a/packages/frontend-core/node_modules/lodash/_baseTrim.js b/packages/frontend-core/node_modules/lodash/_baseTrim.js deleted file mode 100644 index 3e2797d990..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseTrim.js +++ /dev/null @@ -1,19 +0,0 @@ -var trimmedEndIndex = require('./_trimmedEndIndex'); - -/** Used to match leading whitespace. */ -var reTrimStart = /^\s+/; - -/** - * The base implementation of `_.trim`. - * - * @private - * @param {string} string The string to trim. - * @returns {string} Returns the trimmed string. - */ -function baseTrim(string) { - return string - ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') - : string; -} - -module.exports = baseTrim; diff --git a/packages/frontend-core/node_modules/lodash/_baseUnary.js b/packages/frontend-core/node_modules/lodash/_baseUnary.js deleted file mode 100644 index 98639e92f6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseUnary.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * The base implementation of `_.unary` without support for storing metadata. - * - * @private - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - */ -function baseUnary(func) { - return function(value) { - return func(value); - }; -} - -module.exports = baseUnary; diff --git a/packages/frontend-core/node_modules/lodash/_baseUniq.js b/packages/frontend-core/node_modules/lodash/_baseUniq.js deleted file mode 100644 index aea459dc71..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseUniq.js +++ /dev/null @@ -1,72 +0,0 @@ -var SetCache = require('./_SetCache'), - arrayIncludes = require('./_arrayIncludes'), - arrayIncludesWith = require('./_arrayIncludesWith'), - cacheHas = require('./_cacheHas'), - createSet = require('./_createSet'), - setToArray = require('./_setToArray'); - -/** Used as the size to enable large array optimizations. */ -var LARGE_ARRAY_SIZE = 200; - -/** - * The base implementation of `_.uniqBy` without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ -function baseUniq(array, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - length = array.length, - isCommon = true, - result = [], - seen = result; - - if (comparator) { - isCommon = false; - includes = arrayIncludesWith; - } - else if (length >= LARGE_ARRAY_SIZE) { - var set = iteratee ? null : createSet(array); - if (set) { - return setToArray(set); - } - isCommon = false; - includes = cacheHas; - seen = new SetCache; - } - else { - seen = iteratee ? [] : result; - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var seenIndex = seen.length; - while (seenIndex--) { - if (seen[seenIndex] === computed) { - continue outer; - } - } - if (iteratee) { - seen.push(computed); - } - result.push(value); - } - else if (!includes(seen, computed, comparator)) { - if (seen !== result) { - seen.push(computed); - } - result.push(value); - } - } - return result; -} - -module.exports = baseUniq; diff --git a/packages/frontend-core/node_modules/lodash/_baseUnset.js b/packages/frontend-core/node_modules/lodash/_baseUnset.js deleted file mode 100644 index eefc6e37d3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseUnset.js +++ /dev/null @@ -1,20 +0,0 @@ -var castPath = require('./_castPath'), - last = require('./last'), - parent = require('./_parent'), - toKey = require('./_toKey'); - -/** - * The base implementation of `_.unset`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The property path to unset. - * @returns {boolean} Returns `true` if the property is deleted, else `false`. - */ -function baseUnset(object, path) { - path = castPath(path, object); - object = parent(object, path); - return object == null || delete object[toKey(last(path))]; -} - -module.exports = baseUnset; diff --git a/packages/frontend-core/node_modules/lodash/_baseUpdate.js b/packages/frontend-core/node_modules/lodash/_baseUpdate.js deleted file mode 100644 index 92a623777c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseUpdate.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseGet = require('./_baseGet'), - baseSet = require('./_baseSet'); - -/** - * The base implementation of `_.update`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to update. - * @param {Function} updater The function to produce the updated value. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ -function baseUpdate(object, path, updater, customizer) { - return baseSet(object, path, updater(baseGet(object, path)), customizer); -} - -module.exports = baseUpdate; diff --git a/packages/frontend-core/node_modules/lodash/_baseValues.js b/packages/frontend-core/node_modules/lodash/_baseValues.js deleted file mode 100644 index b95faadcfe..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseValues.js +++ /dev/null @@ -1,19 +0,0 @@ -var arrayMap = require('./_arrayMap'); - -/** - * The base implementation of `_.values` and `_.valuesIn` which creates an - * array of `object` property values corresponding to the property names - * of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the array of property values. - */ -function baseValues(object, props) { - return arrayMap(props, function(key) { - return object[key]; - }); -} - -module.exports = baseValues; diff --git a/packages/frontend-core/node_modules/lodash/_baseWhile.js b/packages/frontend-core/node_modules/lodash/_baseWhile.js deleted file mode 100644 index 07eac61b98..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseWhile.js +++ /dev/null @@ -1,26 +0,0 @@ -var baseSlice = require('./_baseSlice'); - -/** - * The base implementation of methods like `_.dropWhile` and `_.takeWhile` - * without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to query. - * @param {Function} predicate The function invoked per iteration. - * @param {boolean} [isDrop] Specify dropping elements instead of taking them. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the slice of `array`. - */ -function baseWhile(array, predicate, isDrop, fromRight) { - var length = array.length, - index = fromRight ? length : -1; - - while ((fromRight ? index-- : ++index < length) && - predicate(array[index], index, array)) {} - - return isDrop - ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) - : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); -} - -module.exports = baseWhile; diff --git a/packages/frontend-core/node_modules/lodash/_baseWrapperValue.js b/packages/frontend-core/node_modules/lodash/_baseWrapperValue.js deleted file mode 100644 index 443e0df5e0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseWrapperValue.js +++ /dev/null @@ -1,25 +0,0 @@ -var LazyWrapper = require('./_LazyWrapper'), - arrayPush = require('./_arrayPush'), - arrayReduce = require('./_arrayReduce'); - -/** - * The base implementation of `wrapperValue` which returns the result of - * performing a sequence of actions on the unwrapped `value`, where each - * successive action is supplied the return value of the previous. - * - * @private - * @param {*} value The unwrapped value. - * @param {Array} actions Actions to perform to resolve the unwrapped value. - * @returns {*} Returns the resolved value. - */ -function baseWrapperValue(value, actions) { - var result = value; - if (result instanceof LazyWrapper) { - result = result.value(); - } - return arrayReduce(actions, function(result, action) { - return action.func.apply(action.thisArg, arrayPush([result], action.args)); - }, result); -} - -module.exports = baseWrapperValue; diff --git a/packages/frontend-core/node_modules/lodash/_baseXor.js b/packages/frontend-core/node_modules/lodash/_baseXor.js deleted file mode 100644 index 8e69338bf9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseXor.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseDifference = require('./_baseDifference'), - baseFlatten = require('./_baseFlatten'), - baseUniq = require('./_baseUniq'); - -/** - * The base implementation of methods like `_.xor`, without support for - * iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of values. - */ -function baseXor(arrays, iteratee, comparator) { - var length = arrays.length; - if (length < 2) { - return length ? baseUniq(arrays[0]) : []; - } - var index = -1, - result = Array(length); - - while (++index < length) { - var array = arrays[index], - othIndex = -1; - - while (++othIndex < length) { - if (othIndex != index) { - result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); - } - } - } - return baseUniq(baseFlatten(result, 1), iteratee, comparator); -} - -module.exports = baseXor; diff --git a/packages/frontend-core/node_modules/lodash/_baseZipObject.js b/packages/frontend-core/node_modules/lodash/_baseZipObject.js deleted file mode 100644 index 401f85be20..0000000000 --- a/packages/frontend-core/node_modules/lodash/_baseZipObject.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * This base implementation of `_.zipObject` which assigns values using `assignFunc`. - * - * @private - * @param {Array} props The property identifiers. - * @param {Array} values The property values. - * @param {Function} assignFunc The function to assign values. - * @returns {Object} Returns the new object. - */ -function baseZipObject(props, values, assignFunc) { - var index = -1, - length = props.length, - valsLength = values.length, - result = {}; - - while (++index < length) { - var value = index < valsLength ? values[index] : undefined; - assignFunc(result, props[index], value); - } - return result; -} - -module.exports = baseZipObject; diff --git a/packages/frontend-core/node_modules/lodash/_cacheHas.js b/packages/frontend-core/node_modules/lodash/_cacheHas.js deleted file mode 100644 index 2dec892689..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cacheHas.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Checks if a `cache` value for `key` exists. - * - * @private - * @param {Object} cache The cache to query. - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function cacheHas(cache, key) { - return cache.has(key); -} - -module.exports = cacheHas; diff --git a/packages/frontend-core/node_modules/lodash/_castArrayLikeObject.js b/packages/frontend-core/node_modules/lodash/_castArrayLikeObject.js deleted file mode 100644 index 92c75fa1a9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_castArrayLikeObject.js +++ /dev/null @@ -1,14 +0,0 @@ -var isArrayLikeObject = require('./isArrayLikeObject'); - -/** - * Casts `value` to an empty array if it's not an array like object. - * - * @private - * @param {*} value The value to inspect. - * @returns {Array|Object} Returns the cast array-like object. - */ -function castArrayLikeObject(value) { - return isArrayLikeObject(value) ? value : []; -} - -module.exports = castArrayLikeObject; diff --git a/packages/frontend-core/node_modules/lodash/_castFunction.js b/packages/frontend-core/node_modules/lodash/_castFunction.js deleted file mode 100644 index 98c91ae637..0000000000 --- a/packages/frontend-core/node_modules/lodash/_castFunction.js +++ /dev/null @@ -1,14 +0,0 @@ -var identity = require('./identity'); - -/** - * Casts `value` to `identity` if it's not a function. - * - * @private - * @param {*} value The value to inspect. - * @returns {Function} Returns cast function. - */ -function castFunction(value) { - return typeof value == 'function' ? value : identity; -} - -module.exports = castFunction; diff --git a/packages/frontend-core/node_modules/lodash/_castPath.js b/packages/frontend-core/node_modules/lodash/_castPath.js deleted file mode 100644 index 017e4c1b45..0000000000 --- a/packages/frontend-core/node_modules/lodash/_castPath.js +++ /dev/null @@ -1,21 +0,0 @@ -var isArray = require('./isArray'), - isKey = require('./_isKey'), - stringToPath = require('./_stringToPath'), - toString = require('./toString'); - -/** - * Casts `value` to a path array if it's not one. - * - * @private - * @param {*} value The value to inspect. - * @param {Object} [object] The object to query keys on. - * @returns {Array} Returns the cast property path array. - */ -function castPath(value, object) { - if (isArray(value)) { - return value; - } - return isKey(value, object) ? [value] : stringToPath(toString(value)); -} - -module.exports = castPath; diff --git a/packages/frontend-core/node_modules/lodash/_castRest.js b/packages/frontend-core/node_modules/lodash/_castRest.js deleted file mode 100644 index 213c66f19f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_castRest.js +++ /dev/null @@ -1,14 +0,0 @@ -var baseRest = require('./_baseRest'); - -/** - * A `baseRest` alias which can be replaced with `identity` by module - * replacement plugins. - * - * @private - * @type {Function} - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ -var castRest = baseRest; - -module.exports = castRest; diff --git a/packages/frontend-core/node_modules/lodash/_castSlice.js b/packages/frontend-core/node_modules/lodash/_castSlice.js deleted file mode 100644 index 071faeba52..0000000000 --- a/packages/frontend-core/node_modules/lodash/_castSlice.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseSlice = require('./_baseSlice'); - -/** - * Casts `array` to a slice if it's needed. - * - * @private - * @param {Array} array The array to inspect. - * @param {number} start The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the cast slice. - */ -function castSlice(array, start, end) { - var length = array.length; - end = end === undefined ? length : end; - return (!start && end >= length) ? array : baseSlice(array, start, end); -} - -module.exports = castSlice; diff --git a/packages/frontend-core/node_modules/lodash/_charsEndIndex.js b/packages/frontend-core/node_modules/lodash/_charsEndIndex.js deleted file mode 100644 index 07908ff3aa..0000000000 --- a/packages/frontend-core/node_modules/lodash/_charsEndIndex.js +++ /dev/null @@ -1,19 +0,0 @@ -var baseIndexOf = require('./_baseIndexOf'); - -/** - * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the last unmatched string symbol. - */ -function charsEndIndex(strSymbols, chrSymbols) { - var index = strSymbols.length; - - while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; -} - -module.exports = charsEndIndex; diff --git a/packages/frontend-core/node_modules/lodash/_charsStartIndex.js b/packages/frontend-core/node_modules/lodash/_charsStartIndex.js deleted file mode 100644 index b17afd2547..0000000000 --- a/packages/frontend-core/node_modules/lodash/_charsStartIndex.js +++ /dev/null @@ -1,20 +0,0 @@ -var baseIndexOf = require('./_baseIndexOf'); - -/** - * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the first unmatched string symbol. - */ -function charsStartIndex(strSymbols, chrSymbols) { - var index = -1, - length = strSymbols.length; - - while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; -} - -module.exports = charsStartIndex; diff --git a/packages/frontend-core/node_modules/lodash/_cloneArrayBuffer.js b/packages/frontend-core/node_modules/lodash/_cloneArrayBuffer.js deleted file mode 100644 index c3d8f6e39a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneArrayBuffer.js +++ /dev/null @@ -1,16 +0,0 @@ -var Uint8Array = require('./_Uint8Array'); - -/** - * Creates a clone of `arrayBuffer`. - * - * @private - * @param {ArrayBuffer} arrayBuffer The array buffer to clone. - * @returns {ArrayBuffer} Returns the cloned array buffer. - */ -function cloneArrayBuffer(arrayBuffer) { - var result = new arrayBuffer.constructor(arrayBuffer.byteLength); - new Uint8Array(result).set(new Uint8Array(arrayBuffer)); - return result; -} - -module.exports = cloneArrayBuffer; diff --git a/packages/frontend-core/node_modules/lodash/_cloneBuffer.js b/packages/frontend-core/node_modules/lodash/_cloneBuffer.js deleted file mode 100644 index 27c48109b4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneBuffer.js +++ /dev/null @@ -1,35 +0,0 @@ -var root = require('./_root'); - -/** Detect free variable `exports`. */ -var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Built-in value references. */ -var Buffer = moduleExports ? root.Buffer : undefined, - allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined; - -/** - * Creates a clone of `buffer`. - * - * @private - * @param {Buffer} buffer The buffer to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Buffer} Returns the cloned buffer. - */ -function cloneBuffer(buffer, isDeep) { - if (isDeep) { - return buffer.slice(); - } - var length = buffer.length, - result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); - - buffer.copy(result); - return result; -} - -module.exports = cloneBuffer; diff --git a/packages/frontend-core/node_modules/lodash/_cloneDataView.js b/packages/frontend-core/node_modules/lodash/_cloneDataView.js deleted file mode 100644 index 9c9b7b054d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneDataView.js +++ /dev/null @@ -1,16 +0,0 @@ -var cloneArrayBuffer = require('./_cloneArrayBuffer'); - -/** - * Creates a clone of `dataView`. - * - * @private - * @param {Object} dataView The data view to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned data view. - */ -function cloneDataView(dataView, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; - return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); -} - -module.exports = cloneDataView; diff --git a/packages/frontend-core/node_modules/lodash/_cloneRegExp.js b/packages/frontend-core/node_modules/lodash/_cloneRegExp.js deleted file mode 100644 index 64a30dfb4a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneRegExp.js +++ /dev/null @@ -1,17 +0,0 @@ -/** Used to match `RegExp` flags from their coerced string values. */ -var reFlags = /\w*$/; - -/** - * Creates a clone of `regexp`. - * - * @private - * @param {Object} regexp The regexp to clone. - * @returns {Object} Returns the cloned regexp. - */ -function cloneRegExp(regexp) { - var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); - result.lastIndex = regexp.lastIndex; - return result; -} - -module.exports = cloneRegExp; diff --git a/packages/frontend-core/node_modules/lodash/_cloneSymbol.js b/packages/frontend-core/node_modules/lodash/_cloneSymbol.js deleted file mode 100644 index bede39f50a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneSymbol.js +++ /dev/null @@ -1,18 +0,0 @@ -var Symbol = require('./_Symbol'); - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; - -/** - * Creates a clone of the `symbol` object. - * - * @private - * @param {Object} symbol The symbol object to clone. - * @returns {Object} Returns the cloned symbol object. - */ -function cloneSymbol(symbol) { - return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; -} - -module.exports = cloneSymbol; diff --git a/packages/frontend-core/node_modules/lodash/_cloneTypedArray.js b/packages/frontend-core/node_modules/lodash/_cloneTypedArray.js deleted file mode 100644 index 7aad84d4fe..0000000000 --- a/packages/frontend-core/node_modules/lodash/_cloneTypedArray.js +++ /dev/null @@ -1,16 +0,0 @@ -var cloneArrayBuffer = require('./_cloneArrayBuffer'); - -/** - * Creates a clone of `typedArray`. - * - * @private - * @param {Object} typedArray The typed array to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned typed array. - */ -function cloneTypedArray(typedArray, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; - return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); -} - -module.exports = cloneTypedArray; diff --git a/packages/frontend-core/node_modules/lodash/_compareAscending.js b/packages/frontend-core/node_modules/lodash/_compareAscending.js deleted file mode 100644 index 8dc2791088..0000000000 --- a/packages/frontend-core/node_modules/lodash/_compareAscending.js +++ /dev/null @@ -1,41 +0,0 @@ -var isSymbol = require('./isSymbol'); - -/** - * Compares values to sort them in ascending order. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {number} Returns the sort order indicator for `value`. - */ -function compareAscending(value, other) { - if (value !== other) { - var valIsDefined = value !== undefined, - valIsNull = value === null, - valIsReflexive = value === value, - valIsSymbol = isSymbol(value); - - var othIsDefined = other !== undefined, - othIsNull = other === null, - othIsReflexive = other === other, - othIsSymbol = isSymbol(other); - - if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || - (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || - (valIsNull && othIsDefined && othIsReflexive) || - (!valIsDefined && othIsReflexive) || - !valIsReflexive) { - return 1; - } - if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || - (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || - (othIsNull && valIsDefined && valIsReflexive) || - (!othIsDefined && valIsReflexive) || - !othIsReflexive) { - return -1; - } - } - return 0; -} - -module.exports = compareAscending; diff --git a/packages/frontend-core/node_modules/lodash/_compareMultiple.js b/packages/frontend-core/node_modules/lodash/_compareMultiple.js deleted file mode 100644 index ad61f0fbca..0000000000 --- a/packages/frontend-core/node_modules/lodash/_compareMultiple.js +++ /dev/null @@ -1,44 +0,0 @@ -var compareAscending = require('./_compareAscending'); - -/** - * Used by `_.orderBy` to compare multiple properties of a value to another - * and stable sort them. - * - * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, - * specify an order of "desc" for descending or "asc" for ascending sort order - * of corresponding values. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {boolean[]|string[]} orders The order to sort by for each property. - * @returns {number} Returns the sort order indicator for `object`. - */ -function compareMultiple(object, other, orders) { - var index = -1, - objCriteria = object.criteria, - othCriteria = other.criteria, - length = objCriteria.length, - ordersLength = orders.length; - - while (++index < length) { - var result = compareAscending(objCriteria[index], othCriteria[index]); - if (result) { - if (index >= ordersLength) { - return result; - } - var order = orders[index]; - return result * (order == 'desc' ? -1 : 1); - } - } - // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications - // that causes it, under certain circumstances, to provide the same value for - // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 - // for more details. - // - // This also ensures a stable sort in V8 and other engines. - // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. - return object.index - other.index; -} - -module.exports = compareMultiple; diff --git a/packages/frontend-core/node_modules/lodash/_composeArgs.js b/packages/frontend-core/node_modules/lodash/_composeArgs.js deleted file mode 100644 index 1ce40f4f93..0000000000 --- a/packages/frontend-core/node_modules/lodash/_composeArgs.js +++ /dev/null @@ -1,39 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * Creates an array that is the composition of partially applied arguments, - * placeholders, and provided arguments into a single array of arguments. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to prepend to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ -function composeArgs(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersLength = holders.length, - leftIndex = -1, - leftLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(leftLength + rangeLength), - isUncurried = !isCurried; - - while (++leftIndex < leftLength) { - result[leftIndex] = partials[leftIndex]; - } - while (++argsIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[holders[argsIndex]] = args[argsIndex]; - } - } - while (rangeLength--) { - result[leftIndex++] = args[argsIndex++]; - } - return result; -} - -module.exports = composeArgs; diff --git a/packages/frontend-core/node_modules/lodash/_composeArgsRight.js b/packages/frontend-core/node_modules/lodash/_composeArgsRight.js deleted file mode 100644 index 8dc588d0a9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_composeArgsRight.js +++ /dev/null @@ -1,41 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * This function is like `composeArgs` except that the arguments composition - * is tailored for `_.partialRight`. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to append to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ -function composeArgsRight(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersIndex = -1, - holdersLength = holders.length, - rightIndex = -1, - rightLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(rangeLength + rightLength), - isUncurried = !isCurried; - - while (++argsIndex < rangeLength) { - result[argsIndex] = args[argsIndex]; - } - var offset = argsIndex; - while (++rightIndex < rightLength) { - result[offset + rightIndex] = partials[rightIndex]; - } - while (++holdersIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[offset + holders[holdersIndex]] = args[argsIndex++]; - } - } - return result; -} - -module.exports = composeArgsRight; diff --git a/packages/frontend-core/node_modules/lodash/_copyArray.js b/packages/frontend-core/node_modules/lodash/_copyArray.js deleted file mode 100644 index cd94d5d09a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_copyArray.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Copies the values of `source` to `array`. - * - * @private - * @param {Array} source The array to copy values from. - * @param {Array} [array=[]] The array to copy values to. - * @returns {Array} Returns `array`. - */ -function copyArray(source, array) { - var index = -1, - length = source.length; - - array || (array = Array(length)); - while (++index < length) { - array[index] = source[index]; - } - return array; -} - -module.exports = copyArray; diff --git a/packages/frontend-core/node_modules/lodash/_copyObject.js b/packages/frontend-core/node_modules/lodash/_copyObject.js deleted file mode 100644 index 2f2a5c23b7..0000000000 --- a/packages/frontend-core/node_modules/lodash/_copyObject.js +++ /dev/null @@ -1,40 +0,0 @@ -var assignValue = require('./_assignValue'), - baseAssignValue = require('./_baseAssignValue'); - -/** - * Copies properties of `source` to `object`. - * - * @private - * @param {Object} source The object to copy properties from. - * @param {Array} props The property identifiers to copy. - * @param {Object} [object={}] The object to copy properties to. - * @param {Function} [customizer] The function to customize copied values. - * @returns {Object} Returns `object`. - */ -function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - - var index = -1, - length = props.length; - - while (++index < length) { - var key = props[index]; - - var newValue = customizer - ? customizer(object[key], source[key], key, object, source) - : undefined; - - if (newValue === undefined) { - newValue = source[key]; - } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); - } - } - return object; -} - -module.exports = copyObject; diff --git a/packages/frontend-core/node_modules/lodash/_copySymbols.js b/packages/frontend-core/node_modules/lodash/_copySymbols.js deleted file mode 100644 index c35944ab5e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_copySymbols.js +++ /dev/null @@ -1,16 +0,0 @@ -var copyObject = require('./_copyObject'), - getSymbols = require('./_getSymbols'); - -/** - * Copies own symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ -function copySymbols(source, object) { - return copyObject(source, getSymbols(source), object); -} - -module.exports = copySymbols; diff --git a/packages/frontend-core/node_modules/lodash/_copySymbolsIn.js b/packages/frontend-core/node_modules/lodash/_copySymbolsIn.js deleted file mode 100644 index fdf20a73c2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_copySymbolsIn.js +++ /dev/null @@ -1,16 +0,0 @@ -var copyObject = require('./_copyObject'), - getSymbolsIn = require('./_getSymbolsIn'); - -/** - * Copies own and inherited symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ -function copySymbolsIn(source, object) { - return copyObject(source, getSymbolsIn(source), object); -} - -module.exports = copySymbolsIn; diff --git a/packages/frontend-core/node_modules/lodash/_coreJsData.js b/packages/frontend-core/node_modules/lodash/_coreJsData.js deleted file mode 100644 index f8e5b4e349..0000000000 --- a/packages/frontend-core/node_modules/lodash/_coreJsData.js +++ /dev/null @@ -1,6 +0,0 @@ -var root = require('./_root'); - -/** Used to detect overreaching core-js shims. */ -var coreJsData = root['__core-js_shared__']; - -module.exports = coreJsData; diff --git a/packages/frontend-core/node_modules/lodash/_countHolders.js b/packages/frontend-core/node_modules/lodash/_countHolders.js deleted file mode 100644 index 718fcdaa8d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_countHolders.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Gets the number of `placeholder` occurrences in `array`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} placeholder The placeholder to search for. - * @returns {number} Returns the placeholder count. - */ -function countHolders(array, placeholder) { - var length = array.length, - result = 0; - - while (length--) { - if (array[length] === placeholder) { - ++result; - } - } - return result; -} - -module.exports = countHolders; diff --git a/packages/frontend-core/node_modules/lodash/_createAggregator.js b/packages/frontend-core/node_modules/lodash/_createAggregator.js deleted file mode 100644 index 0be42c41cd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createAggregator.js +++ /dev/null @@ -1,23 +0,0 @@ -var arrayAggregator = require('./_arrayAggregator'), - baseAggregator = require('./_baseAggregator'), - baseIteratee = require('./_baseIteratee'), - isArray = require('./isArray'); - -/** - * Creates a function like `_.groupBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} [initializer] The accumulator object initializer. - * @returns {Function} Returns the new aggregator function. - */ -function createAggregator(setter, initializer) { - return function(collection, iteratee) { - var func = isArray(collection) ? arrayAggregator : baseAggregator, - accumulator = initializer ? initializer() : {}; - - return func(collection, setter, baseIteratee(iteratee, 2), accumulator); - }; -} - -module.exports = createAggregator; diff --git a/packages/frontend-core/node_modules/lodash/_createAssigner.js b/packages/frontend-core/node_modules/lodash/_createAssigner.js deleted file mode 100644 index 1f904c51bd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createAssigner.js +++ /dev/null @@ -1,37 +0,0 @@ -var baseRest = require('./_baseRest'), - isIterateeCall = require('./_isIterateeCall'); - -/** - * Creates a function like `_.assign`. - * - * @private - * @param {Function} assigner The function to assign values. - * @returns {Function} Returns the new assigner function. - */ -function createAssigner(assigner) { - return baseRest(function(object, sources) { - var index = -1, - length = sources.length, - customizer = length > 1 ? sources[length - 1] : undefined, - guard = length > 2 ? sources[2] : undefined; - - customizer = (assigner.length > 3 && typeof customizer == 'function') - ? (length--, customizer) - : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - customizer = length < 3 ? undefined : customizer; - length = 1; - } - object = Object(object); - while (++index < length) { - var source = sources[index]; - if (source) { - assigner(object, source, index, customizer); - } - } - return object; - }); -} - -module.exports = createAssigner; diff --git a/packages/frontend-core/node_modules/lodash/_createBaseEach.js b/packages/frontend-core/node_modules/lodash/_createBaseEach.js deleted file mode 100644 index d24fdd1bbc..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createBaseEach.js +++ /dev/null @@ -1,32 +0,0 @@ -var isArrayLike = require('./isArrayLike'); - -/** - * Creates a `baseEach` or `baseEachRight` function. - * - * @private - * @param {Function} eachFunc The function to iterate over a collection. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ -function createBaseEach(eachFunc, fromRight) { - return function(collection, iteratee) { - if (collection == null) { - return collection; - } - if (!isArrayLike(collection)) { - return eachFunc(collection, iteratee); - } - var length = collection.length, - index = fromRight ? length : -1, - iterable = Object(collection); - - while ((fromRight ? index-- : ++index < length)) { - if (iteratee(iterable[index], index, iterable) === false) { - break; - } - } - return collection; - }; -} - -module.exports = createBaseEach; diff --git a/packages/frontend-core/node_modules/lodash/_createBaseFor.js b/packages/frontend-core/node_modules/lodash/_createBaseFor.js deleted file mode 100644 index 94cbf297aa..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createBaseFor.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Creates a base function for methods like `_.forIn` and `_.forOwn`. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ -function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, - iterable = Object(object), - props = keysFunc(object), - length = props.length; - - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; - } - } - return object; - }; -} - -module.exports = createBaseFor; diff --git a/packages/frontend-core/node_modules/lodash/_createBind.js b/packages/frontend-core/node_modules/lodash/_createBind.js deleted file mode 100644 index 07cb99f4db..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createBind.js +++ /dev/null @@ -1,28 +0,0 @@ -var createCtor = require('./_createCtor'), - root = require('./_root'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1; - -/** - * Creates a function that wraps `func` to invoke it with the optional `this` - * binding of `thisArg`. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @returns {Function} Returns the new wrapped function. - */ -function createBind(func, bitmask, thisArg) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return fn.apply(isBind ? thisArg : this, arguments); - } - return wrapper; -} - -module.exports = createBind; diff --git a/packages/frontend-core/node_modules/lodash/_createCaseFirst.js b/packages/frontend-core/node_modules/lodash/_createCaseFirst.js deleted file mode 100644 index fe8ea48303..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createCaseFirst.js +++ /dev/null @@ -1,33 +0,0 @@ -var castSlice = require('./_castSlice'), - hasUnicode = require('./_hasUnicode'), - stringToArray = require('./_stringToArray'), - toString = require('./toString'); - -/** - * Creates a function like `_.lowerFirst`. - * - * @private - * @param {string} methodName The name of the `String` case method to use. - * @returns {Function} Returns the new case function. - */ -function createCaseFirst(methodName) { - return function(string) { - string = toString(string); - - var strSymbols = hasUnicode(string) - ? stringToArray(string) - : undefined; - - var chr = strSymbols - ? strSymbols[0] - : string.charAt(0); - - var trailing = strSymbols - ? castSlice(strSymbols, 1).join('') - : string.slice(1); - - return chr[methodName]() + trailing; - }; -} - -module.exports = createCaseFirst; diff --git a/packages/frontend-core/node_modules/lodash/_createCompounder.js b/packages/frontend-core/node_modules/lodash/_createCompounder.js deleted file mode 100644 index 8d4cee2cd3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createCompounder.js +++ /dev/null @@ -1,24 +0,0 @@ -var arrayReduce = require('./_arrayReduce'), - deburr = require('./deburr'), - words = require('./words'); - -/** Used to compose unicode capture groups. */ -var rsApos = "['\u2019]"; - -/** Used to match apostrophes. */ -var reApos = RegExp(rsApos, 'g'); - -/** - * Creates a function like `_.camelCase`. - * - * @private - * @param {Function} callback The function to combine each word. - * @returns {Function} Returns the new compounder function. - */ -function createCompounder(callback) { - return function(string) { - return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); - }; -} - -module.exports = createCompounder; diff --git a/packages/frontend-core/node_modules/lodash/_createCtor.js b/packages/frontend-core/node_modules/lodash/_createCtor.js deleted file mode 100644 index 9047aa5fac..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createCtor.js +++ /dev/null @@ -1,37 +0,0 @@ -var baseCreate = require('./_baseCreate'), - isObject = require('./isObject'); - -/** - * Creates a function that produces an instance of `Ctor` regardless of - * whether it was invoked as part of a `new` expression or by `call` or `apply`. - * - * @private - * @param {Function} Ctor The constructor to wrap. - * @returns {Function} Returns the new wrapped function. - */ -function createCtor(Ctor) { - return function() { - // Use a `switch` statement to work with class constructors. See - // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist - // for more details. - var args = arguments; - switch (args.length) { - case 0: return new Ctor; - case 1: return new Ctor(args[0]); - case 2: return new Ctor(args[0], args[1]); - case 3: return new Ctor(args[0], args[1], args[2]); - case 4: return new Ctor(args[0], args[1], args[2], args[3]); - case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); - case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); - case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); - } - var thisBinding = baseCreate(Ctor.prototype), - result = Ctor.apply(thisBinding, args); - - // Mimic the constructor's `return` behavior. - // See https://es5.github.io/#x13.2.2 for more details. - return isObject(result) ? result : thisBinding; - }; -} - -module.exports = createCtor; diff --git a/packages/frontend-core/node_modules/lodash/_createCurry.js b/packages/frontend-core/node_modules/lodash/_createCurry.js deleted file mode 100644 index f06c2cdd85..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createCurry.js +++ /dev/null @@ -1,46 +0,0 @@ -var apply = require('./_apply'), - createCtor = require('./_createCtor'), - createHybrid = require('./_createHybrid'), - createRecurry = require('./_createRecurry'), - getHolder = require('./_getHolder'), - replaceHolders = require('./_replaceHolders'), - root = require('./_root'); - -/** - * Creates a function that wraps `func` to enable currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {number} arity The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ -function createCurry(func, bitmask, arity) { - var Ctor = createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length, - placeholder = getHolder(wrapper); - - while (index--) { - args[index] = arguments[index]; - } - var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) - ? [] - : replaceHolders(args, placeholder); - - length -= holders.length; - if (length < arity) { - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, undefined, - args, holders, undefined, undefined, arity - length); - } - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return apply(fn, this, args); - } - return wrapper; -} - -module.exports = createCurry; diff --git a/packages/frontend-core/node_modules/lodash/_createFind.js b/packages/frontend-core/node_modules/lodash/_createFind.js deleted file mode 100644 index 8859ff89f4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createFind.js +++ /dev/null @@ -1,25 +0,0 @@ -var baseIteratee = require('./_baseIteratee'), - isArrayLike = require('./isArrayLike'), - keys = require('./keys'); - -/** - * Creates a `_.find` or `_.findLast` function. - * - * @private - * @param {Function} findIndexFunc The function to find the collection index. - * @returns {Function} Returns the new find function. - */ -function createFind(findIndexFunc) { - return function(collection, predicate, fromIndex) { - var iterable = Object(collection); - if (!isArrayLike(collection)) { - var iteratee = baseIteratee(predicate, 3); - collection = keys(collection); - predicate = function(key) { return iteratee(iterable[key], key, iterable); }; - } - var index = findIndexFunc(collection, predicate, fromIndex); - return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; - }; -} - -module.exports = createFind; diff --git a/packages/frontend-core/node_modules/lodash/_createFlow.js b/packages/frontend-core/node_modules/lodash/_createFlow.js deleted file mode 100644 index baaddbf5e8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createFlow.js +++ /dev/null @@ -1,78 +0,0 @@ -var LodashWrapper = require('./_LodashWrapper'), - flatRest = require('./_flatRest'), - getData = require('./_getData'), - getFuncName = require('./_getFuncName'), - isArray = require('./isArray'), - isLaziable = require('./_isLaziable'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** Used to compose bitmasks for function metadata. */ -var WRAP_CURRY_FLAG = 8, - WRAP_PARTIAL_FLAG = 32, - WRAP_ARY_FLAG = 128, - WRAP_REARG_FLAG = 256; - -/** - * Creates a `_.flow` or `_.flowRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new flow function. - */ -function createFlow(fromRight) { - return flatRest(function(funcs) { - var length = funcs.length, - index = length, - prereq = LodashWrapper.prototype.thru; - - if (fromRight) { - funcs.reverse(); - } - while (index--) { - var func = funcs[index]; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - if (prereq && !wrapper && getFuncName(func) == 'wrapper') { - var wrapper = new LodashWrapper([], true); - } - } - index = wrapper ? index : length; - while (++index < length) { - func = funcs[index]; - - var funcName = getFuncName(func), - data = funcName == 'wrapper' ? getData(func) : undefined; - - if (data && isLaziable(data[0]) && - data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && - !data[4].length && data[9] == 1 - ) { - wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); - } else { - wrapper = (func.length == 1 && isLaziable(func)) - ? wrapper[funcName]() - : wrapper.thru(func); - } - } - return function() { - var args = arguments, - value = args[0]; - - if (wrapper && args.length == 1 && isArray(value)) { - return wrapper.plant(value).value(); - } - var index = 0, - result = length ? funcs[index].apply(this, args) : value; - - while (++index < length) { - result = funcs[index].call(this, result); - } - return result; - }; - }); -} - -module.exports = createFlow; diff --git a/packages/frontend-core/node_modules/lodash/_createHybrid.js b/packages/frontend-core/node_modules/lodash/_createHybrid.js deleted file mode 100644 index b671bd11f6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createHybrid.js +++ /dev/null @@ -1,92 +0,0 @@ -var composeArgs = require('./_composeArgs'), - composeArgsRight = require('./_composeArgsRight'), - countHolders = require('./_countHolders'), - createCtor = require('./_createCtor'), - createRecurry = require('./_createRecurry'), - getHolder = require('./_getHolder'), - reorder = require('./_reorder'), - replaceHolders = require('./_replaceHolders'), - root = require('./_root'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_FLAG = 8, - WRAP_CURRY_RIGHT_FLAG = 16, - WRAP_ARY_FLAG = 128, - WRAP_FLIP_FLAG = 512; - -/** - * Creates a function that wraps `func` to invoke it with optional `this` - * binding of `thisArg`, partial application, and currying. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [partialsRight] The arguments to append to those provided - * to the new function. - * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ -function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { - var isAry = bitmask & WRAP_ARY_FLAG, - isBind = bitmask & WRAP_BIND_FLAG, - isBindKey = bitmask & WRAP_BIND_KEY_FLAG, - isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), - isFlip = bitmask & WRAP_FLIP_FLAG, - Ctor = isBindKey ? undefined : createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length; - - while (index--) { - args[index] = arguments[index]; - } - if (isCurried) { - var placeholder = getHolder(wrapper), - holdersCount = countHolders(args, placeholder); - } - if (partials) { - args = composeArgs(args, partials, holders, isCurried); - } - if (partialsRight) { - args = composeArgsRight(args, partialsRight, holdersRight, isCurried); - } - length -= holdersCount; - if (isCurried && length < arity) { - var newHolders = replaceHolders(args, placeholder); - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, thisArg, - args, newHolders, argPos, ary, arity - length - ); - } - var thisBinding = isBind ? thisArg : this, - fn = isBindKey ? thisBinding[func] : func; - - length = args.length; - if (argPos) { - args = reorder(args, argPos); - } else if (isFlip && length > 1) { - args.reverse(); - } - if (isAry && ary < length) { - args.length = ary; - } - if (this && this !== root && this instanceof wrapper) { - fn = Ctor || createCtor(fn); - } - return fn.apply(thisBinding, args); - } - return wrapper; -} - -module.exports = createHybrid; diff --git a/packages/frontend-core/node_modules/lodash/_createInverter.js b/packages/frontend-core/node_modules/lodash/_createInverter.js deleted file mode 100644 index 6c0c56299b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createInverter.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseInverter = require('./_baseInverter'); - -/** - * Creates a function like `_.invertBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} toIteratee The function to resolve iteratees. - * @returns {Function} Returns the new inverter function. - */ -function createInverter(setter, toIteratee) { - return function(object, iteratee) { - return baseInverter(object, setter, toIteratee(iteratee), {}); - }; -} - -module.exports = createInverter; diff --git a/packages/frontend-core/node_modules/lodash/_createMathOperation.js b/packages/frontend-core/node_modules/lodash/_createMathOperation.js deleted file mode 100644 index f1e238ac0a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createMathOperation.js +++ /dev/null @@ -1,38 +0,0 @@ -var baseToNumber = require('./_baseToNumber'), - baseToString = require('./_baseToString'); - -/** - * Creates a function that performs a mathematical operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @param {number} [defaultValue] The value used for `undefined` arguments. - * @returns {Function} Returns the new mathematical operation function. - */ -function createMathOperation(operator, defaultValue) { - return function(value, other) { - var result; - if (value === undefined && other === undefined) { - return defaultValue; - } - if (value !== undefined) { - result = value; - } - if (other !== undefined) { - if (result === undefined) { - return other; - } - if (typeof value == 'string' || typeof other == 'string') { - value = baseToString(value); - other = baseToString(other); - } else { - value = baseToNumber(value); - other = baseToNumber(other); - } - result = operator(value, other); - } - return result; - }; -} - -module.exports = createMathOperation; diff --git a/packages/frontend-core/node_modules/lodash/_createOver.js b/packages/frontend-core/node_modules/lodash/_createOver.js deleted file mode 100644 index 3b9455161b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createOver.js +++ /dev/null @@ -1,27 +0,0 @@ -var apply = require('./_apply'), - arrayMap = require('./_arrayMap'), - baseIteratee = require('./_baseIteratee'), - baseRest = require('./_baseRest'), - baseUnary = require('./_baseUnary'), - flatRest = require('./_flatRest'); - -/** - * Creates a function like `_.over`. - * - * @private - * @param {Function} arrayFunc The function to iterate over iteratees. - * @returns {Function} Returns the new over function. - */ -function createOver(arrayFunc) { - return flatRest(function(iteratees) { - iteratees = arrayMap(iteratees, baseUnary(baseIteratee)); - return baseRest(function(args) { - var thisArg = this; - return arrayFunc(iteratees, function(iteratee) { - return apply(iteratee, thisArg, args); - }); - }); - }); -} - -module.exports = createOver; diff --git a/packages/frontend-core/node_modules/lodash/_createPadding.js b/packages/frontend-core/node_modules/lodash/_createPadding.js deleted file mode 100644 index 2124612b81..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createPadding.js +++ /dev/null @@ -1,33 +0,0 @@ -var baseRepeat = require('./_baseRepeat'), - baseToString = require('./_baseToString'), - castSlice = require('./_castSlice'), - hasUnicode = require('./_hasUnicode'), - stringSize = require('./_stringSize'), - stringToArray = require('./_stringToArray'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeCeil = Math.ceil; - -/** - * Creates the padding for `string` based on `length`. The `chars` string - * is truncated if the number of characters exceeds `length`. - * - * @private - * @param {number} length The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padding for `string`. - */ -function createPadding(length, chars) { - chars = chars === undefined ? ' ' : baseToString(chars); - - var charsLength = chars.length; - if (charsLength < 2) { - return charsLength ? baseRepeat(chars, length) : chars; - } - var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); - return hasUnicode(chars) - ? castSlice(stringToArray(result), 0, length).join('') - : result.slice(0, length); -} - -module.exports = createPadding; diff --git a/packages/frontend-core/node_modules/lodash/_createPartial.js b/packages/frontend-core/node_modules/lodash/_createPartial.js deleted file mode 100644 index e16c248b5e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createPartial.js +++ /dev/null @@ -1,43 +0,0 @@ -var apply = require('./_apply'), - createCtor = require('./_createCtor'), - root = require('./_root'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1; - -/** - * Creates a function that wraps `func` to invoke it with the `this` binding - * of `thisArg` and `partials` prepended to the arguments it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} partials The arguments to prepend to those provided to - * the new function. - * @returns {Function} Returns the new wrapped function. - */ -function createPartial(func, bitmask, thisArg, partials) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var argsIndex = -1, - argsLength = arguments.length, - leftIndex = -1, - leftLength = partials.length, - args = Array(leftLength + argsLength), - fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - - while (++leftIndex < leftLength) { - args[leftIndex] = partials[leftIndex]; - } - while (argsLength--) { - args[leftIndex++] = arguments[++argsIndex]; - } - return apply(fn, isBind ? thisArg : this, args); - } - return wrapper; -} - -module.exports = createPartial; diff --git a/packages/frontend-core/node_modules/lodash/_createRange.js b/packages/frontend-core/node_modules/lodash/_createRange.js deleted file mode 100644 index 9f52c77932..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createRange.js +++ /dev/null @@ -1,30 +0,0 @@ -var baseRange = require('./_baseRange'), - isIterateeCall = require('./_isIterateeCall'), - toFinite = require('./toFinite'); - -/** - * Creates a `_.range` or `_.rangeRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new range function. - */ -function createRange(fromRight) { - return function(start, end, step) { - if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { - end = step = undefined; - } - // Ensure the sign of `-0` is preserved. - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); - return baseRange(start, end, step, fromRight); - }; -} - -module.exports = createRange; diff --git a/packages/frontend-core/node_modules/lodash/_createRecurry.js b/packages/frontend-core/node_modules/lodash/_createRecurry.js deleted file mode 100644 index eb29fb24c0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createRecurry.js +++ /dev/null @@ -1,56 +0,0 @@ -var isLaziable = require('./_isLaziable'), - setData = require('./_setData'), - setWrapToString = require('./_setWrapToString'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_BOUND_FLAG = 4, - WRAP_CURRY_FLAG = 8, - WRAP_PARTIAL_FLAG = 32, - WRAP_PARTIAL_RIGHT_FLAG = 64; - -/** - * Creates a function that wraps `func` to continue currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {Function} wrapFunc The function to create the `func` wrapper. - * @param {*} placeholder The placeholder value. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ -function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { - var isCurry = bitmask & WRAP_CURRY_FLAG, - newHolders = isCurry ? holders : undefined, - newHoldersRight = isCurry ? undefined : holders, - newPartials = isCurry ? partials : undefined, - newPartialsRight = isCurry ? undefined : partials; - - bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); - bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); - - if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { - bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); - } - var newData = [ - func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, - newHoldersRight, argPos, ary, arity - ]; - - var result = wrapFunc.apply(undefined, newData); - if (isLaziable(func)) { - setData(result, newData); - } - result.placeholder = placeholder; - return setWrapToString(result, func, bitmask); -} - -module.exports = createRecurry; diff --git a/packages/frontend-core/node_modules/lodash/_createRelationalOperation.js b/packages/frontend-core/node_modules/lodash/_createRelationalOperation.js deleted file mode 100644 index a17c6b5e72..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createRelationalOperation.js +++ /dev/null @@ -1,20 +0,0 @@ -var toNumber = require('./toNumber'); - -/** - * Creates a function that performs a relational operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @returns {Function} Returns the new relational operation function. - */ -function createRelationalOperation(operator) { - return function(value, other) { - if (!(typeof value == 'string' && typeof other == 'string')) { - value = toNumber(value); - other = toNumber(other); - } - return operator(value, other); - }; -} - -module.exports = createRelationalOperation; diff --git a/packages/frontend-core/node_modules/lodash/_createRound.js b/packages/frontend-core/node_modules/lodash/_createRound.js deleted file mode 100644 index 88be5df396..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createRound.js +++ /dev/null @@ -1,35 +0,0 @@ -var root = require('./_root'), - toInteger = require('./toInteger'), - toNumber = require('./toNumber'), - toString = require('./toString'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeIsFinite = root.isFinite, - nativeMin = Math.min; - -/** - * Creates a function like `_.round`. - * - * @private - * @param {string} methodName The name of the `Math` method to use when rounding. - * @returns {Function} Returns the new round function. - */ -function createRound(methodName) { - var func = Math[methodName]; - return function(number, precision) { - number = toNumber(number); - precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); - if (precision && nativeIsFinite(number)) { - // Shift with exponential notation to avoid floating-point issues. - // See [MDN](https://mdn.io/round#Examples) for more details. - var pair = (toString(number) + 'e').split('e'), - value = func(pair[0] + 'e' + (+pair[1] + precision)); - - pair = (toString(value) + 'e').split('e'); - return +(pair[0] + 'e' + (+pair[1] - precision)); - } - return func(number); - }; -} - -module.exports = createRound; diff --git a/packages/frontend-core/node_modules/lodash/_createSet.js b/packages/frontend-core/node_modules/lodash/_createSet.js deleted file mode 100644 index 0f644eeae6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createSet.js +++ /dev/null @@ -1,19 +0,0 @@ -var Set = require('./_Set'), - noop = require('./noop'), - setToArray = require('./_setToArray'); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** - * Creates a set object of `values`. - * - * @private - * @param {Array} values The values to add to the set. - * @returns {Object} Returns the new set. - */ -var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { - return new Set(values); -}; - -module.exports = createSet; diff --git a/packages/frontend-core/node_modules/lodash/_createToPairs.js b/packages/frontend-core/node_modules/lodash/_createToPairs.js deleted file mode 100644 index 568417afda..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createToPairs.js +++ /dev/null @@ -1,30 +0,0 @@ -var baseToPairs = require('./_baseToPairs'), - getTag = require('./_getTag'), - mapToArray = require('./_mapToArray'), - setToPairs = require('./_setToPairs'); - -/** `Object#toString` result references. */ -var mapTag = '[object Map]', - setTag = '[object Set]'; - -/** - * Creates a `_.toPairs` or `_.toPairsIn` function. - * - * @private - * @param {Function} keysFunc The function to get the keys of a given object. - * @returns {Function} Returns the new pairs function. - */ -function createToPairs(keysFunc) { - return function(object) { - var tag = getTag(object); - if (tag == mapTag) { - return mapToArray(object); - } - if (tag == setTag) { - return setToPairs(object); - } - return baseToPairs(object, keysFunc(object)); - }; -} - -module.exports = createToPairs; diff --git a/packages/frontend-core/node_modules/lodash/_createWrap.js b/packages/frontend-core/node_modules/lodash/_createWrap.js deleted file mode 100644 index 33f0633e40..0000000000 --- a/packages/frontend-core/node_modules/lodash/_createWrap.js +++ /dev/null @@ -1,106 +0,0 @@ -var baseSetData = require('./_baseSetData'), - createBind = require('./_createBind'), - createCurry = require('./_createCurry'), - createHybrid = require('./_createHybrid'), - createPartial = require('./_createPartial'), - getData = require('./_getData'), - mergeData = require('./_mergeData'), - setData = require('./_setData'), - setWrapToString = require('./_setWrapToString'), - toInteger = require('./toInteger'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_FLAG = 8, - WRAP_CURRY_RIGHT_FLAG = 16, - WRAP_PARTIAL_FLAG = 32, - WRAP_PARTIAL_RIGHT_FLAG = 64; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * Creates a function that either curries or invokes `func` with optional - * `this` binding and partially applied arguments. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. - * 1 - `_.bind` - * 2 - `_.bindKey` - * 4 - `_.curry` or `_.curryRight` of a bound function - * 8 - `_.curry` - * 16 - `_.curryRight` - * 32 - `_.partial` - * 64 - `_.partialRight` - * 128 - `_.rearg` - * 256 - `_.ary` - * 512 - `_.flip` - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to be partially applied. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ -function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { - var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; - if (!isBindKey && typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - var length = partials ? partials.length : 0; - if (!length) { - bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); - partials = holders = undefined; - } - ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); - arity = arity === undefined ? arity : toInteger(arity); - length -= holders ? holders.length : 0; - - if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { - var partialsRight = partials, - holdersRight = holders; - - partials = holders = undefined; - } - var data = isBindKey ? undefined : getData(func); - - var newData = [ - func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, - argPos, ary, arity - ]; - - if (data) { - mergeData(newData, data); - } - func = newData[0]; - bitmask = newData[1]; - thisArg = newData[2]; - partials = newData[3]; - holders = newData[4]; - arity = newData[9] = newData[9] === undefined - ? (isBindKey ? 0 : func.length) - : nativeMax(newData[9] - length, 0); - - if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { - bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); - } - if (!bitmask || bitmask == WRAP_BIND_FLAG) { - var result = createBind(func, bitmask, thisArg); - } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { - result = createCurry(func, bitmask, arity); - } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { - result = createPartial(func, bitmask, thisArg, partials); - } else { - result = createHybrid.apply(undefined, newData); - } - var setter = data ? baseSetData : setData; - return setWrapToString(setter(result, newData), func, bitmask); -} - -module.exports = createWrap; diff --git a/packages/frontend-core/node_modules/lodash/_customDefaultsAssignIn.js b/packages/frontend-core/node_modules/lodash/_customDefaultsAssignIn.js deleted file mode 100644 index 1f49e6fc4f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_customDefaultsAssignIn.js +++ /dev/null @@ -1,29 +0,0 @@ -var eq = require('./eq'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used by `_.defaults` to customize its `_.assignIn` use to assign properties - * of source objects to the destination object for all destination properties - * that resolve to `undefined`. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to assign. - * @param {Object} object The parent object of `objValue`. - * @returns {*} Returns the value to assign. - */ -function customDefaultsAssignIn(objValue, srcValue, key, object) { - if (objValue === undefined || - (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { - return srcValue; - } - return objValue; -} - -module.exports = customDefaultsAssignIn; diff --git a/packages/frontend-core/node_modules/lodash/_customDefaultsMerge.js b/packages/frontend-core/node_modules/lodash/_customDefaultsMerge.js deleted file mode 100644 index 4cab31751b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_customDefaultsMerge.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseMerge = require('./_baseMerge'), - isObject = require('./isObject'); - -/** - * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source - * objects into destination objects that are passed thru. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to merge. - * @param {Object} object The parent object of `objValue`. - * @param {Object} source The parent object of `srcValue`. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - * @returns {*} Returns the value to assign. - */ -function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { - if (isObject(objValue) && isObject(srcValue)) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, objValue); - baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); - stack['delete'](srcValue); - } - return objValue; -} - -module.exports = customDefaultsMerge; diff --git a/packages/frontend-core/node_modules/lodash/_customOmitClone.js b/packages/frontend-core/node_modules/lodash/_customOmitClone.js deleted file mode 100644 index 968db2ef3e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_customOmitClone.js +++ /dev/null @@ -1,16 +0,0 @@ -var isPlainObject = require('./isPlainObject'); - -/** - * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain - * objects. - * - * @private - * @param {*} value The value to inspect. - * @param {string} key The key of the property to inspect. - * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. - */ -function customOmitClone(value) { - return isPlainObject(value) ? undefined : value; -} - -module.exports = customOmitClone; diff --git a/packages/frontend-core/node_modules/lodash/_deburrLetter.js b/packages/frontend-core/node_modules/lodash/_deburrLetter.js deleted file mode 100644 index 3e531edcf3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_deburrLetter.js +++ /dev/null @@ -1,71 +0,0 @@ -var basePropertyOf = require('./_basePropertyOf'); - -/** Used to map Latin Unicode letters to basic Latin letters. */ -var deburredLetters = { - // Latin-1 Supplement block. - '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', - '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', - '\xc7': 'C', '\xe7': 'c', - '\xd0': 'D', '\xf0': 'd', - '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', - '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', - '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', - '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', - '\xd1': 'N', '\xf1': 'n', - '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', - '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', - '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', - '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', - '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', - '\xc6': 'Ae', '\xe6': 'ae', - '\xde': 'Th', '\xfe': 'th', - '\xdf': 'ss', - // Latin Extended-A block. - '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', - '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', - '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', - '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', - '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', - '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', - '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', - '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', - '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', - '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', - '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', - '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', - '\u0134': 'J', '\u0135': 'j', - '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', - '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', - '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', - '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', - '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', - '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', - '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', - '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', - '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', - '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', - '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', - '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', - '\u0163': 't', '\u0165': 't', '\u0167': 't', - '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', - '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', - '\u0174': 'W', '\u0175': 'w', - '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', - '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', - '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', - '\u0132': 'IJ', '\u0133': 'ij', - '\u0152': 'Oe', '\u0153': 'oe', - '\u0149': "'n", '\u017f': 's' -}; - -/** - * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A - * letters to basic Latin letters. - * - * @private - * @param {string} letter The matched letter to deburr. - * @returns {string} Returns the deburred letter. - */ -var deburrLetter = basePropertyOf(deburredLetters); - -module.exports = deburrLetter; diff --git a/packages/frontend-core/node_modules/lodash/_defineProperty.js b/packages/frontend-core/node_modules/lodash/_defineProperty.js deleted file mode 100644 index b6116d92ab..0000000000 --- a/packages/frontend-core/node_modules/lodash/_defineProperty.js +++ /dev/null @@ -1,11 +0,0 @@ -var getNative = require('./_getNative'); - -var defineProperty = (function() { - try { - var func = getNative(Object, 'defineProperty'); - func({}, '', {}); - return func; - } catch (e) {} -}()); - -module.exports = defineProperty; diff --git a/packages/frontend-core/node_modules/lodash/_equalArrays.js b/packages/frontend-core/node_modules/lodash/_equalArrays.js deleted file mode 100644 index 824228c78c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_equalArrays.js +++ /dev/null @@ -1,84 +0,0 @@ -var SetCache = require('./_SetCache'), - arraySome = require('./_arraySome'), - cacheHas = require('./_cacheHas'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ -function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Check that cyclic values are equal. - var arrStacked = stack.get(array); - var othStacked = stack.get(other); - if (arrStacked && othStacked) { - return arrStacked == other && othStacked == array; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; - - stack.set(array, other); - stack.set(other, array); - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, arrValue, index, other, array, stack) - : customizer(arrValue, othValue, index, array, other, stack); - } - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!arraySome(other, function(othValue, othIndex) { - if (!cacheHas(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - stack['delete'](array); - stack['delete'](other); - return result; -} - -module.exports = equalArrays; diff --git a/packages/frontend-core/node_modules/lodash/_equalByTag.js b/packages/frontend-core/node_modules/lodash/_equalByTag.js deleted file mode 100644 index 71919e8673..0000000000 --- a/packages/frontend-core/node_modules/lodash/_equalByTag.js +++ /dev/null @@ -1,112 +0,0 @@ -var Symbol = require('./_Symbol'), - Uint8Array = require('./_Uint8Array'), - eq = require('./eq'), - equalArrays = require('./_equalArrays'), - mapToArray = require('./_mapToArray'), - setToArray = require('./_setToArray'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** `Object#toString` result references. */ -var boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - mapTag = '[object Map]', - numberTag = '[object Number]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]'; - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; - -/** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - case dataViewTag: - if ((object.byteLength != other.byteLength) || - (object.byteOffset != other.byteOffset)) { - return false; - } - object = object.buffer; - other = other.buffer; - - case arrayBufferTag: - if ((object.byteLength != other.byteLength) || - !equalFunc(new Uint8Array(object), new Uint8Array(other))) { - return false; - } - return true; - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - case mapTag: - var convert = mapToArray; - - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - - if (object.size != other.size && !isPartial) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked) { - return stacked == other; - } - bitmask |= COMPARE_UNORDERED_FLAG; - - // Recursively compare objects (susceptible to call stack limits). - stack.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); - stack['delete'](object); - return result; - - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); - } - } - return false; -} - -module.exports = equalByTag; diff --git a/packages/frontend-core/node_modules/lodash/_equalObjects.js b/packages/frontend-core/node_modules/lodash/_equalObjects.js deleted file mode 100644 index cdaacd2dfd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_equalObjects.js +++ /dev/null @@ -1,90 +0,0 @@ -var getAllKeys = require('./_getAllKeys'); - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = getAllKeys(object), - objLength = objProps.length, - othProps = getAllKeys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Check that cyclic values are equal. - var objStacked = stack.get(object); - var othStacked = stack.get(other); - if (objStacked && othStacked) { - return objStacked == other && othStacked == object; - } - var result = true; - stack.set(object, other); - stack.set(other, object); - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, objValue, key, other, object, stack) - : customizer(objValue, othValue, key, object, other, stack); - } - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - stack['delete'](object); - stack['delete'](other); - return result; -} - -module.exports = equalObjects; diff --git a/packages/frontend-core/node_modules/lodash/_escapeHtmlChar.js b/packages/frontend-core/node_modules/lodash/_escapeHtmlChar.js deleted file mode 100644 index 7ca68ee625..0000000000 --- a/packages/frontend-core/node_modules/lodash/_escapeHtmlChar.js +++ /dev/null @@ -1,21 +0,0 @@ -var basePropertyOf = require('./_basePropertyOf'); - -/** Used to map characters to HTML entities. */ -var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}; - -/** - * Used by `_.escape` to convert characters to HTML entities. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ -var escapeHtmlChar = basePropertyOf(htmlEscapes); - -module.exports = escapeHtmlChar; diff --git a/packages/frontend-core/node_modules/lodash/_escapeStringChar.js b/packages/frontend-core/node_modules/lodash/_escapeStringChar.js deleted file mode 100644 index 44eca96ca8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_escapeStringChar.js +++ /dev/null @@ -1,22 +0,0 @@ -/** Used to escape characters for inclusion in compiled string literals. */ -var stringEscapes = { - '\\': '\\', - "'": "'", - '\n': 'n', - '\r': 'r', - '\u2028': 'u2028', - '\u2029': 'u2029' -}; - -/** - * Used by `_.template` to escape characters for inclusion in compiled string literals. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ -function escapeStringChar(chr) { - return '\\' + stringEscapes[chr]; -} - -module.exports = escapeStringChar; diff --git a/packages/frontend-core/node_modules/lodash/_flatRest.js b/packages/frontend-core/node_modules/lodash/_flatRest.js deleted file mode 100644 index 94ab6cca77..0000000000 --- a/packages/frontend-core/node_modules/lodash/_flatRest.js +++ /dev/null @@ -1,16 +0,0 @@ -var flatten = require('./flatten'), - overRest = require('./_overRest'), - setToString = require('./_setToString'); - -/** - * A specialized version of `baseRest` which flattens the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ -function flatRest(func) { - return setToString(overRest(func, undefined, flatten), func + ''); -} - -module.exports = flatRest; diff --git a/packages/frontend-core/node_modules/lodash/_freeGlobal.js b/packages/frontend-core/node_modules/lodash/_freeGlobal.js deleted file mode 100644 index bbec998fc8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_freeGlobal.js +++ /dev/null @@ -1,4 +0,0 @@ -/** Detect free variable `global` from Node.js. */ -var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - -module.exports = freeGlobal; diff --git a/packages/frontend-core/node_modules/lodash/_getAllKeys.js b/packages/frontend-core/node_modules/lodash/_getAllKeys.js deleted file mode 100644 index a9ce6995a6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getAllKeys.js +++ /dev/null @@ -1,16 +0,0 @@ -var baseGetAllKeys = require('./_baseGetAllKeys'), - getSymbols = require('./_getSymbols'), - keys = require('./keys'); - -/** - * Creates an array of own enumerable property names and symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ -function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); -} - -module.exports = getAllKeys; diff --git a/packages/frontend-core/node_modules/lodash/_getAllKeysIn.js b/packages/frontend-core/node_modules/lodash/_getAllKeysIn.js deleted file mode 100644 index 1b4667841d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getAllKeysIn.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseGetAllKeys = require('./_baseGetAllKeys'), - getSymbolsIn = require('./_getSymbolsIn'), - keysIn = require('./keysIn'); - -/** - * Creates an array of own and inherited enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ -function getAllKeysIn(object) { - return baseGetAllKeys(object, keysIn, getSymbolsIn); -} - -module.exports = getAllKeysIn; diff --git a/packages/frontend-core/node_modules/lodash/_getData.js b/packages/frontend-core/node_modules/lodash/_getData.js deleted file mode 100644 index a1fe7b7790..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getData.js +++ /dev/null @@ -1,15 +0,0 @@ -var metaMap = require('./_metaMap'), - noop = require('./noop'); - -/** - * Gets metadata for `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {*} Returns the metadata for `func`. - */ -var getData = !metaMap ? noop : function(func) { - return metaMap.get(func); -}; - -module.exports = getData; diff --git a/packages/frontend-core/node_modules/lodash/_getFuncName.js b/packages/frontend-core/node_modules/lodash/_getFuncName.js deleted file mode 100644 index 21e15b3377..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getFuncName.js +++ /dev/null @@ -1,31 +0,0 @@ -var realNames = require('./_realNames'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Gets the name of `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {string} Returns the function name. - */ -function getFuncName(func) { - var result = (func.name + ''), - array = realNames[result], - length = hasOwnProperty.call(realNames, result) ? array.length : 0; - - while (length--) { - var data = array[length], - otherFunc = data.func; - if (otherFunc == null || otherFunc == func) { - return data.name; - } - } - return result; -} - -module.exports = getFuncName; diff --git a/packages/frontend-core/node_modules/lodash/_getHolder.js b/packages/frontend-core/node_modules/lodash/_getHolder.js deleted file mode 100644 index 65e94b5c24..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getHolder.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Gets the argument placeholder value for `func`. - * - * @private - * @param {Function} func The function to inspect. - * @returns {*} Returns the placeholder value. - */ -function getHolder(func) { - var object = func; - return object.placeholder; -} - -module.exports = getHolder; diff --git a/packages/frontend-core/node_modules/lodash/_getMapData.js b/packages/frontend-core/node_modules/lodash/_getMapData.js deleted file mode 100644 index 17f63032e1..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getMapData.js +++ /dev/null @@ -1,18 +0,0 @@ -var isKeyable = require('./_isKeyable'); - -/** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ -function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; -} - -module.exports = getMapData; diff --git a/packages/frontend-core/node_modules/lodash/_getMatchData.js b/packages/frontend-core/node_modules/lodash/_getMatchData.js deleted file mode 100644 index 2cc70f917f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getMatchData.js +++ /dev/null @@ -1,24 +0,0 @@ -var isStrictComparable = require('./_isStrictComparable'), - keys = require('./keys'); - -/** - * Gets the property names, values, and compare flags of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the match data of `object`. - */ -function getMatchData(object) { - var result = keys(object), - length = result.length; - - while (length--) { - var key = result[length], - value = object[key]; - - result[length] = [key, value, isStrictComparable(value)]; - } - return result; -} - -module.exports = getMatchData; diff --git a/packages/frontend-core/node_modules/lodash/_getNative.js b/packages/frontend-core/node_modules/lodash/_getNative.js deleted file mode 100644 index 97a622b83a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getNative.js +++ /dev/null @@ -1,17 +0,0 @@ -var baseIsNative = require('./_baseIsNative'), - getValue = require('./_getValue'); - -/** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ -function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; -} - -module.exports = getNative; diff --git a/packages/frontend-core/node_modules/lodash/_getPrototype.js b/packages/frontend-core/node_modules/lodash/_getPrototype.js deleted file mode 100644 index e808612129..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getPrototype.js +++ /dev/null @@ -1,6 +0,0 @@ -var overArg = require('./_overArg'); - -/** Built-in value references. */ -var getPrototype = overArg(Object.getPrototypeOf, Object); - -module.exports = getPrototype; diff --git a/packages/frontend-core/node_modules/lodash/_getRawTag.js b/packages/frontend-core/node_modules/lodash/_getRawTag.js deleted file mode 100644 index 49a95c9c65..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getRawTag.js +++ /dev/null @@ -1,46 +0,0 @@ -var Symbol = require('./_Symbol'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ -function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; -} - -module.exports = getRawTag; diff --git a/packages/frontend-core/node_modules/lodash/_getSymbols.js b/packages/frontend-core/node_modules/lodash/_getSymbols.js deleted file mode 100644 index 7d6eafebb3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getSymbols.js +++ /dev/null @@ -1,30 +0,0 @@ -var arrayFilter = require('./_arrayFilter'), - stubArray = require('./stubArray'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Built-in value references. */ -var propertyIsEnumerable = objectProto.propertyIsEnumerable; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeGetSymbols = Object.getOwnPropertySymbols; - -/** - * Creates an array of the own enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ -var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); -}; - -module.exports = getSymbols; diff --git a/packages/frontend-core/node_modules/lodash/_getSymbolsIn.js b/packages/frontend-core/node_modules/lodash/_getSymbolsIn.js deleted file mode 100644 index cec0855a4a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getSymbolsIn.js +++ /dev/null @@ -1,25 +0,0 @@ -var arrayPush = require('./_arrayPush'), - getPrototype = require('./_getPrototype'), - getSymbols = require('./_getSymbols'), - stubArray = require('./stubArray'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeGetSymbols = Object.getOwnPropertySymbols; - -/** - * Creates an array of the own and inherited enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ -var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { - var result = []; - while (object) { - arrayPush(result, getSymbols(object)); - object = getPrototype(object); - } - return result; -}; - -module.exports = getSymbolsIn; diff --git a/packages/frontend-core/node_modules/lodash/_getTag.js b/packages/frontend-core/node_modules/lodash/_getTag.js deleted file mode 100644 index deaf89d582..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getTag.js +++ /dev/null @@ -1,58 +0,0 @@ -var DataView = require('./_DataView'), - Map = require('./_Map'), - Promise = require('./_Promise'), - Set = require('./_Set'), - WeakMap = require('./_WeakMap'), - baseGetTag = require('./_baseGetTag'), - toSource = require('./_toSource'); - -/** `Object#toString` result references. */ -var mapTag = '[object Map]', - objectTag = '[object Object]', - promiseTag = '[object Promise]', - setTag = '[object Set]', - weakMapTag = '[object WeakMap]'; - -var dataViewTag = '[object DataView]'; - -/** Used to detect maps, sets, and weakmaps. */ -var dataViewCtorString = toSource(DataView), - mapCtorString = toSource(Map), - promiseCtorString = toSource(Promise), - setCtorString = toSource(Set), - weakMapCtorString = toSource(WeakMap); - -/** - * Gets the `toStringTag` of `value`. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -var getTag = baseGetTag; - -// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. -if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || - (Map && getTag(new Map) != mapTag) || - (Promise && getTag(Promise.resolve()) != promiseTag) || - (Set && getTag(new Set) != setTag) || - (WeakMap && getTag(new WeakMap) != weakMapTag)) { - getTag = function(value) { - var result = baseGetTag(value), - Ctor = result == objectTag ? value.constructor : undefined, - ctorString = Ctor ? toSource(Ctor) : ''; - - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: return dataViewTag; - case mapCtorString: return mapTag; - case promiseCtorString: return promiseTag; - case setCtorString: return setTag; - case weakMapCtorString: return weakMapTag; - } - } - return result; - }; -} - -module.exports = getTag; diff --git a/packages/frontend-core/node_modules/lodash/_getValue.js b/packages/frontend-core/node_modules/lodash/_getValue.js deleted file mode 100644 index 5f7d773673..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getValue.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function getValue(object, key) { - return object == null ? undefined : object[key]; -} - -module.exports = getValue; diff --git a/packages/frontend-core/node_modules/lodash/_getView.js b/packages/frontend-core/node_modules/lodash/_getView.js deleted file mode 100644 index df1e5d44b5..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getView.js +++ /dev/null @@ -1,33 +0,0 @@ -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max, - nativeMin = Math.min; - -/** - * Gets the view, applying any `transforms` to the `start` and `end` positions. - * - * @private - * @param {number} start The start of the view. - * @param {number} end The end of the view. - * @param {Array} transforms The transformations to apply to the view. - * @returns {Object} Returns an object containing the `start` and `end` - * positions of the view. - */ -function getView(start, end, transforms) { - var index = -1, - length = transforms.length; - - while (++index < length) { - var data = transforms[index], - size = data.size; - - switch (data.type) { - case 'drop': start += size; break; - case 'dropRight': end -= size; break; - case 'take': end = nativeMin(end, start + size); break; - case 'takeRight': start = nativeMax(start, end - size); break; - } - } - return { 'start': start, 'end': end }; -} - -module.exports = getView; diff --git a/packages/frontend-core/node_modules/lodash/_getWrapDetails.js b/packages/frontend-core/node_modules/lodash/_getWrapDetails.js deleted file mode 100644 index 3bcc6e48a3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_getWrapDetails.js +++ /dev/null @@ -1,17 +0,0 @@ -/** Used to match wrap detail comments. */ -var reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, - reSplitDetails = /,? & /; - -/** - * Extracts wrapper details from the `source` body comment. - * - * @private - * @param {string} source The source to inspect. - * @returns {Array} Returns the wrapper details. - */ -function getWrapDetails(source) { - var match = source.match(reWrapDetails); - return match ? match[1].split(reSplitDetails) : []; -} - -module.exports = getWrapDetails; diff --git a/packages/frontend-core/node_modules/lodash/_hasPath.js b/packages/frontend-core/node_modules/lodash/_hasPath.js deleted file mode 100644 index 93dbde152e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hasPath.js +++ /dev/null @@ -1,39 +0,0 @@ -var castPath = require('./_castPath'), - isArguments = require('./isArguments'), - isArray = require('./isArray'), - isIndex = require('./_isIndex'), - isLength = require('./isLength'), - toKey = require('./_toKey'); - -/** - * Checks if `path` exists on `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @param {Function} hasFunc The function to check properties. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - */ -function hasPath(object, path, hasFunc) { - path = castPath(path, object); - - var index = -1, - length = path.length, - result = false; - - while (++index < length) { - var key = toKey(path[index]); - if (!(result = object != null && hasFunc(object, key))) { - break; - } - object = object[key]; - } - if (result || ++index != length) { - return result; - } - length = object == null ? 0 : object.length; - return !!length && isLength(length) && isIndex(key, length) && - (isArray(object) || isArguments(object)); -} - -module.exports = hasPath; diff --git a/packages/frontend-core/node_modules/lodash/_hasUnicode.js b/packages/frontend-core/node_modules/lodash/_hasUnicode.js deleted file mode 100644 index cb6ca15f66..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hasUnicode.js +++ /dev/null @@ -1,26 +0,0 @@ -/** Used to compose unicode character classes. */ -var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsVarRange = '\\ufe0e\\ufe0f'; - -/** Used to compose unicode capture groups. */ -var rsZWJ = '\\u200d'; - -/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ -var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); - -/** - * Checks if `string` contains Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a symbol is found, else `false`. - */ -function hasUnicode(string) { - return reHasUnicode.test(string); -} - -module.exports = hasUnicode; diff --git a/packages/frontend-core/node_modules/lodash/_hasUnicodeWord.js b/packages/frontend-core/node_modules/lodash/_hasUnicodeWord.js deleted file mode 100644 index 95d52c444c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hasUnicodeWord.js +++ /dev/null @@ -1,15 +0,0 @@ -/** Used to detect strings that need a more robust regexp to match words. */ -var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; - -/** - * Checks if `string` contains a word composed of Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a word is found, else `false`. - */ -function hasUnicodeWord(string) { - return reHasUnicodeWord.test(string); -} - -module.exports = hasUnicodeWord; diff --git a/packages/frontend-core/node_modules/lodash/_hashClear.js b/packages/frontend-core/node_modules/lodash/_hashClear.js deleted file mode 100644 index 5d4b70cc46..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hashClear.js +++ /dev/null @@ -1,15 +0,0 @@ -var nativeCreate = require('./_nativeCreate'); - -/** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ -function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; -} - -module.exports = hashClear; diff --git a/packages/frontend-core/node_modules/lodash/_hashDelete.js b/packages/frontend-core/node_modules/lodash/_hashDelete.js deleted file mode 100644 index ea9dabf131..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hashDelete.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; -} - -module.exports = hashDelete; diff --git a/packages/frontend-core/node_modules/lodash/_hashGet.js b/packages/frontend-core/node_modules/lodash/_hashGet.js deleted file mode 100644 index 1fc2f34b10..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hashGet.js +++ /dev/null @@ -1,30 +0,0 @@ -var nativeCreate = require('./_nativeCreate'); - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; -} - -module.exports = hashGet; diff --git a/packages/frontend-core/node_modules/lodash/_hashHas.js b/packages/frontend-core/node_modules/lodash/_hashHas.js deleted file mode 100644 index 281a5517c6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hashHas.js +++ /dev/null @@ -1,23 +0,0 @@ -var nativeCreate = require('./_nativeCreate'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function hashHas(key) { - var data = this.__data__; - return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); -} - -module.exports = hashHas; diff --git a/packages/frontend-core/node_modules/lodash/_hashSet.js b/packages/frontend-core/node_modules/lodash/_hashSet.js deleted file mode 100644 index e1055283e4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_hashSet.js +++ /dev/null @@ -1,23 +0,0 @@ -var nativeCreate = require('./_nativeCreate'); - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ -function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; -} - -module.exports = hashSet; diff --git a/packages/frontend-core/node_modules/lodash/_initCloneArray.js b/packages/frontend-core/node_modules/lodash/_initCloneArray.js deleted file mode 100644 index 078c15af98..0000000000 --- a/packages/frontend-core/node_modules/lodash/_initCloneArray.js +++ /dev/null @@ -1,26 +0,0 @@ -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Initializes an array clone. - * - * @private - * @param {Array} array The array to clone. - * @returns {Array} Returns the initialized clone. - */ -function initCloneArray(array) { - var length = array.length, - result = new array.constructor(length); - - // Add properties assigned by `RegExp#exec`. - if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { - result.index = array.index; - result.input = array.input; - } - return result; -} - -module.exports = initCloneArray; diff --git a/packages/frontend-core/node_modules/lodash/_initCloneByTag.js b/packages/frontend-core/node_modules/lodash/_initCloneByTag.js deleted file mode 100644 index f69a008ca3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_initCloneByTag.js +++ /dev/null @@ -1,77 +0,0 @@ -var cloneArrayBuffer = require('./_cloneArrayBuffer'), - cloneDataView = require('./_cloneDataView'), - cloneRegExp = require('./_cloneRegExp'), - cloneSymbol = require('./_cloneSymbol'), - cloneTypedArray = require('./_cloneTypedArray'); - -/** `Object#toString` result references. */ -var boolTag = '[object Boolean]', - dateTag = '[object Date]', - mapTag = '[object Map]', - numberTag = '[object Number]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - -/** - * Initializes an object clone based on its `toStringTag`. - * - * **Note:** This function only supports cloning values with tags of - * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. - * - * @private - * @param {Object} object The object to clone. - * @param {string} tag The `toStringTag` of the object to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the initialized clone. - */ -function initCloneByTag(object, tag, isDeep) { - var Ctor = object.constructor; - switch (tag) { - case arrayBufferTag: - return cloneArrayBuffer(object); - - case boolTag: - case dateTag: - return new Ctor(+object); - - case dataViewTag: - return cloneDataView(object, isDeep); - - case float32Tag: case float64Tag: - case int8Tag: case int16Tag: case int32Tag: - case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: - return cloneTypedArray(object, isDeep); - - case mapTag: - return new Ctor; - - case numberTag: - case stringTag: - return new Ctor(object); - - case regexpTag: - return cloneRegExp(object); - - case setTag: - return new Ctor; - - case symbolTag: - return cloneSymbol(object); - } -} - -module.exports = initCloneByTag; diff --git a/packages/frontend-core/node_modules/lodash/_initCloneObject.js b/packages/frontend-core/node_modules/lodash/_initCloneObject.js deleted file mode 100644 index 5a13e64a52..0000000000 --- a/packages/frontend-core/node_modules/lodash/_initCloneObject.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseCreate = require('./_baseCreate'), - getPrototype = require('./_getPrototype'), - isPrototype = require('./_isPrototype'); - -/** - * Initializes an object clone. - * - * @private - * @param {Object} object The object to clone. - * @returns {Object} Returns the initialized clone. - */ -function initCloneObject(object) { - return (typeof object.constructor == 'function' && !isPrototype(object)) - ? baseCreate(getPrototype(object)) - : {}; -} - -module.exports = initCloneObject; diff --git a/packages/frontend-core/node_modules/lodash/_insertWrapDetails.js b/packages/frontend-core/node_modules/lodash/_insertWrapDetails.js deleted file mode 100644 index e790808646..0000000000 --- a/packages/frontend-core/node_modules/lodash/_insertWrapDetails.js +++ /dev/null @@ -1,23 +0,0 @@ -/** Used to match wrap detail comments. */ -var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/; - -/** - * Inserts wrapper `details` in a comment at the top of the `source` body. - * - * @private - * @param {string} source The source to modify. - * @returns {Array} details The details to insert. - * @returns {string} Returns the modified source. - */ -function insertWrapDetails(source, details) { - var length = details.length; - if (!length) { - return source; - } - var lastIndex = length - 1; - details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; - details = details.join(length > 2 ? ', ' : ' '); - return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); -} - -module.exports = insertWrapDetails; diff --git a/packages/frontend-core/node_modules/lodash/_isFlattenable.js b/packages/frontend-core/node_modules/lodash/_isFlattenable.js deleted file mode 100644 index 4cc2c249cc..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isFlattenable.js +++ /dev/null @@ -1,20 +0,0 @@ -var Symbol = require('./_Symbol'), - isArguments = require('./isArguments'), - isArray = require('./isArray'); - -/** Built-in value references. */ -var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined; - -/** - * Checks if `value` is a flattenable `arguments` object or array. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. - */ -function isFlattenable(value) { - return isArray(value) || isArguments(value) || - !!(spreadableSymbol && value && value[spreadableSymbol]); -} - -module.exports = isFlattenable; diff --git a/packages/frontend-core/node_modules/lodash/_isIndex.js b/packages/frontend-core/node_modules/lodash/_isIndex.js deleted file mode 100644 index 061cd390c3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isIndex.js +++ /dev/null @@ -1,25 +0,0 @@ -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** Used to detect unsigned integer values. */ -var reIsUint = /^(?:0|[1-9]\d*)$/; - -/** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ -function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - - return !!length && - (type == 'number' || - (type != 'symbol' && reIsUint.test(value))) && - (value > -1 && value % 1 == 0 && value < length); -} - -module.exports = isIndex; diff --git a/packages/frontend-core/node_modules/lodash/_isIterateeCall.js b/packages/frontend-core/node_modules/lodash/_isIterateeCall.js deleted file mode 100644 index a0bb5a9cf6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isIterateeCall.js +++ /dev/null @@ -1,30 +0,0 @@ -var eq = require('./eq'), - isArrayLike = require('./isArrayLike'), - isIndex = require('./_isIndex'), - isObject = require('./isObject'); - -/** - * Checks if the given arguments are from an iteratee call. - * - * @private - * @param {*} value The potential iteratee value argument. - * @param {*} index The potential iteratee index or key argument. - * @param {*} object The potential iteratee object argument. - * @returns {boolean} Returns `true` if the arguments are from an iteratee call, - * else `false`. - */ -function isIterateeCall(value, index, object) { - if (!isObject(object)) { - return false; - } - var type = typeof index; - if (type == 'number' - ? (isArrayLike(object) && isIndex(index, object.length)) - : (type == 'string' && index in object) - ) { - return eq(object[index], value); - } - return false; -} - -module.exports = isIterateeCall; diff --git a/packages/frontend-core/node_modules/lodash/_isKey.js b/packages/frontend-core/node_modules/lodash/_isKey.js deleted file mode 100644 index ff08b06808..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isKey.js +++ /dev/null @@ -1,29 +0,0 @@ -var isArray = require('./isArray'), - isSymbol = require('./isSymbol'); - -/** Used to match property names within property paths. */ -var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, - reIsPlainProp = /^\w*$/; - -/** - * Checks if `value` is a property name and not a property path. - * - * @private - * @param {*} value The value to check. - * @param {Object} [object] The object to query keys on. - * @returns {boolean} Returns `true` if `value` is a property name, else `false`. - */ -function isKey(value, object) { - if (isArray(value)) { - return false; - } - var type = typeof value; - if (type == 'number' || type == 'symbol' || type == 'boolean' || - value == null || isSymbol(value)) { - return true; - } - return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || - (object != null && value in Object(object)); -} - -module.exports = isKey; diff --git a/packages/frontend-core/node_modules/lodash/_isKeyable.js b/packages/frontend-core/node_modules/lodash/_isKeyable.js deleted file mode 100644 index 39f1828d4a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isKeyable.js +++ /dev/null @@ -1,15 +0,0 @@ -/** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ -function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); -} - -module.exports = isKeyable; diff --git a/packages/frontend-core/node_modules/lodash/_isLaziable.js b/packages/frontend-core/node_modules/lodash/_isLaziable.js deleted file mode 100644 index a57c4f2dc7..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isLaziable.js +++ /dev/null @@ -1,28 +0,0 @@ -var LazyWrapper = require('./_LazyWrapper'), - getData = require('./_getData'), - getFuncName = require('./_getFuncName'), - lodash = require('./wrapperLodash'); - -/** - * Checks if `func` has a lazy counterpart. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` has a lazy counterpart, - * else `false`. - */ -function isLaziable(func) { - var funcName = getFuncName(func), - other = lodash[funcName]; - - if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { - return false; - } - if (func === other) { - return true; - } - var data = getData(other); - return !!data && func === data[0]; -} - -module.exports = isLaziable; diff --git a/packages/frontend-core/node_modules/lodash/_isMaskable.js b/packages/frontend-core/node_modules/lodash/_isMaskable.js deleted file mode 100644 index eb98d09f31..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isMaskable.js +++ /dev/null @@ -1,14 +0,0 @@ -var coreJsData = require('./_coreJsData'), - isFunction = require('./isFunction'), - stubFalse = require('./stubFalse'); - -/** - * Checks if `func` is capable of being masked. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `func` is maskable, else `false`. - */ -var isMaskable = coreJsData ? isFunction : stubFalse; - -module.exports = isMaskable; diff --git a/packages/frontend-core/node_modules/lodash/_isMasked.js b/packages/frontend-core/node_modules/lodash/_isMasked.js deleted file mode 100644 index 4b0f21ba89..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isMasked.js +++ /dev/null @@ -1,20 +0,0 @@ -var coreJsData = require('./_coreJsData'); - -/** Used to detect methods masquerading as native. */ -var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; -}()); - -/** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ -function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); -} - -module.exports = isMasked; diff --git a/packages/frontend-core/node_modules/lodash/_isPrototype.js b/packages/frontend-core/node_modules/lodash/_isPrototype.js deleted file mode 100644 index 0f29498d47..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isPrototype.js +++ /dev/null @@ -1,18 +0,0 @@ -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Checks if `value` is likely a prototype object. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. - */ -function isPrototype(value) { - var Ctor = value && value.constructor, - proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; - - return value === proto; -} - -module.exports = isPrototype; diff --git a/packages/frontend-core/node_modules/lodash/_isStrictComparable.js b/packages/frontend-core/node_modules/lodash/_isStrictComparable.js deleted file mode 100644 index b59f40b857..0000000000 --- a/packages/frontend-core/node_modules/lodash/_isStrictComparable.js +++ /dev/null @@ -1,15 +0,0 @@ -var isObject = require('./isObject'); - -/** - * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` if suitable for strict - * equality comparisons, else `false`. - */ -function isStrictComparable(value) { - return value === value && !isObject(value); -} - -module.exports = isStrictComparable; diff --git a/packages/frontend-core/node_modules/lodash/_iteratorToArray.js b/packages/frontend-core/node_modules/lodash/_iteratorToArray.js deleted file mode 100644 index 476856647c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_iteratorToArray.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Converts `iterator` to an array. - * - * @private - * @param {Object} iterator The iterator to convert. - * @returns {Array} Returns the converted array. - */ -function iteratorToArray(iterator) { - var data, - result = []; - - while (!(data = iterator.next()).done) { - result.push(data.value); - } - return result; -} - -module.exports = iteratorToArray; diff --git a/packages/frontend-core/node_modules/lodash/_lazyClone.js b/packages/frontend-core/node_modules/lodash/_lazyClone.js deleted file mode 100644 index d8a51f8703..0000000000 --- a/packages/frontend-core/node_modules/lodash/_lazyClone.js +++ /dev/null @@ -1,23 +0,0 @@ -var LazyWrapper = require('./_LazyWrapper'), - copyArray = require('./_copyArray'); - -/** - * Creates a clone of the lazy wrapper object. - * - * @private - * @name clone - * @memberOf LazyWrapper - * @returns {Object} Returns the cloned `LazyWrapper` object. - */ -function lazyClone() { - var result = new LazyWrapper(this.__wrapped__); - result.__actions__ = copyArray(this.__actions__); - result.__dir__ = this.__dir__; - result.__filtered__ = this.__filtered__; - result.__iteratees__ = copyArray(this.__iteratees__); - result.__takeCount__ = this.__takeCount__; - result.__views__ = copyArray(this.__views__); - return result; -} - -module.exports = lazyClone; diff --git a/packages/frontend-core/node_modules/lodash/_lazyReverse.js b/packages/frontend-core/node_modules/lodash/_lazyReverse.js deleted file mode 100644 index c5b52190f4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_lazyReverse.js +++ /dev/null @@ -1,23 +0,0 @@ -var LazyWrapper = require('./_LazyWrapper'); - -/** - * Reverses the direction of lazy iteration. - * - * @private - * @name reverse - * @memberOf LazyWrapper - * @returns {Object} Returns the new reversed `LazyWrapper` object. - */ -function lazyReverse() { - if (this.__filtered__) { - var result = new LazyWrapper(this); - result.__dir__ = -1; - result.__filtered__ = true; - } else { - result = this.clone(); - result.__dir__ *= -1; - } - return result; -} - -module.exports = lazyReverse; diff --git a/packages/frontend-core/node_modules/lodash/_lazyValue.js b/packages/frontend-core/node_modules/lodash/_lazyValue.js deleted file mode 100644 index 371ca8d223..0000000000 --- a/packages/frontend-core/node_modules/lodash/_lazyValue.js +++ /dev/null @@ -1,69 +0,0 @@ -var baseWrapperValue = require('./_baseWrapperValue'), - getView = require('./_getView'), - isArray = require('./isArray'); - -/** Used to indicate the type of lazy iteratees. */ -var LAZY_FILTER_FLAG = 1, - LAZY_MAP_FLAG = 2; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMin = Math.min; - -/** - * Extracts the unwrapped value from its lazy wrapper. - * - * @private - * @name value - * @memberOf LazyWrapper - * @returns {*} Returns the unwrapped value. - */ -function lazyValue() { - var array = this.__wrapped__.value(), - dir = this.__dir__, - isArr = isArray(array), - isRight = dir < 0, - arrLength = isArr ? array.length : 0, - view = getView(0, arrLength, this.__views__), - start = view.start, - end = view.end, - length = end - start, - index = isRight ? end : (start - 1), - iteratees = this.__iteratees__, - iterLength = iteratees.length, - resIndex = 0, - takeCount = nativeMin(length, this.__takeCount__); - - if (!isArr || (!isRight && arrLength == length && takeCount == length)) { - return baseWrapperValue(array, this.__actions__); - } - var result = []; - - outer: - while (length-- && resIndex < takeCount) { - index += dir; - - var iterIndex = -1, - value = array[index]; - - while (++iterIndex < iterLength) { - var data = iteratees[iterIndex], - iteratee = data.iteratee, - type = data.type, - computed = iteratee(value); - - if (type == LAZY_MAP_FLAG) { - value = computed; - } else if (!computed) { - if (type == LAZY_FILTER_FLAG) { - continue outer; - } else { - break outer; - } - } - } - result[resIndex++] = value; - } - return result; -} - -module.exports = lazyValue; diff --git a/packages/frontend-core/node_modules/lodash/_listCacheClear.js b/packages/frontend-core/node_modules/lodash/_listCacheClear.js deleted file mode 100644 index acbe39a597..0000000000 --- a/packages/frontend-core/node_modules/lodash/_listCacheClear.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ -function listCacheClear() { - this.__data__ = []; - this.size = 0; -} - -module.exports = listCacheClear; diff --git a/packages/frontend-core/node_modules/lodash/_listCacheDelete.js b/packages/frontend-core/node_modules/lodash/_listCacheDelete.js deleted file mode 100644 index b1384ade97..0000000000 --- a/packages/frontend-core/node_modules/lodash/_listCacheDelete.js +++ /dev/null @@ -1,35 +0,0 @@ -var assocIndexOf = require('./_assocIndexOf'); - -/** Used for built-in method references. */ -var arrayProto = Array.prototype; - -/** Built-in value references. */ -var splice = arrayProto.splice; - -/** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - --this.size; - return true; -} - -module.exports = listCacheDelete; diff --git a/packages/frontend-core/node_modules/lodash/_listCacheGet.js b/packages/frontend-core/node_modules/lodash/_listCacheGet.js deleted file mode 100644 index f8192fc384..0000000000 --- a/packages/frontend-core/node_modules/lodash/_listCacheGet.js +++ /dev/null @@ -1,19 +0,0 @@ -var assocIndexOf = require('./_assocIndexOf'); - -/** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; -} - -module.exports = listCacheGet; diff --git a/packages/frontend-core/node_modules/lodash/_listCacheHas.js b/packages/frontend-core/node_modules/lodash/_listCacheHas.js deleted file mode 100644 index 2adf67146f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_listCacheHas.js +++ /dev/null @@ -1,16 +0,0 @@ -var assocIndexOf = require('./_assocIndexOf'); - -/** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; -} - -module.exports = listCacheHas; diff --git a/packages/frontend-core/node_modules/lodash/_listCacheSet.js b/packages/frontend-core/node_modules/lodash/_listCacheSet.js deleted file mode 100644 index 5855c95e40..0000000000 --- a/packages/frontend-core/node_modules/lodash/_listCacheSet.js +++ /dev/null @@ -1,26 +0,0 @@ -var assocIndexOf = require('./_assocIndexOf'); - -/** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ -function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; -} - -module.exports = listCacheSet; diff --git a/packages/frontend-core/node_modules/lodash/_mapCacheClear.js b/packages/frontend-core/node_modules/lodash/_mapCacheClear.js deleted file mode 100644 index bc9ca204ae..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapCacheClear.js +++ /dev/null @@ -1,21 +0,0 @@ -var Hash = require('./_Hash'), - ListCache = require('./_ListCache'), - Map = require('./_Map'); - -/** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ -function mapCacheClear() { - this.size = 0; - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; -} - -module.exports = mapCacheClear; diff --git a/packages/frontend-core/node_modules/lodash/_mapCacheDelete.js b/packages/frontend-core/node_modules/lodash/_mapCacheDelete.js deleted file mode 100644 index 946ca3c939..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapCacheDelete.js +++ /dev/null @@ -1,18 +0,0 @@ -var getMapData = require('./_getMapData'); - -/** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function mapCacheDelete(key) { - var result = getMapData(this, key)['delete'](key); - this.size -= result ? 1 : 0; - return result; -} - -module.exports = mapCacheDelete; diff --git a/packages/frontend-core/node_modules/lodash/_mapCacheGet.js b/packages/frontend-core/node_modules/lodash/_mapCacheGet.js deleted file mode 100644 index f29f55cfdd..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapCacheGet.js +++ /dev/null @@ -1,16 +0,0 @@ -var getMapData = require('./_getMapData'); - -/** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function mapCacheGet(key) { - return getMapData(this, key).get(key); -} - -module.exports = mapCacheGet; diff --git a/packages/frontend-core/node_modules/lodash/_mapCacheHas.js b/packages/frontend-core/node_modules/lodash/_mapCacheHas.js deleted file mode 100644 index a1214c028b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapCacheHas.js +++ /dev/null @@ -1,16 +0,0 @@ -var getMapData = require('./_getMapData'); - -/** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function mapCacheHas(key) { - return getMapData(this, key).has(key); -} - -module.exports = mapCacheHas; diff --git a/packages/frontend-core/node_modules/lodash/_mapCacheSet.js b/packages/frontend-core/node_modules/lodash/_mapCacheSet.js deleted file mode 100644 index 7346849273..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapCacheSet.js +++ /dev/null @@ -1,22 +0,0 @@ -var getMapData = require('./_getMapData'); - -/** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ -function mapCacheSet(key, value) { - var data = getMapData(this, key), - size = data.size; - - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; -} - -module.exports = mapCacheSet; diff --git a/packages/frontend-core/node_modules/lodash/_mapToArray.js b/packages/frontend-core/node_modules/lodash/_mapToArray.js deleted file mode 100644 index fe3dd531a3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mapToArray.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Converts `map` to its key-value pairs. - * - * @private - * @param {Object} map The map to convert. - * @returns {Array} Returns the key-value pairs. - */ -function mapToArray(map) { - var index = -1, - result = Array(map.size); - - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; -} - -module.exports = mapToArray; diff --git a/packages/frontend-core/node_modules/lodash/_matchesStrictComparable.js b/packages/frontend-core/node_modules/lodash/_matchesStrictComparable.js deleted file mode 100644 index f608af9ec4..0000000000 --- a/packages/frontend-core/node_modules/lodash/_matchesStrictComparable.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * A specialized version of `matchesProperty` for source values suitable - * for strict equality comparisons, i.e. `===`. - * - * @private - * @param {string} key The key of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ -function matchesStrictComparable(key, srcValue) { - return function(object) { - if (object == null) { - return false; - } - return object[key] === srcValue && - (srcValue !== undefined || (key in Object(object))); - }; -} - -module.exports = matchesStrictComparable; diff --git a/packages/frontend-core/node_modules/lodash/_memoizeCapped.js b/packages/frontend-core/node_modules/lodash/_memoizeCapped.js deleted file mode 100644 index 7f71c8fbae..0000000000 --- a/packages/frontend-core/node_modules/lodash/_memoizeCapped.js +++ /dev/null @@ -1,26 +0,0 @@ -var memoize = require('./memoize'); - -/** Used as the maximum memoize cache size. */ -var MAX_MEMOIZE_SIZE = 500; - -/** - * A specialized version of `_.memoize` which clears the memoized function's - * cache when it exceeds `MAX_MEMOIZE_SIZE`. - * - * @private - * @param {Function} func The function to have its output memoized. - * @returns {Function} Returns the new memoized function. - */ -function memoizeCapped(func) { - var result = memoize(func, function(key) { - if (cache.size === MAX_MEMOIZE_SIZE) { - cache.clear(); - } - return key; - }); - - var cache = result.cache; - return result; -} - -module.exports = memoizeCapped; diff --git a/packages/frontend-core/node_modules/lodash/_mergeData.js b/packages/frontend-core/node_modules/lodash/_mergeData.js deleted file mode 100644 index cb570f9767..0000000000 --- a/packages/frontend-core/node_modules/lodash/_mergeData.js +++ /dev/null @@ -1,90 +0,0 @@ -var composeArgs = require('./_composeArgs'), - composeArgsRight = require('./_composeArgsRight'), - replaceHolders = require('./_replaceHolders'); - -/** Used as the internal argument placeholder. */ -var PLACEHOLDER = '__lodash_placeholder__'; - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_BOUND_FLAG = 4, - WRAP_CURRY_FLAG = 8, - WRAP_ARY_FLAG = 128, - WRAP_REARG_FLAG = 256; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMin = Math.min; - -/** - * Merges the function metadata of `source` into `data`. - * - * Merging metadata reduces the number of wrappers used to invoke a function. - * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` - * may be applied regardless of execution order. Methods like `_.ary` and - * `_.rearg` modify function arguments, making the order in which they are - * executed important, preventing the merging of metadata. However, we make - * an exception for a safe combined case where curried functions have `_.ary` - * and or `_.rearg` applied. - * - * @private - * @param {Array} data The destination metadata. - * @param {Array} source The source metadata. - * @returns {Array} Returns `data`. - */ -function mergeData(data, source) { - var bitmask = data[1], - srcBitmask = source[1], - newBitmask = bitmask | srcBitmask, - isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); - - var isCombo = - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || - ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); - - // Exit early if metadata can't be merged. - if (!(isCommon || isCombo)) { - return data; - } - // Use source `thisArg` if available. - if (srcBitmask & WRAP_BIND_FLAG) { - data[2] = source[2]; - // Set when currying a bound function. - newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; - } - // Compose partial arguments. - var value = source[3]; - if (value) { - var partials = data[3]; - data[3] = partials ? composeArgs(partials, value, source[4]) : value; - data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; - } - // Compose partial right arguments. - value = source[5]; - if (value) { - partials = data[5]; - data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; - data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; - } - // Use source `argPos` if available. - value = source[7]; - if (value) { - data[7] = value; - } - // Use source `ary` if it's smaller. - if (srcBitmask & WRAP_ARY_FLAG) { - data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); - } - // Use source `arity` if one is not provided. - if (data[9] == null) { - data[9] = source[9]; - } - // Use source `func` and merge bitmasks. - data[0] = source[0]; - data[1] = newBitmask; - - return data; -} - -module.exports = mergeData; diff --git a/packages/frontend-core/node_modules/lodash/_metaMap.js b/packages/frontend-core/node_modules/lodash/_metaMap.js deleted file mode 100644 index 0157a0b095..0000000000 --- a/packages/frontend-core/node_modules/lodash/_metaMap.js +++ /dev/null @@ -1,6 +0,0 @@ -var WeakMap = require('./_WeakMap'); - -/** Used to store function metadata. */ -var metaMap = WeakMap && new WeakMap; - -module.exports = metaMap; diff --git a/packages/frontend-core/node_modules/lodash/_nativeCreate.js b/packages/frontend-core/node_modules/lodash/_nativeCreate.js deleted file mode 100644 index c7aede85b3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_nativeCreate.js +++ /dev/null @@ -1,6 +0,0 @@ -var getNative = require('./_getNative'); - -/* Built-in method references that are verified to be native. */ -var nativeCreate = getNative(Object, 'create'); - -module.exports = nativeCreate; diff --git a/packages/frontend-core/node_modules/lodash/_nativeKeys.js b/packages/frontend-core/node_modules/lodash/_nativeKeys.js deleted file mode 100644 index 479a104a1c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_nativeKeys.js +++ /dev/null @@ -1,6 +0,0 @@ -var overArg = require('./_overArg'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeKeys = overArg(Object.keys, Object); - -module.exports = nativeKeys; diff --git a/packages/frontend-core/node_modules/lodash/_nativeKeysIn.js b/packages/frontend-core/node_modules/lodash/_nativeKeysIn.js deleted file mode 100644 index 00ee505947..0000000000 --- a/packages/frontend-core/node_modules/lodash/_nativeKeysIn.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * This function is like - * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * except that it includes inherited enumerable properties. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } - } - return result; -} - -module.exports = nativeKeysIn; diff --git a/packages/frontend-core/node_modules/lodash/_nodeUtil.js b/packages/frontend-core/node_modules/lodash/_nodeUtil.js deleted file mode 100644 index 983d78f75b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_nodeUtil.js +++ /dev/null @@ -1,30 +0,0 @@ -var freeGlobal = require('./_freeGlobal'); - -/** Detect free variable `exports`. */ -var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Detect free variable `process` from Node.js. */ -var freeProcess = moduleExports && freeGlobal.process; - -/** Used to access faster Node.js helpers. */ -var nodeUtil = (function() { - try { - // Use `util.types` for Node.js 10+. - var types = freeModule && freeModule.require && freeModule.require('util').types; - - if (types) { - return types; - } - - // Legacy `process.binding('util')` for Node.js < 10. - return freeProcess && freeProcess.binding && freeProcess.binding('util'); - } catch (e) {} -}()); - -module.exports = nodeUtil; diff --git a/packages/frontend-core/node_modules/lodash/_objectToString.js b/packages/frontend-core/node_modules/lodash/_objectToString.js deleted file mode 100644 index c614ec09b3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_objectToString.js +++ /dev/null @@ -1,22 +0,0 @@ -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ -function objectToString(value) { - return nativeObjectToString.call(value); -} - -module.exports = objectToString; diff --git a/packages/frontend-core/node_modules/lodash/_overArg.js b/packages/frontend-core/node_modules/lodash/_overArg.js deleted file mode 100644 index 651c5c55f2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_overArg.js +++ /dev/null @@ -1,15 +0,0 @@ -/** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ -function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; -} - -module.exports = overArg; diff --git a/packages/frontend-core/node_modules/lodash/_overRest.js b/packages/frontend-core/node_modules/lodash/_overRest.js deleted file mode 100644 index c7cdef3399..0000000000 --- a/packages/frontend-core/node_modules/lodash/_overRest.js +++ /dev/null @@ -1,36 +0,0 @@ -var apply = require('./_apply'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * A specialized version of `baseRest` which transforms the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @param {Function} transform The rest array transform. - * @returns {Function} Returns the new function. - */ -function overRest(func, start, transform) { - start = nativeMax(start === undefined ? (func.length - 1) : start, 0); - return function() { - var args = arguments, - index = -1, - length = nativeMax(args.length - start, 0), - array = Array(length); - - while (++index < length) { - array[index] = args[start + index]; - } - index = -1; - var otherArgs = Array(start + 1); - while (++index < start) { - otherArgs[index] = args[index]; - } - otherArgs[start] = transform(array); - return apply(func, this, otherArgs); - }; -} - -module.exports = overRest; diff --git a/packages/frontend-core/node_modules/lodash/_parent.js b/packages/frontend-core/node_modules/lodash/_parent.js deleted file mode 100644 index f174328fcf..0000000000 --- a/packages/frontend-core/node_modules/lodash/_parent.js +++ /dev/null @@ -1,16 +0,0 @@ -var baseGet = require('./_baseGet'), - baseSlice = require('./_baseSlice'); - -/** - * Gets the parent value at `path` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} path The path to get the parent value of. - * @returns {*} Returns the parent value. - */ -function parent(object, path) { - return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); -} - -module.exports = parent; diff --git a/packages/frontend-core/node_modules/lodash/_reEscape.js b/packages/frontend-core/node_modules/lodash/_reEscape.js deleted file mode 100644 index 7f47eda68f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_reEscape.js +++ /dev/null @@ -1,4 +0,0 @@ -/** Used to match template delimiters. */ -var reEscape = /<%-([\s\S]+?)%>/g; - -module.exports = reEscape; diff --git a/packages/frontend-core/node_modules/lodash/_reEvaluate.js b/packages/frontend-core/node_modules/lodash/_reEvaluate.js deleted file mode 100644 index 6adfc312c8..0000000000 --- a/packages/frontend-core/node_modules/lodash/_reEvaluate.js +++ /dev/null @@ -1,4 +0,0 @@ -/** Used to match template delimiters. */ -var reEvaluate = /<%([\s\S]+?)%>/g; - -module.exports = reEvaluate; diff --git a/packages/frontend-core/node_modules/lodash/_reInterpolate.js b/packages/frontend-core/node_modules/lodash/_reInterpolate.js deleted file mode 100644 index d02ff0b29a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_reInterpolate.js +++ /dev/null @@ -1,4 +0,0 @@ -/** Used to match template delimiters. */ -var reInterpolate = /<%=([\s\S]+?)%>/g; - -module.exports = reInterpolate; diff --git a/packages/frontend-core/node_modules/lodash/_realNames.js b/packages/frontend-core/node_modules/lodash/_realNames.js deleted file mode 100644 index aa0d529261..0000000000 --- a/packages/frontend-core/node_modules/lodash/_realNames.js +++ /dev/null @@ -1,4 +0,0 @@ -/** Used to lookup unminified function names. */ -var realNames = {}; - -module.exports = realNames; diff --git a/packages/frontend-core/node_modules/lodash/_reorder.js b/packages/frontend-core/node_modules/lodash/_reorder.js deleted file mode 100644 index a3502b0517..0000000000 --- a/packages/frontend-core/node_modules/lodash/_reorder.js +++ /dev/null @@ -1,29 +0,0 @@ -var copyArray = require('./_copyArray'), - isIndex = require('./_isIndex'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMin = Math.min; - -/** - * Reorder `array` according to the specified indexes where the element at - * the first index is assigned as the first element, the element at - * the second index is assigned as the second element, and so on. - * - * @private - * @param {Array} array The array to reorder. - * @param {Array} indexes The arranged array indexes. - * @returns {Array} Returns `array`. - */ -function reorder(array, indexes) { - var arrLength = array.length, - length = nativeMin(indexes.length, arrLength), - oldArray = copyArray(array); - - while (length--) { - var index = indexes[length]; - array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; - } - return array; -} - -module.exports = reorder; diff --git a/packages/frontend-core/node_modules/lodash/_replaceHolders.js b/packages/frontend-core/node_modules/lodash/_replaceHolders.js deleted file mode 100644 index 74360ec4d3..0000000000 --- a/packages/frontend-core/node_modules/lodash/_replaceHolders.js +++ /dev/null @@ -1,29 +0,0 @@ -/** Used as the internal argument placeholder. */ -var PLACEHOLDER = '__lodash_placeholder__'; - -/** - * Replaces all `placeholder` elements in `array` with an internal placeholder - * and returns an array of their indexes. - * - * @private - * @param {Array} array The array to modify. - * @param {*} placeholder The placeholder to replace. - * @returns {Array} Returns the new array of placeholder indexes. - */ -function replaceHolders(array, placeholder) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value === placeholder || value === PLACEHOLDER) { - array[index] = PLACEHOLDER; - result[resIndex++] = index; - } - } - return result; -} - -module.exports = replaceHolders; diff --git a/packages/frontend-core/node_modules/lodash/_root.js b/packages/frontend-core/node_modules/lodash/_root.js deleted file mode 100644 index d2852bed4d..0000000000 --- a/packages/frontend-core/node_modules/lodash/_root.js +++ /dev/null @@ -1,9 +0,0 @@ -var freeGlobal = require('./_freeGlobal'); - -/** Detect free variable `self`. */ -var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - -/** Used as a reference to the global object. */ -var root = freeGlobal || freeSelf || Function('return this')(); - -module.exports = root; diff --git a/packages/frontend-core/node_modules/lodash/_safeGet.js b/packages/frontend-core/node_modules/lodash/_safeGet.js deleted file mode 100644 index b070897db2..0000000000 --- a/packages/frontend-core/node_modules/lodash/_safeGet.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Gets the value at `key`, unless `key` is "__proto__" or "constructor". - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function safeGet(object, key) { - if (key === 'constructor' && typeof object[key] === 'function') { - return; - } - - if (key == '__proto__') { - return; - } - - return object[key]; -} - -module.exports = safeGet; diff --git a/packages/frontend-core/node_modules/lodash/_setCacheAdd.js b/packages/frontend-core/node_modules/lodash/_setCacheAdd.js deleted file mode 100644 index 1081a74426..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setCacheAdd.js +++ /dev/null @@ -1,19 +0,0 @@ -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** - * Adds `value` to the array cache. - * - * @private - * @name add - * @memberOf SetCache - * @alias push - * @param {*} value The value to cache. - * @returns {Object} Returns the cache instance. - */ -function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; -} - -module.exports = setCacheAdd; diff --git a/packages/frontend-core/node_modules/lodash/_setCacheHas.js b/packages/frontend-core/node_modules/lodash/_setCacheHas.js deleted file mode 100644 index 9a492556e0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setCacheHas.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Checks if `value` is in the array cache. - * - * @private - * @name has - * @memberOf SetCache - * @param {*} value The value to search for. - * @returns {number} Returns `true` if `value` is found, else `false`. - */ -function setCacheHas(value) { - return this.__data__.has(value); -} - -module.exports = setCacheHas; diff --git a/packages/frontend-core/node_modules/lodash/_setData.js b/packages/frontend-core/node_modules/lodash/_setData.js deleted file mode 100644 index e5cf3eb96a..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setData.js +++ /dev/null @@ -1,20 +0,0 @@ -var baseSetData = require('./_baseSetData'), - shortOut = require('./_shortOut'); - -/** - * Sets metadata for `func`. - * - * **Note:** If this function becomes hot, i.e. is invoked a lot in a short - * period of time, it will trip its breaker and transition to an identity - * function to avoid garbage collection pauses in V8. See - * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) - * for more details. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ -var setData = shortOut(baseSetData); - -module.exports = setData; diff --git a/packages/frontend-core/node_modules/lodash/_setToArray.js b/packages/frontend-core/node_modules/lodash/_setToArray.js deleted file mode 100644 index b87f07418c..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setToArray.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Converts `set` to an array of its values. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the values. - */ -function setToArray(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = value; - }); - return result; -} - -module.exports = setToArray; diff --git a/packages/frontend-core/node_modules/lodash/_setToPairs.js b/packages/frontend-core/node_modules/lodash/_setToPairs.js deleted file mode 100644 index 36ad37a058..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setToPairs.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Converts `set` to its value-value pairs. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the value-value pairs. - */ -function setToPairs(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = [value, value]; - }); - return result; -} - -module.exports = setToPairs; diff --git a/packages/frontend-core/node_modules/lodash/_setToString.js b/packages/frontend-core/node_modules/lodash/_setToString.js deleted file mode 100644 index 6ca8419678..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setToString.js +++ /dev/null @@ -1,14 +0,0 @@ -var baseSetToString = require('./_baseSetToString'), - shortOut = require('./_shortOut'); - -/** - * Sets the `toString` method of `func` to return `string`. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ -var setToString = shortOut(baseSetToString); - -module.exports = setToString; diff --git a/packages/frontend-core/node_modules/lodash/_setWrapToString.js b/packages/frontend-core/node_modules/lodash/_setWrapToString.js deleted file mode 100644 index decdc44998..0000000000 --- a/packages/frontend-core/node_modules/lodash/_setWrapToString.js +++ /dev/null @@ -1,21 +0,0 @@ -var getWrapDetails = require('./_getWrapDetails'), - insertWrapDetails = require('./_insertWrapDetails'), - setToString = require('./_setToString'), - updateWrapDetails = require('./_updateWrapDetails'); - -/** - * Sets the `toString` method of `wrapper` to mimic the source of `reference` - * with wrapper details in a comment at the top of the source body. - * - * @private - * @param {Function} wrapper The function to modify. - * @param {Function} reference The reference function. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Function} Returns `wrapper`. - */ -function setWrapToString(wrapper, reference, bitmask) { - var source = (reference + ''); - return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); -} - -module.exports = setWrapToString; diff --git a/packages/frontend-core/node_modules/lodash/_shortOut.js b/packages/frontend-core/node_modules/lodash/_shortOut.js deleted file mode 100644 index 3300a07969..0000000000 --- a/packages/frontend-core/node_modules/lodash/_shortOut.js +++ /dev/null @@ -1,37 +0,0 @@ -/** Used to detect hot functions by number of calls within a span of milliseconds. */ -var HOT_COUNT = 800, - HOT_SPAN = 16; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeNow = Date.now; - -/** - * Creates a function that'll short out and invoke `identity` instead - * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` - * milliseconds. - * - * @private - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new shortable function. - */ -function shortOut(func) { - var count = 0, - lastCalled = 0; - - return function() { - var stamp = nativeNow(), - remaining = HOT_SPAN - (stamp - lastCalled); - - lastCalled = stamp; - if (remaining > 0) { - if (++count >= HOT_COUNT) { - return arguments[0]; - } - } else { - count = 0; - } - return func.apply(undefined, arguments); - }; -} - -module.exports = shortOut; diff --git a/packages/frontend-core/node_modules/lodash/_shuffleSelf.js b/packages/frontend-core/node_modules/lodash/_shuffleSelf.js deleted file mode 100644 index 8bcc4f5c32..0000000000 --- a/packages/frontend-core/node_modules/lodash/_shuffleSelf.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseRandom = require('./_baseRandom'); - -/** - * A specialized version of `_.shuffle` which mutates and sets the size of `array`. - * - * @private - * @param {Array} array The array to shuffle. - * @param {number} [size=array.length] The size of `array`. - * @returns {Array} Returns `array`. - */ -function shuffleSelf(array, size) { - var index = -1, - length = array.length, - lastIndex = length - 1; - - size = size === undefined ? length : size; - while (++index < size) { - var rand = baseRandom(index, lastIndex), - value = array[rand]; - - array[rand] = array[index]; - array[index] = value; - } - array.length = size; - return array; -} - -module.exports = shuffleSelf; diff --git a/packages/frontend-core/node_modules/lodash/_stackClear.js b/packages/frontend-core/node_modules/lodash/_stackClear.js deleted file mode 100644 index ce8e5a92ff..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stackClear.js +++ /dev/null @@ -1,15 +0,0 @@ -var ListCache = require('./_ListCache'); - -/** - * Removes all key-value entries from the stack. - * - * @private - * @name clear - * @memberOf Stack - */ -function stackClear() { - this.__data__ = new ListCache; - this.size = 0; -} - -module.exports = stackClear; diff --git a/packages/frontend-core/node_modules/lodash/_stackDelete.js b/packages/frontend-core/node_modules/lodash/_stackDelete.js deleted file mode 100644 index ff9887ab64..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stackDelete.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Removes `key` and its value from the stack. - * - * @private - * @name delete - * @memberOf Stack - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function stackDelete(key) { - var data = this.__data__, - result = data['delete'](key); - - this.size = data.size; - return result; -} - -module.exports = stackDelete; diff --git a/packages/frontend-core/node_modules/lodash/_stackGet.js b/packages/frontend-core/node_modules/lodash/_stackGet.js deleted file mode 100644 index 1cdf004091..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stackGet.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Gets the stack value for `key`. - * - * @private - * @name get - * @memberOf Stack - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function stackGet(key) { - return this.__data__.get(key); -} - -module.exports = stackGet; diff --git a/packages/frontend-core/node_modules/lodash/_stackHas.js b/packages/frontend-core/node_modules/lodash/_stackHas.js deleted file mode 100644 index 16a3ad11b9..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stackHas.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Checks if a stack value for `key` exists. - * - * @private - * @name has - * @memberOf Stack - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function stackHas(key) { - return this.__data__.has(key); -} - -module.exports = stackHas; diff --git a/packages/frontend-core/node_modules/lodash/_stackSet.js b/packages/frontend-core/node_modules/lodash/_stackSet.js deleted file mode 100644 index b790ac5f41..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stackSet.js +++ /dev/null @@ -1,34 +0,0 @@ -var ListCache = require('./_ListCache'), - Map = require('./_Map'), - MapCache = require('./_MapCache'); - -/** Used as the size to enable large array optimizations. */ -var LARGE_ARRAY_SIZE = 200; - -/** - * Sets the stack `key` to `value`. - * - * @private - * @name set - * @memberOf Stack - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the stack cache instance. - */ -function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { - pairs.push([key, value]); - this.size = ++data.size; - return this; - } - data = this.__data__ = new MapCache(pairs); - } - data.set(key, value); - this.size = data.size; - return this; -} - -module.exports = stackSet; diff --git a/packages/frontend-core/node_modules/lodash/_strictIndexOf.js b/packages/frontend-core/node_modules/lodash/_strictIndexOf.js deleted file mode 100644 index 0486a4956b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_strictIndexOf.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * A specialized version of `_.indexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function strictIndexOf(array, value, fromIndex) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (array[index] === value) { - return index; - } - } - return -1; -} - -module.exports = strictIndexOf; diff --git a/packages/frontend-core/node_modules/lodash/_strictLastIndexOf.js b/packages/frontend-core/node_modules/lodash/_strictLastIndexOf.js deleted file mode 100644 index d7310dcc23..0000000000 --- a/packages/frontend-core/node_modules/lodash/_strictLastIndexOf.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A specialized version of `_.lastIndexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function strictLastIndexOf(array, value, fromIndex) { - var index = fromIndex + 1; - while (index--) { - if (array[index] === value) { - return index; - } - } - return index; -} - -module.exports = strictLastIndexOf; diff --git a/packages/frontend-core/node_modules/lodash/_stringSize.js b/packages/frontend-core/node_modules/lodash/_stringSize.js deleted file mode 100644 index 17ef462a68..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stringSize.js +++ /dev/null @@ -1,18 +0,0 @@ -var asciiSize = require('./_asciiSize'), - hasUnicode = require('./_hasUnicode'), - unicodeSize = require('./_unicodeSize'); - -/** - * Gets the number of symbols in `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the string size. - */ -function stringSize(string) { - return hasUnicode(string) - ? unicodeSize(string) - : asciiSize(string); -} - -module.exports = stringSize; diff --git a/packages/frontend-core/node_modules/lodash/_stringToArray.js b/packages/frontend-core/node_modules/lodash/_stringToArray.js deleted file mode 100644 index d161158c6f..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stringToArray.js +++ /dev/null @@ -1,18 +0,0 @@ -var asciiToArray = require('./_asciiToArray'), - hasUnicode = require('./_hasUnicode'), - unicodeToArray = require('./_unicodeToArray'); - -/** - * Converts `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ -function stringToArray(string) { - return hasUnicode(string) - ? unicodeToArray(string) - : asciiToArray(string); -} - -module.exports = stringToArray; diff --git a/packages/frontend-core/node_modules/lodash/_stringToPath.js b/packages/frontend-core/node_modules/lodash/_stringToPath.js deleted file mode 100644 index 8f39f8a29b..0000000000 --- a/packages/frontend-core/node_modules/lodash/_stringToPath.js +++ /dev/null @@ -1,27 +0,0 @@ -var memoizeCapped = require('./_memoizeCapped'); - -/** Used to match property names within property paths. */ -var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; - -/** Used to match backslashes in property paths. */ -var reEscapeChar = /\\(\\)?/g; - -/** - * Converts `string` to a property path array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the property path array. - */ -var stringToPath = memoizeCapped(function(string) { - var result = []; - if (string.charCodeAt(0) === 46 /* . */) { - result.push(''); - } - string.replace(rePropName, function(match, number, quote, subString) { - result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); - }); - return result; -}); - -module.exports = stringToPath; diff --git a/packages/frontend-core/node_modules/lodash/_toKey.js b/packages/frontend-core/node_modules/lodash/_toKey.js deleted file mode 100644 index c6d645c4d0..0000000000 --- a/packages/frontend-core/node_modules/lodash/_toKey.js +++ /dev/null @@ -1,21 +0,0 @@ -var isSymbol = require('./isSymbol'); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** - * Converts `value` to a string key if it's not a string or symbol. - * - * @private - * @param {*} value The value to inspect. - * @returns {string|symbol} Returns the key. - */ -function toKey(value) { - if (typeof value == 'string' || isSymbol(value)) { - return value; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; -} - -module.exports = toKey; diff --git a/packages/frontend-core/node_modules/lodash/_toSource.js b/packages/frontend-core/node_modules/lodash/_toSource.js deleted file mode 100644 index a020b386ca..0000000000 --- a/packages/frontend-core/node_modules/lodash/_toSource.js +++ /dev/null @@ -1,26 +0,0 @@ -/** Used for built-in method references. */ -var funcProto = Function.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to convert. - * @returns {string} Returns the source code. - */ -function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; -} - -module.exports = toSource; diff --git a/packages/frontend-core/node_modules/lodash/_trimmedEndIndex.js b/packages/frontend-core/node_modules/lodash/_trimmedEndIndex.js deleted file mode 100644 index 139439ad47..0000000000 --- a/packages/frontend-core/node_modules/lodash/_trimmedEndIndex.js +++ /dev/null @@ -1,19 +0,0 @@ -/** Used to match a single whitespace character. */ -var reWhitespace = /\s/; - -/** - * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace - * character of `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the index of the last non-whitespace character. - */ -function trimmedEndIndex(string) { - var index = string.length; - - while (index-- && reWhitespace.test(string.charAt(index))) {} - return index; -} - -module.exports = trimmedEndIndex; diff --git a/packages/frontend-core/node_modules/lodash/_unescapeHtmlChar.js b/packages/frontend-core/node_modules/lodash/_unescapeHtmlChar.js deleted file mode 100644 index a71fecb3f6..0000000000 --- a/packages/frontend-core/node_modules/lodash/_unescapeHtmlChar.js +++ /dev/null @@ -1,21 +0,0 @@ -var basePropertyOf = require('./_basePropertyOf'); - -/** Used to map HTML entities to characters. */ -var htmlUnescapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}; - -/** - * Used by `_.unescape` to convert HTML entities to characters. - * - * @private - * @param {string} chr The matched character to unescape. - * @returns {string} Returns the unescaped character. - */ -var unescapeHtmlChar = basePropertyOf(htmlUnescapes); - -module.exports = unescapeHtmlChar; diff --git a/packages/frontend-core/node_modules/lodash/_unicodeSize.js b/packages/frontend-core/node_modules/lodash/_unicodeSize.js deleted file mode 100644 index 68137ec2c5..0000000000 --- a/packages/frontend-core/node_modules/lodash/_unicodeSize.js +++ /dev/null @@ -1,44 +0,0 @@ -/** Used to compose unicode character classes. */ -var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsVarRange = '\\ufe0e\\ufe0f'; - -/** Used to compose unicode capture groups. */ -var rsAstral = '[' + rsAstralRange + ']', - rsCombo = '[' + rsComboRange + ']', - rsFitz = '\\ud83c[\\udffb-\\udfff]', - rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', - rsNonAstral = '[^' + rsAstralRange + ']', - rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', - rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', - rsZWJ = '\\u200d'; - -/** Used to compose unicode regexes. */ -var reOptMod = rsModifier + '?', - rsOptVar = '[' + rsVarRange + ']?', - rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', - rsSeq = rsOptVar + reOptMod + rsOptJoin, - rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; - -/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ -var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); - -/** - * Gets the size of a Unicode `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ -function unicodeSize(string) { - var result = reUnicode.lastIndex = 0; - while (reUnicode.test(string)) { - ++result; - } - return result; -} - -module.exports = unicodeSize; diff --git a/packages/frontend-core/node_modules/lodash/_unicodeToArray.js b/packages/frontend-core/node_modules/lodash/_unicodeToArray.js deleted file mode 100644 index 2a725c062e..0000000000 --- a/packages/frontend-core/node_modules/lodash/_unicodeToArray.js +++ /dev/null @@ -1,40 +0,0 @@ -/** Used to compose unicode character classes. */ -var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsVarRange = '\\ufe0e\\ufe0f'; - -/** Used to compose unicode capture groups. */ -var rsAstral = '[' + rsAstralRange + ']', - rsCombo = '[' + rsComboRange + ']', - rsFitz = '\\ud83c[\\udffb-\\udfff]', - rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', - rsNonAstral = '[^' + rsAstralRange + ']', - rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', - rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', - rsZWJ = '\\u200d'; - -/** Used to compose unicode regexes. */ -var reOptMod = rsModifier + '?', - rsOptVar = '[' + rsVarRange + ']?', - rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', - rsSeq = rsOptVar + reOptMod + rsOptJoin, - rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; - -/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ -var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); - -/** - * Converts a Unicode `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ -function unicodeToArray(string) { - return string.match(reUnicode) || []; -} - -module.exports = unicodeToArray; diff --git a/packages/frontend-core/node_modules/lodash/_unicodeWords.js b/packages/frontend-core/node_modules/lodash/_unicodeWords.js deleted file mode 100644 index e72e6e0f93..0000000000 --- a/packages/frontend-core/node_modules/lodash/_unicodeWords.js +++ /dev/null @@ -1,69 +0,0 @@ -/** Used to compose unicode character classes. */ -var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsDingbatRange = '\\u2700-\\u27bf', - rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', - rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', - rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', - rsPunctuationRange = '\\u2000-\\u206f', - rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', - rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', - rsVarRange = '\\ufe0e\\ufe0f', - rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; - -/** Used to compose unicode capture groups. */ -var rsApos = "['\u2019]", - rsBreak = '[' + rsBreakRange + ']', - rsCombo = '[' + rsComboRange + ']', - rsDigits = '\\d+', - rsDingbat = '[' + rsDingbatRange + ']', - rsLower = '[' + rsLowerRange + ']', - rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', - rsFitz = '\\ud83c[\\udffb-\\udfff]', - rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', - rsNonAstral = '[^' + rsAstralRange + ']', - rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', - rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', - rsUpper = '[' + rsUpperRange + ']', - rsZWJ = '\\u200d'; - -/** Used to compose unicode regexes. */ -var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', - rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', - rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', - rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', - reOptMod = rsModifier + '?', - rsOptVar = '[' + rsVarRange + ']?', - rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', - rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', - rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', - rsSeq = rsOptVar + reOptMod + rsOptJoin, - rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq; - -/** Used to match complex or compound words. */ -var reUnicodeWord = RegExp([ - rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', - rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', - rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, - rsUpper + '+' + rsOptContrUpper, - rsOrdUpper, - rsOrdLower, - rsDigits, - rsEmoji -].join('|'), 'g'); - -/** - * Splits a Unicode `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ -function unicodeWords(string) { - return string.match(reUnicodeWord) || []; -} - -module.exports = unicodeWords; diff --git a/packages/frontend-core/node_modules/lodash/_updateWrapDetails.js b/packages/frontend-core/node_modules/lodash/_updateWrapDetails.js deleted file mode 100644 index 8759fbdf79..0000000000 --- a/packages/frontend-core/node_modules/lodash/_updateWrapDetails.js +++ /dev/null @@ -1,46 +0,0 @@ -var arrayEach = require('./_arrayEach'), - arrayIncludes = require('./_arrayIncludes'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_FLAG = 8, - WRAP_CURRY_RIGHT_FLAG = 16, - WRAP_PARTIAL_FLAG = 32, - WRAP_PARTIAL_RIGHT_FLAG = 64, - WRAP_ARY_FLAG = 128, - WRAP_REARG_FLAG = 256, - WRAP_FLIP_FLAG = 512; - -/** Used to associate wrap methods with their bit flags. */ -var wrapFlags = [ - ['ary', WRAP_ARY_FLAG], - ['bind', WRAP_BIND_FLAG], - ['bindKey', WRAP_BIND_KEY_FLAG], - ['curry', WRAP_CURRY_FLAG], - ['curryRight', WRAP_CURRY_RIGHT_FLAG], - ['flip', WRAP_FLIP_FLAG], - ['partial', WRAP_PARTIAL_FLAG], - ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], - ['rearg', WRAP_REARG_FLAG] -]; - -/** - * Updates wrapper `details` based on `bitmask` flags. - * - * @private - * @returns {Array} details The details to modify. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Array} Returns `details`. - */ -function updateWrapDetails(details, bitmask) { - arrayEach(wrapFlags, function(pair) { - var value = '_.' + pair[0]; - if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { - details.push(value); - } - }); - return details.sort(); -} - -module.exports = updateWrapDetails; diff --git a/packages/frontend-core/node_modules/lodash/_wrapperClone.js b/packages/frontend-core/node_modules/lodash/_wrapperClone.js deleted file mode 100644 index 7bb58a2e88..0000000000 --- a/packages/frontend-core/node_modules/lodash/_wrapperClone.js +++ /dev/null @@ -1,23 +0,0 @@ -var LazyWrapper = require('./_LazyWrapper'), - LodashWrapper = require('./_LodashWrapper'), - copyArray = require('./_copyArray'); - -/** - * Creates a clone of `wrapper`. - * - * @private - * @param {Object} wrapper The wrapper to clone. - * @returns {Object} Returns the cloned wrapper. - */ -function wrapperClone(wrapper) { - if (wrapper instanceof LazyWrapper) { - return wrapper.clone(); - } - var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); - result.__actions__ = copyArray(wrapper.__actions__); - result.__index__ = wrapper.__index__; - result.__values__ = wrapper.__values__; - return result; -} - -module.exports = wrapperClone; diff --git a/packages/frontend-core/node_modules/lodash/add.js b/packages/frontend-core/node_modules/lodash/add.js deleted file mode 100644 index f069515647..0000000000 --- a/packages/frontend-core/node_modules/lodash/add.js +++ /dev/null @@ -1,22 +0,0 @@ -var createMathOperation = require('./_createMathOperation'); - -/** - * Adds two numbers. - * - * @static - * @memberOf _ - * @since 3.4.0 - * @category Math - * @param {number} augend The first number in an addition. - * @param {number} addend The second number in an addition. - * @returns {number} Returns the total. - * @example - * - * _.add(6, 4); - * // => 10 - */ -var add = createMathOperation(function(augend, addend) { - return augend + addend; -}, 0); - -module.exports = add; diff --git a/packages/frontend-core/node_modules/lodash/after.js b/packages/frontend-core/node_modules/lodash/after.js deleted file mode 100644 index 3900c979a1..0000000000 --- a/packages/frontend-core/node_modules/lodash/after.js +++ /dev/null @@ -1,42 +0,0 @@ -var toInteger = require('./toInteger'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** - * The opposite of `_.before`; this method creates a function that invokes - * `func` once it's called `n` or more times. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {number} n The number of calls before `func` is invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var saves = ['profile', 'settings']; - * - * var done = _.after(saves.length, function() { - * console.log('done saving!'); - * }); - * - * _.forEach(saves, function(type) { - * asyncSave({ 'type': type, 'complete': done }); - * }); - * // => Logs 'done saving!' after the two async saves have completed. - */ -function after(n, func) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n < 1) { - return func.apply(this, arguments); - } - }; -} - -module.exports = after; diff --git a/packages/frontend-core/node_modules/lodash/array.js b/packages/frontend-core/node_modules/lodash/array.js deleted file mode 100644 index af688d3ee6..0000000000 --- a/packages/frontend-core/node_modules/lodash/array.js +++ /dev/null @@ -1,67 +0,0 @@ -module.exports = { - 'chunk': require('./chunk'), - 'compact': require('./compact'), - 'concat': require('./concat'), - 'difference': require('./difference'), - 'differenceBy': require('./differenceBy'), - 'differenceWith': require('./differenceWith'), - 'drop': require('./drop'), - 'dropRight': require('./dropRight'), - 'dropRightWhile': require('./dropRightWhile'), - 'dropWhile': require('./dropWhile'), - 'fill': require('./fill'), - 'findIndex': require('./findIndex'), - 'findLastIndex': require('./findLastIndex'), - 'first': require('./first'), - 'flatten': require('./flatten'), - 'flattenDeep': require('./flattenDeep'), - 'flattenDepth': require('./flattenDepth'), - 'fromPairs': require('./fromPairs'), - 'head': require('./head'), - 'indexOf': require('./indexOf'), - 'initial': require('./initial'), - 'intersection': require('./intersection'), - 'intersectionBy': require('./intersectionBy'), - 'intersectionWith': require('./intersectionWith'), - 'join': require('./join'), - 'last': require('./last'), - 'lastIndexOf': require('./lastIndexOf'), - 'nth': require('./nth'), - 'pull': require('./pull'), - 'pullAll': require('./pullAll'), - 'pullAllBy': require('./pullAllBy'), - 'pullAllWith': require('./pullAllWith'), - 'pullAt': require('./pullAt'), - 'remove': require('./remove'), - 'reverse': require('./reverse'), - 'slice': require('./slice'), - 'sortedIndex': require('./sortedIndex'), - 'sortedIndexBy': require('./sortedIndexBy'), - 'sortedIndexOf': require('./sortedIndexOf'), - 'sortedLastIndex': require('./sortedLastIndex'), - 'sortedLastIndexBy': require('./sortedLastIndexBy'), - 'sortedLastIndexOf': require('./sortedLastIndexOf'), - 'sortedUniq': require('./sortedUniq'), - 'sortedUniqBy': require('./sortedUniqBy'), - 'tail': require('./tail'), - 'take': require('./take'), - 'takeRight': require('./takeRight'), - 'takeRightWhile': require('./takeRightWhile'), - 'takeWhile': require('./takeWhile'), - 'union': require('./union'), - 'unionBy': require('./unionBy'), - 'unionWith': require('./unionWith'), - 'uniq': require('./uniq'), - 'uniqBy': require('./uniqBy'), - 'uniqWith': require('./uniqWith'), - 'unzip': require('./unzip'), - 'unzipWith': require('./unzipWith'), - 'without': require('./without'), - 'xor': require('./xor'), - 'xorBy': require('./xorBy'), - 'xorWith': require('./xorWith'), - 'zip': require('./zip'), - 'zipObject': require('./zipObject'), - 'zipObjectDeep': require('./zipObjectDeep'), - 'zipWith': require('./zipWith') -}; diff --git a/packages/frontend-core/node_modules/lodash/ary.js b/packages/frontend-core/node_modules/lodash/ary.js deleted file mode 100644 index 70c87d094c..0000000000 --- a/packages/frontend-core/node_modules/lodash/ary.js +++ /dev/null @@ -1,29 +0,0 @@ -var createWrap = require('./_createWrap'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_ARY_FLAG = 128; - -/** - * Creates a function that invokes `func`, with up to `n` arguments, - * ignoring any additional arguments. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to cap arguments for. - * @param {number} [n=func.length] The arity cap. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new capped function. - * @example - * - * _.map(['6', '8', '10'], _.ary(parseInt, 1)); - * // => [6, 8, 10] - */ -function ary(func, n, guard) { - n = guard ? undefined : n; - n = (func && n == null) ? func.length : n; - return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); -} - -module.exports = ary; diff --git a/packages/frontend-core/node_modules/lodash/assign.js b/packages/frontend-core/node_modules/lodash/assign.js deleted file mode 100644 index 909db26a34..0000000000 --- a/packages/frontend-core/node_modules/lodash/assign.js +++ /dev/null @@ -1,58 +0,0 @@ -var assignValue = require('./_assignValue'), - copyObject = require('./_copyObject'), - createAssigner = require('./_createAssigner'), - isArrayLike = require('./isArrayLike'), - isPrototype = require('./_isPrototype'), - keys = require('./keys'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Assigns own enumerable string keyed properties of source objects to the - * destination object. Source objects are applied from left to right. - * Subsequent sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object` and is loosely based on - * [`Object.assign`](https://mdn.io/Object/assign). - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assignIn - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assign({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'c': 3 } - */ -var assign = createAssigner(function(object, source) { - if (isPrototype(source) || isArrayLike(source)) { - copyObject(source, keys(source), object); - return; - } - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - assignValue(object, key, source[key]); - } - } -}); - -module.exports = assign; diff --git a/packages/frontend-core/node_modules/lodash/assignIn.js b/packages/frontend-core/node_modules/lodash/assignIn.js deleted file mode 100644 index e663473a0c..0000000000 --- a/packages/frontend-core/node_modules/lodash/assignIn.js +++ /dev/null @@ -1,40 +0,0 @@ -var copyObject = require('./_copyObject'), - createAssigner = require('./_createAssigner'), - keysIn = require('./keysIn'); - -/** - * This method is like `_.assign` except that it iterates over own and - * inherited source properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extend - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assign - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assignIn({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } - */ -var assignIn = createAssigner(function(object, source) { - copyObject(source, keysIn(source), object); -}); - -module.exports = assignIn; diff --git a/packages/frontend-core/node_modules/lodash/assignInWith.js b/packages/frontend-core/node_modules/lodash/assignInWith.js deleted file mode 100644 index 68fcc0b03a..0000000000 --- a/packages/frontend-core/node_modules/lodash/assignInWith.js +++ /dev/null @@ -1,38 +0,0 @@ -var copyObject = require('./_copyObject'), - createAssigner = require('./_createAssigner'), - keysIn = require('./keysIn'); - -/** - * This method is like `_.assignIn` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extendWith - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignInWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ -var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keysIn(source), object, customizer); -}); - -module.exports = assignInWith; diff --git a/packages/frontend-core/node_modules/lodash/assignWith.js b/packages/frontend-core/node_modules/lodash/assignWith.js deleted file mode 100644 index 7dc6c761b8..0000000000 --- a/packages/frontend-core/node_modules/lodash/assignWith.js +++ /dev/null @@ -1,37 +0,0 @@ -var copyObject = require('./_copyObject'), - createAssigner = require('./_createAssigner'), - keys = require('./keys'); - -/** - * This method is like `_.assign` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignInWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ -var assignWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keys(source), object, customizer); -}); - -module.exports = assignWith; diff --git a/packages/frontend-core/node_modules/lodash/at.js b/packages/frontend-core/node_modules/lodash/at.js deleted file mode 100644 index 781ee9e5f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/at.js +++ /dev/null @@ -1,23 +0,0 @@ -var baseAt = require('./_baseAt'), - flatRest = require('./_flatRest'); - -/** - * Creates an array of values corresponding to `paths` of `object`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Array} Returns the picked values. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; - * - * _.at(object, ['a[0].b.c', 'a[1]']); - * // => [3, 4] - */ -var at = flatRest(baseAt); - -module.exports = at; diff --git a/packages/frontend-core/node_modules/lodash/attempt.js b/packages/frontend-core/node_modules/lodash/attempt.js deleted file mode 100644 index 624d01524d..0000000000 --- a/packages/frontend-core/node_modules/lodash/attempt.js +++ /dev/null @@ -1,35 +0,0 @@ -var apply = require('./_apply'), - baseRest = require('./_baseRest'), - isError = require('./isError'); - -/** - * Attempts to invoke `func`, returning either the result or the caught error - * object. Any additional arguments are provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Util - * @param {Function} func The function to attempt. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {*} Returns the `func` result or error object. - * @example - * - * // Avoid throwing errors for invalid selectors. - * var elements = _.attempt(function(selector) { - * return document.querySelectorAll(selector); - * }, '>_>'); - * - * if (_.isError(elements)) { - * elements = []; - * } - */ -var attempt = baseRest(function(func, args) { - try { - return apply(func, undefined, args); - } catch (e) { - return isError(e) ? e : new Error(e); - } -}); - -module.exports = attempt; diff --git a/packages/frontend-core/node_modules/lodash/before.js b/packages/frontend-core/node_modules/lodash/before.js deleted file mode 100644 index a3e0a16c7a..0000000000 --- a/packages/frontend-core/node_modules/lodash/before.js +++ /dev/null @@ -1,40 +0,0 @@ -var toInteger = require('./toInteger'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** - * Creates a function that invokes `func`, with the `this` binding and arguments - * of the created function, while it's called less than `n` times. Subsequent - * calls to the created function return the result of the last `func` invocation. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {number} n The number of calls at which `func` is no longer invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * jQuery(element).on('click', _.before(5, addContactToList)); - * // => Allows adding up to 4 contacts to the list. - */ -function before(n, func) { - var result; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n > 0) { - result = func.apply(this, arguments); - } - if (n <= 1) { - func = undefined; - } - return result; - }; -} - -module.exports = before; diff --git a/packages/frontend-core/node_modules/lodash/bind.js b/packages/frontend-core/node_modules/lodash/bind.js deleted file mode 100644 index b1076e93e6..0000000000 --- a/packages/frontend-core/node_modules/lodash/bind.js +++ /dev/null @@ -1,57 +0,0 @@ -var baseRest = require('./_baseRest'), - createWrap = require('./_createWrap'), - getHolder = require('./_getHolder'), - replaceHolders = require('./_replaceHolders'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_PARTIAL_FLAG = 32; - -/** - * Creates a function that invokes `func` with the `this` binding of `thisArg` - * and `partials` prepended to the arguments it receives. - * - * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for partially applied arguments. - * - * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" - * property of bound functions. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to bind. - * @param {*} thisArg The `this` binding of `func`. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * function greet(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * - * var object = { 'user': 'fred' }; - * - * var bound = _.bind(greet, object, 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * // Bound with placeholders. - * var bound = _.bind(greet, object, _, '!'); - * bound('hi'); - * // => 'hi fred!' - */ -var bind = baseRest(function(func, thisArg, partials) { - var bitmask = WRAP_BIND_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bind)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(func, bitmask, thisArg, partials, holders); -}); - -// Assign default placeholders. -bind.placeholder = {}; - -module.exports = bind; diff --git a/packages/frontend-core/node_modules/lodash/bindAll.js b/packages/frontend-core/node_modules/lodash/bindAll.js deleted file mode 100644 index a35706deed..0000000000 --- a/packages/frontend-core/node_modules/lodash/bindAll.js +++ /dev/null @@ -1,41 +0,0 @@ -var arrayEach = require('./_arrayEach'), - baseAssignValue = require('./_baseAssignValue'), - bind = require('./bind'), - flatRest = require('./_flatRest'), - toKey = require('./_toKey'); - -/** - * Binds methods of an object to the object itself, overwriting the existing - * method. - * - * **Note:** This method doesn't set the "length" property of bound functions. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {Object} object The object to bind and assign the bound methods to. - * @param {...(string|string[])} methodNames The object method names to bind. - * @returns {Object} Returns `object`. - * @example - * - * var view = { - * 'label': 'docs', - * 'click': function() { - * console.log('clicked ' + this.label); - * } - * }; - * - * _.bindAll(view, ['click']); - * jQuery(element).on('click', view.click); - * // => Logs 'clicked docs' when clicked. - */ -var bindAll = flatRest(function(object, methodNames) { - arrayEach(methodNames, function(key) { - key = toKey(key); - baseAssignValue(object, key, bind(object[key], object)); - }); - return object; -}); - -module.exports = bindAll; diff --git a/packages/frontend-core/node_modules/lodash/bindKey.js b/packages/frontend-core/node_modules/lodash/bindKey.js deleted file mode 100644 index f7fd64cd4e..0000000000 --- a/packages/frontend-core/node_modules/lodash/bindKey.js +++ /dev/null @@ -1,68 +0,0 @@ -var baseRest = require('./_baseRest'), - createWrap = require('./_createWrap'), - getHolder = require('./_getHolder'), - replaceHolders = require('./_replaceHolders'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_PARTIAL_FLAG = 32; - -/** - * Creates a function that invokes the method at `object[key]` with `partials` - * prepended to the arguments it receives. - * - * This method differs from `_.bind` by allowing bound functions to reference - * methods that may be redefined or don't yet exist. See - * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) - * for more details. - * - * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Function - * @param {Object} object The object to invoke the method on. - * @param {string} key The key of the method. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * var object = { - * 'user': 'fred', - * 'greet': function(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * }; - * - * var bound = _.bindKey(object, 'greet', 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * object.greet = function(greeting, punctuation) { - * return greeting + 'ya ' + this.user + punctuation; - * }; - * - * bound('!'); - * // => 'hiya fred!' - * - * // Bound with placeholders. - * var bound = _.bindKey(object, 'greet', _, '!'); - * bound('hi'); - * // => 'hiya fred!' - */ -var bindKey = baseRest(function(object, key, partials) { - var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bindKey)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(key, bitmask, object, partials, holders); -}); - -// Assign default placeholders. -bindKey.placeholder = {}; - -module.exports = bindKey; diff --git a/packages/frontend-core/node_modules/lodash/camelCase.js b/packages/frontend-core/node_modules/lodash/camelCase.js deleted file mode 100644 index d7390def55..0000000000 --- a/packages/frontend-core/node_modules/lodash/camelCase.js +++ /dev/null @@ -1,29 +0,0 @@ -var capitalize = require('./capitalize'), - createCompounder = require('./_createCompounder'); - -/** - * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the camel cased string. - * @example - * - * _.camelCase('Foo Bar'); - * // => 'fooBar' - * - * _.camelCase('--foo-bar--'); - * // => 'fooBar' - * - * _.camelCase('__FOO_BAR__'); - * // => 'fooBar' - */ -var camelCase = createCompounder(function(result, word, index) { - word = word.toLowerCase(); - return result + (index ? capitalize(word) : word); -}); - -module.exports = camelCase; diff --git a/packages/frontend-core/node_modules/lodash/capitalize.js b/packages/frontend-core/node_modules/lodash/capitalize.js deleted file mode 100644 index 3e1600e7d9..0000000000 --- a/packages/frontend-core/node_modules/lodash/capitalize.js +++ /dev/null @@ -1,23 +0,0 @@ -var toString = require('./toString'), - upperFirst = require('./upperFirst'); - -/** - * Converts the first character of `string` to upper case and the remaining - * to lower case. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to capitalize. - * @returns {string} Returns the capitalized string. - * @example - * - * _.capitalize('FRED'); - * // => 'Fred' - */ -function capitalize(string) { - return upperFirst(toString(string).toLowerCase()); -} - -module.exports = capitalize; diff --git a/packages/frontend-core/node_modules/lodash/castArray.js b/packages/frontend-core/node_modules/lodash/castArray.js deleted file mode 100644 index e470bdb9b9..0000000000 --- a/packages/frontend-core/node_modules/lodash/castArray.js +++ /dev/null @@ -1,44 +0,0 @@ -var isArray = require('./isArray'); - -/** - * Casts `value` as an array if it's not one. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Lang - * @param {*} value The value to inspect. - * @returns {Array} Returns the cast array. - * @example - * - * _.castArray(1); - * // => [1] - * - * _.castArray({ 'a': 1 }); - * // => [{ 'a': 1 }] - * - * _.castArray('abc'); - * // => ['abc'] - * - * _.castArray(null); - * // => [null] - * - * _.castArray(undefined); - * // => [undefined] - * - * _.castArray(); - * // => [] - * - * var array = [1, 2, 3]; - * console.log(_.castArray(array) === array); - * // => true - */ -function castArray() { - if (!arguments.length) { - return []; - } - var value = arguments[0]; - return isArray(value) ? value : [value]; -} - -module.exports = castArray; diff --git a/packages/frontend-core/node_modules/lodash/ceil.js b/packages/frontend-core/node_modules/lodash/ceil.js deleted file mode 100644 index 56c8722cfc..0000000000 --- a/packages/frontend-core/node_modules/lodash/ceil.js +++ /dev/null @@ -1,26 +0,0 @@ -var createRound = require('./_createRound'); - -/** - * Computes `number` rounded up to `precision`. - * - * @static - * @memberOf _ - * @since 3.10.0 - * @category Math - * @param {number} number The number to round up. - * @param {number} [precision=0] The precision to round up to. - * @returns {number} Returns the rounded up number. - * @example - * - * _.ceil(4.006); - * // => 5 - * - * _.ceil(6.004, 2); - * // => 6.01 - * - * _.ceil(6040, -2); - * // => 6100 - */ -var ceil = createRound('ceil'); - -module.exports = ceil; diff --git a/packages/frontend-core/node_modules/lodash/chain.js b/packages/frontend-core/node_modules/lodash/chain.js deleted file mode 100644 index f6cd6475ff..0000000000 --- a/packages/frontend-core/node_modules/lodash/chain.js +++ /dev/null @@ -1,38 +0,0 @@ -var lodash = require('./wrapperLodash'); - -/** - * Creates a `lodash` wrapper instance that wraps `value` with explicit method - * chain sequences enabled. The result of such sequences must be unwrapped - * with `_#value`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Seq - * @param {*} value The value to wrap. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'pebbles', 'age': 1 } - * ]; - * - * var youngest = _ - * .chain(users) - * .sortBy('age') - * .map(function(o) { - * return o.user + ' is ' + o.age; - * }) - * .head() - * .value(); - * // => 'pebbles is 1' - */ -function chain(value) { - var result = lodash(value); - result.__chain__ = true; - return result; -} - -module.exports = chain; diff --git a/packages/frontend-core/node_modules/lodash/chunk.js b/packages/frontend-core/node_modules/lodash/chunk.js deleted file mode 100644 index 5b562fef3c..0000000000 --- a/packages/frontend-core/node_modules/lodash/chunk.js +++ /dev/null @@ -1,50 +0,0 @@ -var baseSlice = require('./_baseSlice'), - isIterateeCall = require('./_isIterateeCall'), - toInteger = require('./toInteger'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeCeil = Math.ceil, - nativeMax = Math.max; - -/** - * Creates an array of elements split into groups the length of `size`. - * If `array` can't be split evenly, the final chunk will be the remaining - * elements. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to process. - * @param {number} [size=1] The length of each chunk - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the new array of chunks. - * @example - * - * _.chunk(['a', 'b', 'c', 'd'], 2); - * // => [['a', 'b'], ['c', 'd']] - * - * _.chunk(['a', 'b', 'c', 'd'], 3); - * // => [['a', 'b', 'c'], ['d']] - */ -function chunk(array, size, guard) { - if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { - size = 1; - } else { - size = nativeMax(toInteger(size), 0); - } - var length = array == null ? 0 : array.length; - if (!length || size < 1) { - return []; - } - var index = 0, - resIndex = 0, - result = Array(nativeCeil(length / size)); - - while (index < length) { - result[resIndex++] = baseSlice(array, index, (index += size)); - } - return result; -} - -module.exports = chunk; diff --git a/packages/frontend-core/node_modules/lodash/clamp.js b/packages/frontend-core/node_modules/lodash/clamp.js deleted file mode 100644 index 91a72c9782..0000000000 --- a/packages/frontend-core/node_modules/lodash/clamp.js +++ /dev/null @@ -1,39 +0,0 @@ -var baseClamp = require('./_baseClamp'), - toNumber = require('./toNumber'); - -/** - * Clamps `number` within the inclusive `lower` and `upper` bounds. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Number - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - * @example - * - * _.clamp(-10, -5, 5); - * // => -5 - * - * _.clamp(10, -5, 5); - * // => 5 - */ -function clamp(number, lower, upper) { - if (upper === undefined) { - upper = lower; - lower = undefined; - } - if (upper !== undefined) { - upper = toNumber(upper); - upper = upper === upper ? upper : 0; - } - if (lower !== undefined) { - lower = toNumber(lower); - lower = lower === lower ? lower : 0; - } - return baseClamp(toNumber(number), lower, upper); -} - -module.exports = clamp; diff --git a/packages/frontend-core/node_modules/lodash/clone.js b/packages/frontend-core/node_modules/lodash/clone.js deleted file mode 100644 index dd439d6396..0000000000 --- a/packages/frontend-core/node_modules/lodash/clone.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseClone = require('./_baseClone'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_SYMBOLS_FLAG = 4; - -/** - * Creates a shallow clone of `value`. - * - * **Note:** This method is loosely based on the - * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) - * and supports cloning arrays, array buffers, booleans, date objects, maps, - * numbers, `Object` objects, regexes, sets, strings, symbols, and typed - * arrays. The own enumerable properties of `arguments` objects are cloned - * as plain objects. An empty object is returned for uncloneable values such - * as error objects, functions, DOM nodes, and WeakMaps. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to clone. - * @returns {*} Returns the cloned value. - * @see _.cloneDeep - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var shallow = _.clone(objects); - * console.log(shallow[0] === objects[0]); - * // => true - */ -function clone(value) { - return baseClone(value, CLONE_SYMBOLS_FLAG); -} - -module.exports = clone; diff --git a/packages/frontend-core/node_modules/lodash/cloneDeep.js b/packages/frontend-core/node_modules/lodash/cloneDeep.js deleted file mode 100644 index 4425fbe8b9..0000000000 --- a/packages/frontend-core/node_modules/lodash/cloneDeep.js +++ /dev/null @@ -1,29 +0,0 @@ -var baseClone = require('./_baseClone'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_DEEP_FLAG = 1, - CLONE_SYMBOLS_FLAG = 4; - -/** - * This method is like `_.clone` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @returns {*} Returns the deep cloned value. - * @see _.clone - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var deep = _.cloneDeep(objects); - * console.log(deep[0] === objects[0]); - * // => false - */ -function cloneDeep(value) { - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); -} - -module.exports = cloneDeep; diff --git a/packages/frontend-core/node_modules/lodash/cloneDeepWith.js b/packages/frontend-core/node_modules/lodash/cloneDeepWith.js deleted file mode 100644 index fd9c6c050c..0000000000 --- a/packages/frontend-core/node_modules/lodash/cloneDeepWith.js +++ /dev/null @@ -1,40 +0,0 @@ -var baseClone = require('./_baseClone'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_DEEP_FLAG = 1, - CLONE_SYMBOLS_FLAG = 4; - -/** - * This method is like `_.cloneWith` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the deep cloned value. - * @see _.cloneWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(true); - * } - * } - * - * var el = _.cloneDeepWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 20 - */ -function cloneDeepWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); -} - -module.exports = cloneDeepWith; diff --git a/packages/frontend-core/node_modules/lodash/cloneWith.js b/packages/frontend-core/node_modules/lodash/cloneWith.js deleted file mode 100644 index d2f4e756d5..0000000000 --- a/packages/frontend-core/node_modules/lodash/cloneWith.js +++ /dev/null @@ -1,42 +0,0 @@ -var baseClone = require('./_baseClone'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_SYMBOLS_FLAG = 4; - -/** - * This method is like `_.clone` except that it accepts `customizer` which - * is invoked to produce the cloned value. If `customizer` returns `undefined`, - * cloning is handled by the method instead. The `customizer` is invoked with - * up to four arguments; (value [, index|key, object, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the cloned value. - * @see _.cloneDeepWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(false); - * } - * } - * - * var el = _.cloneWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 0 - */ -function cloneWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); -} - -module.exports = cloneWith; diff --git a/packages/frontend-core/node_modules/lodash/collection.js b/packages/frontend-core/node_modules/lodash/collection.js deleted file mode 100644 index 77fe837f32..0000000000 --- a/packages/frontend-core/node_modules/lodash/collection.js +++ /dev/null @@ -1,30 +0,0 @@ -module.exports = { - 'countBy': require('./countBy'), - 'each': require('./each'), - 'eachRight': require('./eachRight'), - 'every': require('./every'), - 'filter': require('./filter'), - 'find': require('./find'), - 'findLast': require('./findLast'), - 'flatMap': require('./flatMap'), - 'flatMapDeep': require('./flatMapDeep'), - 'flatMapDepth': require('./flatMapDepth'), - 'forEach': require('./forEach'), - 'forEachRight': require('./forEachRight'), - 'groupBy': require('./groupBy'), - 'includes': require('./includes'), - 'invokeMap': require('./invokeMap'), - 'keyBy': require('./keyBy'), - 'map': require('./map'), - 'orderBy': require('./orderBy'), - 'partition': require('./partition'), - 'reduce': require('./reduce'), - 'reduceRight': require('./reduceRight'), - 'reject': require('./reject'), - 'sample': require('./sample'), - 'sampleSize': require('./sampleSize'), - 'shuffle': require('./shuffle'), - 'size': require('./size'), - 'some': require('./some'), - 'sortBy': require('./sortBy') -}; diff --git a/packages/frontend-core/node_modules/lodash/commit.js b/packages/frontend-core/node_modules/lodash/commit.js deleted file mode 100644 index fe4db71783..0000000000 --- a/packages/frontend-core/node_modules/lodash/commit.js +++ /dev/null @@ -1,33 +0,0 @@ -var LodashWrapper = require('./_LodashWrapper'); - -/** - * Executes the chain sequence and returns the wrapped result. - * - * @name commit - * @memberOf _ - * @since 3.2.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var array = [1, 2]; - * var wrapped = _(array).push(3); - * - * console.log(array); - * // => [1, 2] - * - * wrapped = wrapped.commit(); - * console.log(array); - * // => [1, 2, 3] - * - * wrapped.last(); - * // => 3 - * - * console.log(array); - * // => [1, 2, 3] - */ -function wrapperCommit() { - return new LodashWrapper(this.value(), this.__chain__); -} - -module.exports = wrapperCommit; diff --git a/packages/frontend-core/node_modules/lodash/compact.js b/packages/frontend-core/node_modules/lodash/compact.js deleted file mode 100644 index 031fab4e6d..0000000000 --- a/packages/frontend-core/node_modules/lodash/compact.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Creates an array with all falsey values removed. The values `false`, `null`, - * `0`, `""`, `undefined`, and `NaN` are falsey. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to compact. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.compact([0, 1, false, 2, '', 3]); - * // => [1, 2, 3] - */ -function compact(array) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value) { - result[resIndex++] = value; - } - } - return result; -} - -module.exports = compact; diff --git a/packages/frontend-core/node_modules/lodash/concat.js b/packages/frontend-core/node_modules/lodash/concat.js deleted file mode 100644 index 1da48a4fc7..0000000000 --- a/packages/frontend-core/node_modules/lodash/concat.js +++ /dev/null @@ -1,43 +0,0 @@ -var arrayPush = require('./_arrayPush'), - baseFlatten = require('./_baseFlatten'), - copyArray = require('./_copyArray'), - isArray = require('./isArray'); - -/** - * Creates a new array concatenating `array` with any additional arrays - * and/or values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to concatenate. - * @param {...*} [values] The values to concatenate. - * @returns {Array} Returns the new concatenated array. - * @example - * - * var array = [1]; - * var other = _.concat(array, 2, [3], [[4]]); - * - * console.log(other); - * // => [1, 2, 3, [4]] - * - * console.log(array); - * // => [1] - */ -function concat() { - var length = arguments.length; - if (!length) { - return []; - } - var args = Array(length - 1), - array = arguments[0], - index = length; - - while (index--) { - args[index - 1] = arguments[index]; - } - return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); -} - -module.exports = concat; diff --git a/packages/frontend-core/node_modules/lodash/cond.js b/packages/frontend-core/node_modules/lodash/cond.js deleted file mode 100644 index 64555986aa..0000000000 --- a/packages/frontend-core/node_modules/lodash/cond.js +++ /dev/null @@ -1,60 +0,0 @@ -var apply = require('./_apply'), - arrayMap = require('./_arrayMap'), - baseIteratee = require('./_baseIteratee'), - baseRest = require('./_baseRest'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** - * Creates a function that iterates over `pairs` and invokes the corresponding - * function of the first predicate to return truthy. The predicate-function - * pairs are invoked with the `this` binding and arguments of the created - * function. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Util - * @param {Array} pairs The predicate-function pairs. - * @returns {Function} Returns the new composite function. - * @example - * - * var func = _.cond([ - * [_.matches({ 'a': 1 }), _.constant('matches A')], - * [_.conforms({ 'b': _.isNumber }), _.constant('matches B')], - * [_.stubTrue, _.constant('no match')] - * ]); - * - * func({ 'a': 1, 'b': 2 }); - * // => 'matches A' - * - * func({ 'a': 0, 'b': 1 }); - * // => 'matches B' - * - * func({ 'a': '1', 'b': '2' }); - * // => 'no match' - */ -function cond(pairs) { - var length = pairs == null ? 0 : pairs.length, - toIteratee = baseIteratee; - - pairs = !length ? [] : arrayMap(pairs, function(pair) { - if (typeof pair[1] != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return [toIteratee(pair[0]), pair[1]]; - }); - - return baseRest(function(args) { - var index = -1; - while (++index < length) { - var pair = pairs[index]; - if (apply(pair[0], this, args)) { - return apply(pair[1], this, args); - } - } - }); -} - -module.exports = cond; diff --git a/packages/frontend-core/node_modules/lodash/conforms.js b/packages/frontend-core/node_modules/lodash/conforms.js deleted file mode 100644 index 5501a949a9..0000000000 --- a/packages/frontend-core/node_modules/lodash/conforms.js +++ /dev/null @@ -1,35 +0,0 @@ -var baseClone = require('./_baseClone'), - baseConforms = require('./_baseConforms'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_DEEP_FLAG = 1; - -/** - * Creates a function that invokes the predicate properties of `source` with - * the corresponding property values of a given object, returning `true` if - * all predicates return truthy, else `false`. - * - * **Note:** The created function is equivalent to `_.conformsTo` with - * `source` partially applied. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Util - * @param {Object} source The object of property predicates to conform to. - * @returns {Function} Returns the new spec function. - * @example - * - * var objects = [ - * { 'a': 2, 'b': 1 }, - * { 'a': 1, 'b': 2 } - * ]; - * - * _.filter(objects, _.conforms({ 'b': function(n) { return n > 1; } })); - * // => [{ 'a': 1, 'b': 2 }] - */ -function conforms(source) { - return baseConforms(baseClone(source, CLONE_DEEP_FLAG)); -} - -module.exports = conforms; diff --git a/packages/frontend-core/node_modules/lodash/conformsTo.js b/packages/frontend-core/node_modules/lodash/conformsTo.js deleted file mode 100644 index b8a93ebf45..0000000000 --- a/packages/frontend-core/node_modules/lodash/conformsTo.js +++ /dev/null @@ -1,32 +0,0 @@ -var baseConformsTo = require('./_baseConformsTo'), - keys = require('./keys'); - -/** - * Checks if `object` conforms to `source` by invoking the predicate - * properties of `source` with the corresponding property values of `object`. - * - * **Note:** This method is equivalent to `_.conforms` when `source` is - * partially applied. - * - * @static - * @memberOf _ - * @since 4.14.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); - * // => true - * - * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); - * // => false - */ -function conformsTo(object, source) { - return source == null || baseConformsTo(object, source, keys(source)); -} - -module.exports = conformsTo; diff --git a/packages/frontend-core/node_modules/lodash/constant.js b/packages/frontend-core/node_modules/lodash/constant.js deleted file mode 100644 index 655ece3fb3..0000000000 --- a/packages/frontend-core/node_modules/lodash/constant.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Creates a function that returns `value`. - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Util - * @param {*} value The value to return from the new function. - * @returns {Function} Returns the new constant function. - * @example - * - * var objects = _.times(2, _.constant({ 'a': 1 })); - * - * console.log(objects); - * // => [{ 'a': 1 }, { 'a': 1 }] - * - * console.log(objects[0] === objects[1]); - * // => true - */ -function constant(value) { - return function() { - return value; - }; -} - -module.exports = constant; diff --git a/packages/frontend-core/node_modules/lodash/core.js b/packages/frontend-core/node_modules/lodash/core.js deleted file mode 100644 index be1d567d62..0000000000 --- a/packages/frontend-core/node_modules/lodash/core.js +++ /dev/null @@ -1,3877 +0,0 @@ -/** - * @license - * Lodash (Custom Build) - * Build: `lodash core -o ./dist/lodash.core.js` - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */ -;(function() { - - /** Used as a safe reference for `undefined` in pre-ES5 environments. */ - var undefined; - - /** Used as the semantic version number. */ - var VERSION = '4.17.21'; - - /** Error message constants. */ - var FUNC_ERROR_TEXT = 'Expected a function'; - - /** Used to compose bitmasks for value comparisons. */ - var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - - /** Used to compose bitmasks for function metadata. */ - var WRAP_BIND_FLAG = 1, - WRAP_PARTIAL_FLAG = 32; - - /** Used as references for various `Number` constants. */ - var INFINITY = 1 / 0, - MAX_SAFE_INTEGER = 9007199254740991; - - /** `Object#toString` result references. */ - var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - asyncTag = '[object AsyncFunction]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - numberTag = '[object Number]', - objectTag = '[object Object]', - proxyTag = '[object Proxy]', - regexpTag = '[object RegExp]', - stringTag = '[object String]'; - - /** Used to match HTML entities and HTML characters. */ - var reUnescapedHtml = /[&<>"']/g, - reHasUnescapedHtml = RegExp(reUnescapedHtml.source); - - /** Used to detect unsigned integer values. */ - var reIsUint = /^(?:0|[1-9]\d*)$/; - - /** Used to map characters to HTML entities. */ - var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' - }; - - /** Detect free variable `global` from Node.js. */ - var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - - /** Detect free variable `self`. */ - var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - - /** Used as a reference to the global object. */ - var root = freeGlobal || freeSelf || Function('return this')(); - - /** Detect free variable `exports`. */ - var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - - /** Detect free variable `module`. */ - var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - - /*--------------------------------------------------------------------------*/ - - /** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ - function arrayPush(array, values) { - array.push.apply(array, values); - return array; - } - - /** - * The base implementation of `_.findIndex` and `_.findLastIndex` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {number} fromIndex The index to search from. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseFindIndex(array, predicate, fromIndex, fromRight) { - var length = array.length, - index = fromIndex + (fromRight ? 1 : -1); - - while ((fromRight ? index-- : ++index < length)) { - if (predicate(array[index], index, array)) { - return index; - } - } - return -1; - } - - /** - * The base implementation of `_.property` without support for deep paths. - * - * @private - * @param {string} key The key of the property to get. - * @returns {Function} Returns the new accessor function. - */ - function baseProperty(key) { - return function(object) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.propertyOf` without support for deep paths. - * - * @private - * @param {Object} object The object to query. - * @returns {Function} Returns the new accessor function. - */ - function basePropertyOf(object) { - return function(key) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.reduce` and `_.reduceRight`, without support - * for iteratee shorthands, which iterates over `collection` using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} accumulator The initial value. - * @param {boolean} initAccum Specify using the first or last element of - * `collection` as the initial value. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the accumulated value. - */ - function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { - eachFunc(collection, function(value, index, collection) { - accumulator = initAccum - ? (initAccum = false, value) - : iteratee(accumulator, value, index, collection); - }); - return accumulator; - } - - /** - * The base implementation of `_.values` and `_.valuesIn` which creates an - * array of `object` property values corresponding to the property names - * of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the array of property values. - */ - function baseValues(object, props) { - return baseMap(props, function(key) { - return object[key]; - }); - } - - /** - * Used by `_.escape` to convert characters to HTML entities. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ - var escapeHtmlChar = basePropertyOf(htmlEscapes); - - /** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ - function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; - } - - /*--------------------------------------------------------------------------*/ - - /** Used for built-in method references. */ - var arrayProto = Array.prototype, - objectProto = Object.prototype; - - /** Used to check objects for own properties. */ - var hasOwnProperty = objectProto.hasOwnProperty; - - /** Used to generate unique IDs. */ - var idCounter = 0; - - /** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ - var nativeObjectToString = objectProto.toString; - - /** Used to restore the original `_` reference in `_.noConflict`. */ - var oldDash = root._; - - /** Built-in value references. */ - var objectCreate = Object.create, - propertyIsEnumerable = objectProto.propertyIsEnumerable; - - /* Built-in method references for those with the same name as other `lodash` methods. */ - var nativeIsFinite = root.isFinite, - nativeKeys = overArg(Object.keys, Object), - nativeMax = Math.max; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` object which wraps `value` to enable implicit method - * chain sequences. Methods that operate on and return arrays, collections, - * and functions can be chained together. Methods that retrieve a single value - * or may return a primitive value will automatically end the chain sequence - * and return the unwrapped value. Otherwise, the value must be unwrapped - * with `_#value`. - * - * Explicit chain sequences, which must be unwrapped with `_#value`, may be - * enabled using `_.chain`. - * - * The execution of chained methods is lazy, that is, it's deferred until - * `_#value` is implicitly or explicitly called. - * - * Lazy evaluation allows several methods to support shortcut fusion. - * Shortcut fusion is an optimization to merge iteratee calls; this avoids - * the creation of intermediate arrays and can greatly reduce the number of - * iteratee executions. Sections of a chain sequence qualify for shortcut - * fusion if the section is applied to an array and iteratees accept only - * one argument. The heuristic for whether a section qualifies for shortcut - * fusion is subject to change. - * - * Chaining is supported in custom builds as long as the `_#value` method is - * directly or indirectly included in the build. - * - * In addition to lodash methods, wrappers have `Array` and `String` methods. - * - * The wrapper `Array` methods are: - * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` - * - * The wrapper `String` methods are: - * `replace` and `split` - * - * The wrapper methods that support shortcut fusion are: - * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, - * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, - * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` - * - * The chainable wrapper methods are: - * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, - * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, - * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, - * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, - * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, - * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, - * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, - * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, - * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, - * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, - * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, - * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, - * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, - * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, - * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, - * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, - * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, - * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, - * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, - * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, - * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, - * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, - * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, - * `zipObject`, `zipObjectDeep`, and `zipWith` - * - * The wrapper methods that are **not** chainable by default are: - * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, - * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, - * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, - * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, - * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, - * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, - * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, - * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, - * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, - * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, - * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, - * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, - * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, - * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, - * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, - * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, - * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, - * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, - * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, - * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, - * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, - * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, - * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, - * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, - * `upperFirst`, `value`, and `words` - * - * @name _ - * @constructor - * @category Seq - * @param {*} value The value to wrap in a `lodash` instance. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * function square(n) { - * return n * n; - * } - * - * var wrapped = _([1, 2, 3]); - * - * // Returns an unwrapped value. - * wrapped.reduce(_.add); - * // => 6 - * - * // Returns a wrapped value. - * var squares = wrapped.map(square); - * - * _.isArray(squares); - * // => false - * - * _.isArray(squares.value()); - * // => true - */ - function lodash(value) { - return value instanceof LodashWrapper - ? value - : new LodashWrapper(value); - } - - /** - * The base implementation of `_.create` without support for assigning - * properties to the created object. - * - * @private - * @param {Object} proto The object to inherit from. - * @returns {Object} Returns the new object. - */ - var baseCreate = (function() { - function object() {} - return function(proto) { - if (!isObject(proto)) { - return {}; - } - if (objectCreate) { - return objectCreate(proto); - } - object.prototype = proto; - var result = new object; - object.prototype = undefined; - return result; - }; - }()); - - /** - * The base constructor for creating `lodash` wrapper objects. - * - * @private - * @param {*} value The value to wrap. - * @param {boolean} [chainAll] Enable explicit method chain sequences. - */ - function LodashWrapper(value, chainAll) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__chain__ = !!chainAll; - } - - LodashWrapper.prototype = baseCreate(lodash.prototype); - LodashWrapper.prototype.constructor = LodashWrapper; - - /*------------------------------------------------------------------------*/ - - /** - * Assigns `value` to `key` of `object` if the existing value is not equivalent - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } - } - - /** - * The base implementation of `assignValue` and `assignMergeValue` without - * value checks. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function baseAssignValue(object, key, value) { - object[key] = value; - } - - /** - * The base implementation of `_.delay` and `_.defer` which accepts `args` - * to provide to `func`. - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {Array} args The arguments to provide to `func`. - * @returns {number|Object} Returns the timer id or timeout object. - */ - function baseDelay(func, wait, args) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return setTimeout(function() { func.apply(undefined, args); }, wait); - } - - /** - * The base implementation of `_.forEach` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ - var baseEach = createBaseEach(baseForOwn); - - /** - * The base implementation of `_.every` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false` - */ - function baseEvery(collection, predicate) { - var result = true; - baseEach(collection, function(value, index, collection) { - result = !!predicate(value, index, collection); - return result; - }); - return result; - } - - /** - * The base implementation of methods like `_.max` and `_.min` which accepts a - * `comparator` to determine the extremum value. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The iteratee invoked per iteration. - * @param {Function} comparator The comparator used to compare values. - * @returns {*} Returns the extremum value. - */ - function baseExtremum(array, iteratee, comparator) { - var index = -1, - length = array.length; - - while (++index < length) { - var value = array[index], - current = iteratee(value); - - if (current != null && (computed === undefined - ? (current === current && !false) - : comparator(current, computed) - )) { - var computed = current, - result = value; - } - } - return result; - } - - /** - * The base implementation of `_.filter` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ - function baseFilter(collection, predicate) { - var result = []; - baseEach(collection, function(value, index, collection) { - if (predicate(value, index, collection)) { - result.push(value); - } - }); - return result; - } - - /** - * The base implementation of `_.flatten` with support for restricting flattening. - * - * @private - * @param {Array} array The array to flatten. - * @param {number} depth The maximum recursion depth. - * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. - * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. - * @param {Array} [result=[]] The initial result value. - * @returns {Array} Returns the new flattened array. - */ - function baseFlatten(array, depth, predicate, isStrict, result) { - var index = -1, - length = array.length; - - predicate || (predicate = isFlattenable); - result || (result = []); - - while (++index < length) { - var value = array[index]; - if (depth > 0 && predicate(value)) { - if (depth > 1) { - // Recursively flatten arrays (susceptible to call stack limits). - baseFlatten(value, depth - 1, predicate, isStrict, result); - } else { - arrayPush(result, value); - } - } else if (!isStrict) { - result[result.length] = value; - } - } - return result; - } - - /** - * The base implementation of `baseForOwn` which iterates over `object` - * properties returned by `keysFunc` and invokes `iteratee` for each property. - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ - var baseFor = createBaseFor(); - - /** - * The base implementation of `_.forOwn` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ - function baseForOwn(object, iteratee) { - return object && baseFor(object, iteratee, keys); - } - - /** - * The base implementation of `_.functions` which creates an array of - * `object` function property names filtered from `props`. - * - * @private - * @param {Object} object The object to inspect. - * @param {Array} props The property names to filter. - * @returns {Array} Returns the function names. - */ - function baseFunctions(object, props) { - return baseFilter(props, function(key) { - return isFunction(object[key]); - }); - } - - /** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ - function baseGetTag(value) { - return objectToString(value); - } - - /** - * The base implementation of `_.gt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - */ - function baseGt(value, other) { - return value > other; - } - - /** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ - var baseIsArguments = noop; - - /** - * The base implementation of `_.isDate` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - */ - function baseIsDate(value) { - return isObjectLike(value) && baseGetTag(value) == dateTag; - } - - /** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ - function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); - } - - /** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : baseGetTag(object), - othTag = othIsArr ? arrayTag : baseGetTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - stack || (stack = []); - var objStack = find(stack, function(entry) { - return entry[0] == object; - }); - var othStack = find(stack, function(entry) { - return entry[0] == other; - }); - if (objStack && othStack) { - return objStack[1] == other; - } - stack.push([object, other]); - stack.push([other, object]); - if (isSameTag && !objIsObj) { - var result = (objIsArr) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - stack.pop(); - return result; - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - var result = equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - stack.pop(); - return result; - } - } - if (!isSameTag) { - return false; - } - var result = equalObjects(object, other, bitmask, customizer, equalFunc, stack); - stack.pop(); - return result; - } - - /** - * The base implementation of `_.isRegExp` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - */ - function baseIsRegExp(value) { - return isObjectLike(value) && baseGetTag(value) == regexpTag; - } - - /** - * The base implementation of `_.iteratee`. - * - * @private - * @param {*} [value=_.identity] The value to convert to an iteratee. - * @returns {Function} Returns the iteratee. - */ - function baseIteratee(func) { - if (typeof func == 'function') { - return func; - } - if (func == null) { - return identity; - } - return (typeof func == 'object' ? baseMatches : baseProperty)(func); - } - - /** - * The base implementation of `_.lt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - */ - function baseLt(value, other) { - return value < other; - } - - /** - * The base implementation of `_.map` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ - function baseMap(collection, iteratee) { - var index = -1, - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value, key, collection) { - result[++index] = iteratee(value, key, collection); - }); - return result; - } - - /** - * The base implementation of `_.matches` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property values to match. - * @returns {Function} Returns the new spec function. - */ - function baseMatches(source) { - var props = nativeKeys(source); - return function(object) { - var length = props.length; - if (object == null) { - return !length; - } - object = Object(object); - while (length--) { - var key = props[length]; - if (!(key in object && - baseIsEqual(source[key], object[key], COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG) - )) { - return false; - } - } - return true; - }; - } - - /** - * The base implementation of `_.pick` without support for individual - * property identifiers. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @returns {Object} Returns the new object. - */ - function basePick(object, props) { - object = Object(object); - return reduce(props, function(result, key) { - if (key in object) { - result[key] = object[key]; - } - return result; - }, {}); - } - - /** - * The base implementation of `_.rest` which doesn't validate or coerce arguments. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - */ - function baseRest(func, start) { - return setToString(overRest(func, start, identity), func + ''); - } - - /** - * The base implementation of `_.slice` without an iteratee call guard. - * - * @private - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function baseSlice(array, start, end) { - var index = -1, - length = array.length; - - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = end > length ? length : end; - if (end < 0) { - end += length; - } - length = start > end ? 0 : ((end - start) >>> 0); - start >>>= 0; - - var result = Array(length); - while (++index < length) { - result[index] = array[index + start]; - } - return result; - } - - /** - * Copies the values of `source` to `array`. - * - * @private - * @param {Array} source The array to copy values from. - * @param {Array} [array=[]] The array to copy values to. - * @returns {Array} Returns `array`. - */ - function copyArray(source) { - return baseSlice(source, 0, source.length); - } - - /** - * The base implementation of `_.some` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ - function baseSome(collection, predicate) { - var result; - - baseEach(collection, function(value, index, collection) { - result = predicate(value, index, collection); - return !result; - }); - return !!result; - } - - /** - * The base implementation of `wrapperValue` which returns the result of - * performing a sequence of actions on the unwrapped `value`, where each - * successive action is supplied the return value of the previous. - * - * @private - * @param {*} value The unwrapped value. - * @param {Array} actions Actions to perform to resolve the unwrapped value. - * @returns {*} Returns the resolved value. - */ - function baseWrapperValue(value, actions) { - var result = value; - return reduce(actions, function(result, action) { - return action.func.apply(action.thisArg, arrayPush([result], action.args)); - }, result); - } - - /** - * Compares values to sort them in ascending order. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {number} Returns the sort order indicator for `value`. - */ - function compareAscending(value, other) { - if (value !== other) { - var valIsDefined = value !== undefined, - valIsNull = value === null, - valIsReflexive = value === value, - valIsSymbol = false; - - var othIsDefined = other !== undefined, - othIsNull = other === null, - othIsReflexive = other === other, - othIsSymbol = false; - - if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || - (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || - (valIsNull && othIsDefined && othIsReflexive) || - (!valIsDefined && othIsReflexive) || - !valIsReflexive) { - return 1; - } - if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || - (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || - (othIsNull && valIsDefined && valIsReflexive) || - (!othIsDefined && valIsReflexive) || - !othIsReflexive) { - return -1; - } - } - return 0; - } - - /** - * Copies properties of `source` to `object`. - * - * @private - * @param {Object} source The object to copy properties from. - * @param {Array} props The property identifiers to copy. - * @param {Object} [object={}] The object to copy properties to. - * @param {Function} [customizer] The function to customize copied values. - * @returns {Object} Returns `object`. - */ - function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - - var index = -1, - length = props.length; - - while (++index < length) { - var key = props[index]; - - var newValue = customizer - ? customizer(object[key], source[key], key, object, source) - : undefined; - - if (newValue === undefined) { - newValue = source[key]; - } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); - } - } - return object; - } - - /** - * Creates a function like `_.assign`. - * - * @private - * @param {Function} assigner The function to assign values. - * @returns {Function} Returns the new assigner function. - */ - function createAssigner(assigner) { - return baseRest(function(object, sources) { - var index = -1, - length = sources.length, - customizer = length > 1 ? sources[length - 1] : undefined; - - customizer = (assigner.length > 3 && typeof customizer == 'function') - ? (length--, customizer) - : undefined; - - object = Object(object); - while (++index < length) { - var source = sources[index]; - if (source) { - assigner(object, source, index, customizer); - } - } - return object; - }); - } - - /** - * Creates a `baseEach` or `baseEachRight` function. - * - * @private - * @param {Function} eachFunc The function to iterate over a collection. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseEach(eachFunc, fromRight) { - return function(collection, iteratee) { - if (collection == null) { - return collection; - } - if (!isArrayLike(collection)) { - return eachFunc(collection, iteratee); - } - var length = collection.length, - index = fromRight ? length : -1, - iterable = Object(collection); - - while ((fromRight ? index-- : ++index < length)) { - if (iteratee(iterable[index], index, iterable) === false) { - break; - } - } - return collection; - }; - } - - /** - * Creates a base function for methods like `_.forIn` and `_.forOwn`. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, - iterable = Object(object), - props = keysFunc(object), - length = props.length; - - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; - } - } - return object; - }; - } - - /** - * Creates a function that produces an instance of `Ctor` regardless of - * whether it was invoked as part of a `new` expression or by `call` or `apply`. - * - * @private - * @param {Function} Ctor The constructor to wrap. - * @returns {Function} Returns the new wrapped function. - */ - function createCtor(Ctor) { - return function() { - // Use a `switch` statement to work with class constructors. See - // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist - // for more details. - var args = arguments; - var thisBinding = baseCreate(Ctor.prototype), - result = Ctor.apply(thisBinding, args); - - // Mimic the constructor's `return` behavior. - // See https://es5.github.io/#x13.2.2 for more details. - return isObject(result) ? result : thisBinding; - }; - } - - /** - * Creates a `_.find` or `_.findLast` function. - * - * @private - * @param {Function} findIndexFunc The function to find the collection index. - * @returns {Function} Returns the new find function. - */ - function createFind(findIndexFunc) { - return function(collection, predicate, fromIndex) { - var iterable = Object(collection); - if (!isArrayLike(collection)) { - var iteratee = baseIteratee(predicate, 3); - collection = keys(collection); - predicate = function(key) { return iteratee(iterable[key], key, iterable); }; - } - var index = findIndexFunc(collection, predicate, fromIndex); - return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; - }; - } - - /** - * Creates a function that wraps `func` to invoke it with the `this` binding - * of `thisArg` and `partials` prepended to the arguments it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} partials The arguments to prepend to those provided to - * the new function. - * @returns {Function} Returns the new wrapped function. - */ - function createPartial(func, bitmask, thisArg, partials) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var argsIndex = -1, - argsLength = arguments.length, - leftIndex = -1, - leftLength = partials.length, - args = Array(leftLength + argsLength), - fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - - while (++leftIndex < leftLength) { - args[leftIndex] = partials[leftIndex]; - } - while (argsLength--) { - args[leftIndex++] = arguments[++argsIndex]; - } - return fn.apply(isBind ? thisArg : this, args); - } - return wrapper; - } - - /** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ - function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Check that cyclic values are equal. - var arrStacked = stack.get(array); - var othStacked = stack.get(other); - if (arrStacked && othStacked) { - return arrStacked == other && othStacked == array; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? [] : undefined; - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - var compared; - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!baseSome(other, function(othValue, othIndex) { - if (!indexOf(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - return result; - } - - /** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - } - return false; - } - - /** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = keys(object), - objLength = objProps.length, - othProps = keys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Check that cyclic values are equal. - var objStacked = stack.get(object); - var othStacked = stack.get(other); - if (objStacked && othStacked) { - return objStacked == other && othStacked == object; - } - var result = true; - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - var compared; - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - return result; - } - - /** - * A specialized version of `baseRest` which flattens the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ - function flatRest(func) { - return setToString(overRest(func, undefined, flatten), func + ''); - } - - /** - * Checks if `value` is a flattenable `arguments` object or array. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. - */ - function isFlattenable(value) { - return isArray(value) || isArguments(value); - } - - /** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ - function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - - return !!length && - (type == 'number' || - (type != 'symbol' && reIsUint.test(value))) && - (value > -1 && value % 1 == 0 && value < length); - } - - /** - * Checks if the given arguments are from an iteratee call. - * - * @private - * @param {*} value The potential iteratee value argument. - * @param {*} index The potential iteratee index or key argument. - * @param {*} object The potential iteratee object argument. - * @returns {boolean} Returns `true` if the arguments are from an iteratee call, - * else `false`. - */ - function isIterateeCall(value, index, object) { - if (!isObject(object)) { - return false; - } - var type = typeof index; - if (type == 'number' - ? (isArrayLike(object) && isIndex(index, object.length)) - : (type == 'string' && index in object) - ) { - return eq(object[index], value); - } - return false; - } - - /** - * This function is like - * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * except that it includes inherited enumerable properties. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } - } - return result; - } - - /** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ - function objectToString(value) { - return nativeObjectToString.call(value); - } - - /** - * A specialized version of `baseRest` which transforms the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @param {Function} transform The rest array transform. - * @returns {Function} Returns the new function. - */ - function overRest(func, start, transform) { - start = nativeMax(start === undefined ? (func.length - 1) : start, 0); - return function() { - var args = arguments, - index = -1, - length = nativeMax(args.length - start, 0), - array = Array(length); - - while (++index < length) { - array[index] = args[start + index]; - } - index = -1; - var otherArgs = Array(start + 1); - while (++index < start) { - otherArgs[index] = args[index]; - } - otherArgs[start] = transform(array); - return func.apply(this, otherArgs); - }; - } - - /** - * Sets the `toString` method of `func` to return `string`. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ - var setToString = identity; - - /*------------------------------------------------------------------------*/ - - /** - * Creates an array with all falsey values removed. The values `false`, `null`, - * `0`, `""`, `undefined`, and `NaN` are falsey. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to compact. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.compact([0, 1, false, 2, '', 3]); - * // => [1, 2, 3] - */ - function compact(array) { - return baseFilter(array, Boolean); - } - - /** - * Creates a new array concatenating `array` with any additional arrays - * and/or values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to concatenate. - * @param {...*} [values] The values to concatenate. - * @returns {Array} Returns the new concatenated array. - * @example - * - * var array = [1]; - * var other = _.concat(array, 2, [3], [[4]]); - * - * console.log(other); - * // => [1, 2, 3, [4]] - * - * console.log(array); - * // => [1] - */ - function concat() { - var length = arguments.length; - if (!length) { - return []; - } - var args = Array(length - 1), - array = arguments[0], - index = length; - - while (index--) { - args[index - 1] = arguments[index]; - } - return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); - } - - /** - * This method is like `_.find` except that it returns the index of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.findIndex(users, function(o) { return o.user == 'barney'; }); - * // => 0 - * - * // The `_.matches` iteratee shorthand. - * _.findIndex(users, { 'user': 'fred', 'active': false }); - * // => 1 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findIndex(users, ['active', false]); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.findIndex(users, 'active'); - * // => 2 - */ - function findIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseFindIndex(array, baseIteratee(predicate, 3), index); - } - - /** - * Flattens `array` a single level deep. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flatten([1, [2, [3, [4]], 5]]); - * // => [1, 2, [3, [4]], 5] - */ - function flatten(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, 1) : []; - } - - /** - * Recursively flattens `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flattenDeep([1, [2, [3, [4]], 5]]); - * // => [1, 2, 3, 4, 5] - */ - function flattenDeep(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, INFINITY) : []; - } - - /** - * Gets the first element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias first - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the first element of `array`. - * @example - * - * _.head([1, 2, 3]); - * // => 1 - * - * _.head([]); - * // => undefined - */ - function head(array) { - return (array && array.length) ? array[0] : undefined; - } - - /** - * Gets the index at which the first occurrence of `value` is found in `array` - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. If `fromIndex` is negative, it's used as the - * offset from the end of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.indexOf([1, 2, 1, 2], 2); - * // => 1 - * - * // Search from the `fromIndex`. - * _.indexOf([1, 2, 1, 2], 2, 2); - * // => 3 - */ - function indexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (typeof fromIndex == 'number') { - fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : fromIndex; - } else { - fromIndex = 0; - } - var index = (fromIndex || 0) - 1, - isReflexive = value === value; - - while (++index < length) { - var other = array[index]; - if ((isReflexive ? other === value : other !== other)) { - return index; - } - } - return -1; - } - - /** - * Gets the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the last element of `array`. - * @example - * - * _.last([1, 2, 3]); - * // => 3 - */ - function last(array) { - var length = array == null ? 0 : array.length; - return length ? array[length - 1] : undefined; - } - - /** - * Creates a slice of `array` from `start` up to, but not including, `end`. - * - * **Note:** This method is used instead of - * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are - * returned. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function slice(array, start, end) { - var length = array == null ? 0 : array.length; - start = start == null ? 0 : +start; - end = end === undefined ? length : +end; - return length ? baseSlice(array, start, end) : []; - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` wrapper instance that wraps `value` with explicit method - * chain sequences enabled. The result of such sequences must be unwrapped - * with `_#value`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Seq - * @param {*} value The value to wrap. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'pebbles', 'age': 1 } - * ]; - * - * var youngest = _ - * .chain(users) - * .sortBy('age') - * .map(function(o) { - * return o.user + ' is ' + o.age; - * }) - * .head() - * .value(); - * // => 'pebbles is 1' - */ - function chain(value) { - var result = lodash(value); - result.__chain__ = true; - return result; - } - - /** - * This method invokes `interceptor` and returns `value`. The interceptor - * is invoked with one argument; (value). The purpose of this method is to - * "tap into" a method chain sequence in order to modify intermediate results. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns `value`. - * @example - * - * _([1, 2, 3]) - * .tap(function(array) { - * // Mutate input array. - * array.pop(); - * }) - * .reverse() - * .value(); - * // => [2, 1] - */ - function tap(value, interceptor) { - interceptor(value); - return value; - } - - /** - * This method is like `_.tap` except that it returns the result of `interceptor`. - * The purpose of this method is to "pass thru" values replacing intermediate - * results in a method chain sequence. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns the result of `interceptor`. - * @example - * - * _(' abc ') - * .chain() - * .trim() - * .thru(function(value) { - * return [value]; - * }) - * .value(); - * // => ['abc'] - */ - function thru(value, interceptor) { - return interceptor(value); - } - - /** - * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. - * - * @name chain - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 } - * ]; - * - * // A sequence without explicit chaining. - * _(users).head(); - * // => { 'user': 'barney', 'age': 36 } - * - * // A sequence with explicit chaining. - * _(users) - * .chain() - * .head() - * .pick('user') - * .value(); - * // => { 'user': 'barney' } - */ - function wrapperChain() { - return chain(this); - } - - /** - * Executes the chain sequence to resolve the unwrapped value. - * - * @name value - * @memberOf _ - * @since 0.1.0 - * @alias toJSON, valueOf - * @category Seq - * @returns {*} Returns the resolved unwrapped value. - * @example - * - * _([1, 2, 3]).value(); - * // => [1, 2, 3] - */ - function wrapperValue() { - return baseWrapperValue(this.__wrapped__, this.__actions__); - } - - /*------------------------------------------------------------------------*/ - - /** - * Checks if `predicate` returns truthy for **all** elements of `collection`. - * Iteration is stopped once `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * **Note:** This method returns `true` for - * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because - * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of - * elements of empty collections. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - * @example - * - * _.every([true, 1, null, 'yes'], Boolean); - * // => false - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.every(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.every(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.every(users, 'active'); - * // => false - */ - function every(collection, predicate, guard) { - predicate = guard ? undefined : predicate; - return baseEvery(collection, baseIteratee(predicate)); - } - - /** - * Iterates over elements of `collection`, returning an array of all elements - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * **Note:** Unlike `_.remove`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.reject - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * _.filter(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, { 'age': 36, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.filter(users, 'active'); - * // => objects for ['barney'] - * - * // Combining several predicates using `_.overEvery` or `_.overSome`. - * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); - * // => objects for ['fred', 'barney'] - */ - function filter(collection, predicate) { - return baseFilter(collection, baseIteratee(predicate)); - } - - /** - * Iterates over elements of `collection`, returning the first element - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false }, - * { 'user': 'pebbles', 'age': 1, 'active': true } - * ]; - * - * _.find(users, function(o) { return o.age < 40; }); - * // => object for 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.find(users, { 'age': 1, 'active': true }); - * // => object for 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.find(users, ['active', false]); - * // => object for 'fred' - * - * // The `_.property` iteratee shorthand. - * _.find(users, 'active'); - * // => object for 'barney' - */ - var find = createFind(findIndex); - - /** - * Iterates over elements of `collection` and invokes `iteratee` for each element. - * The iteratee is invoked with three arguments: (value, index|key, collection). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * **Note:** As with other "Collections" methods, objects with a "length" - * property are iterated like arrays. To avoid this behavior use `_.forIn` - * or `_.forOwn` for object iteration. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias each - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEachRight - * @example - * - * _.forEach([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `1` then `2`. - * - * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ - function forEach(collection, iteratee) { - return baseEach(collection, baseIteratee(iteratee)); - } - - /** - * Creates an array of values by running each element in `collection` thru - * `iteratee`. The iteratee is invoked with three arguments: - * (value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. - * - * The guarded methods are: - * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, - * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, - * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, - * `template`, `trim`, `trimEnd`, `trimStart`, and `words` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - * @example - * - * function square(n) { - * return n * n; - * } - * - * _.map([4, 8], square); - * // => [16, 64] - * - * _.map({ 'a': 4, 'b': 8 }, square); - * // => [16, 64] (iteration order is not guaranteed) - * - * var users = [ - * { 'user': 'barney' }, - * { 'user': 'fred' } - * ]; - * - * // The `_.property` iteratee shorthand. - * _.map(users, 'user'); - * // => ['barney', 'fred'] - */ - function map(collection, iteratee) { - return baseMap(collection, baseIteratee(iteratee)); - } - - /** - * Reduces `collection` to a value which is the accumulated result of running - * each element in `collection` thru `iteratee`, where each successive - * invocation is supplied the return value of the previous. If `accumulator` - * is not given, the first element of `collection` is used as the initial - * value. The iteratee is invoked with four arguments: - * (accumulator, value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.reduce`, `_.reduceRight`, and `_.transform`. - * - * The guarded methods are: - * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, - * and `sortBy` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @returns {*} Returns the accumulated value. - * @see _.reduceRight - * @example - * - * _.reduce([1, 2], function(sum, n) { - * return sum + n; - * }, 0); - * // => 3 - * - * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { - * (result[value] || (result[value] = [])).push(key); - * return result; - * }, {}); - * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) - */ - function reduce(collection, iteratee, accumulator) { - return baseReduce(collection, baseIteratee(iteratee), accumulator, arguments.length < 3, baseEach); - } - - /** - * Gets the size of `collection` by returning its length for array-like - * values or the number of own enumerable string keyed properties for objects. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @returns {number} Returns the collection size. - * @example - * - * _.size([1, 2, 3]); - * // => 3 - * - * _.size({ 'a': 1, 'b': 2 }); - * // => 2 - * - * _.size('pebbles'); - * // => 7 - */ - function size(collection) { - if (collection == null) { - return 0; - } - collection = isArrayLike(collection) ? collection : nativeKeys(collection); - return collection.length; - } - - /** - * Checks if `predicate` returns truthy for **any** element of `collection`. - * Iteration is stopped once `predicate` returns truthy. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - * @example - * - * _.some([null, 0, 'yes', false], Boolean); - * // => true - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.some(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.some(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.some(users, 'active'); - * // => true - */ - function some(collection, predicate, guard) { - predicate = guard ? undefined : predicate; - return baseSome(collection, baseIteratee(predicate)); - } - - /** - * Creates an array of elements, sorted in ascending order by the results of - * running each element in a collection thru each iteratee. This method - * performs a stable sort, that is, it preserves the original sort order of - * equal elements. The iteratees are invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {...(Function|Function[])} [iteratees=[_.identity]] - * The iteratees to sort by. - * @returns {Array} Returns the new sorted array. - * @example - * - * var users = [ - * { 'user': 'fred', 'age': 48 }, - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 30 }, - * { 'user': 'barney', 'age': 34 } - * ]; - * - * _.sortBy(users, [function(o) { return o.user; }]); - * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] - * - * _.sortBy(users, ['user', 'age']); - * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] - */ - function sortBy(collection, iteratee) { - var index = 0; - iteratee = baseIteratee(iteratee); - - return baseMap(baseMap(collection, function(value, key, collection) { - return { 'value': value, 'index': index++, 'criteria': iteratee(value, key, collection) }; - }).sort(function(object, other) { - return compareAscending(object.criteria, other.criteria) || (object.index - other.index); - }), baseProperty('value')); - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates a function that invokes `func`, with the `this` binding and arguments - * of the created function, while it's called less than `n` times. Subsequent - * calls to the created function return the result of the last `func` invocation. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {number} n The number of calls at which `func` is no longer invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * jQuery(element).on('click', _.before(5, addContactToList)); - * // => Allows adding up to 4 contacts to the list. - */ - function before(n, func) { - var result; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n > 0) { - result = func.apply(this, arguments); - } - if (n <= 1) { - func = undefined; - } - return result; - }; - } - - /** - * Creates a function that invokes `func` with the `this` binding of `thisArg` - * and `partials` prepended to the arguments it receives. - * - * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for partially applied arguments. - * - * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" - * property of bound functions. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to bind. - * @param {*} thisArg The `this` binding of `func`. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * function greet(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * - * var object = { 'user': 'fred' }; - * - * var bound = _.bind(greet, object, 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * // Bound with placeholders. - * var bound = _.bind(greet, object, _, '!'); - * bound('hi'); - * // => 'hi fred!' - */ - var bind = baseRest(function(func, thisArg, partials) { - return createPartial(func, WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG, thisArg, partials); - }); - - /** - * Defers invoking the `func` until the current call stack has cleared. Any - * additional arguments are provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to defer. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.defer(function(text) { - * console.log(text); - * }, 'deferred'); - * // => Logs 'deferred' after one millisecond. - */ - var defer = baseRest(function(func, args) { - return baseDelay(func, 1, args); - }); - - /** - * Invokes `func` after `wait` milliseconds. Any additional arguments are - * provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.delay(function(text) { - * console.log(text); - * }, 1000, 'later'); - * // => Logs 'later' after one second. - */ - var delay = baseRest(function(func, wait, args) { - return baseDelay(func, toNumber(wait) || 0, args); - }); - - /** - * Creates a function that negates the result of the predicate `func`. The - * `func` predicate is invoked with the `this` binding and arguments of the - * created function. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} predicate The predicate to negate. - * @returns {Function} Returns the new negated function. - * @example - * - * function isEven(n) { - * return n % 2 == 0; - * } - * - * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); - * // => [1, 3, 5] - */ - function negate(predicate) { - if (typeof predicate != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return function() { - var args = arguments; - return !predicate.apply(this, args); - }; - } - - /** - * Creates a function that is restricted to invoking `func` once. Repeat calls - * to the function return the value of the first invocation. The `func` is - * invoked with the `this` binding and arguments of the created function. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var initialize = _.once(createApplication); - * initialize(); - * initialize(); - * // => `createApplication` is invoked once - */ - function once(func) { - return before(2, func); - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates a shallow clone of `value`. - * - * **Note:** This method is loosely based on the - * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) - * and supports cloning arrays, array buffers, booleans, date objects, maps, - * numbers, `Object` objects, regexes, sets, strings, symbols, and typed - * arrays. The own enumerable properties of `arguments` objects are cloned - * as plain objects. An empty object is returned for uncloneable values such - * as error objects, functions, DOM nodes, and WeakMaps. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to clone. - * @returns {*} Returns the cloned value. - * @see _.cloneDeep - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var shallow = _.clone(objects); - * console.log(shallow[0] === objects[0]); - * // => true - */ - function clone(value) { - if (!isObject(value)) { - return value; - } - return isArray(value) ? copyArray(value) : copyObject(value, nativeKeys(value)); - } - - /** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ - function eq(value, other) { - return value === other || (value !== value && other !== other); - } - - /** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ - var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); - }; - - /** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ - var isArray = Array.isArray; - - /** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ - function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); - } - - /** - * Checks if `value` is classified as a boolean primitive or object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. - * @example - * - * _.isBoolean(false); - * // => true - * - * _.isBoolean(null); - * // => false - */ - function isBoolean(value) { - return value === true || value === false || - (isObjectLike(value) && baseGetTag(value) == boolTag); - } - - /** - * Checks if `value` is classified as a `Date` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - * @example - * - * _.isDate(new Date); - * // => true - * - * _.isDate('Mon April 23 2012'); - * // => false - */ - var isDate = baseIsDate; - - /** - * Checks if `value` is an empty object, collection, map, or set. - * - * Objects are considered empty if they have no own enumerable string keyed - * properties. - * - * Array-like values such as `arguments` objects, arrays, buffers, strings, or - * jQuery-like collections are considered empty if they have a `length` of `0`. - * Similarly, maps and sets are considered empty if they have a `size` of `0`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is empty, else `false`. - * @example - * - * _.isEmpty(null); - * // => true - * - * _.isEmpty(true); - * // => true - * - * _.isEmpty(1); - * // => true - * - * _.isEmpty([1, 2, 3]); - * // => false - * - * _.isEmpty({ 'a': 1 }); - * // => false - */ - function isEmpty(value) { - if (isArrayLike(value) && - (isArray(value) || isString(value) || - isFunction(value.splice) || isArguments(value))) { - return !value.length; - } - return !nativeKeys(value).length; - } - - /** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ - function isEqual(value, other) { - return baseIsEqual(value, other); - } - - /** - * Checks if `value` is a finite primitive number. - * - * **Note:** This method is based on - * [`Number.isFinite`](https://mdn.io/Number/isFinite). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. - * @example - * - * _.isFinite(3); - * // => true - * - * _.isFinite(Number.MIN_VALUE); - * // => true - * - * _.isFinite(Infinity); - * // => false - * - * _.isFinite('3'); - * // => false - */ - function isFinite(value) { - return typeof value == 'number' && nativeIsFinite(value); - } - - /** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ - function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; - } - - /** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ - function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; - } - - /** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ - function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); - } - - /** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ - function isObjectLike(value) { - return value != null && typeof value == 'object'; - } - - /** - * Checks if `value` is `NaN`. - * - * **Note:** This method is based on - * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as - * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for - * `undefined` and other non-number values. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - * @example - * - * _.isNaN(NaN); - * // => true - * - * _.isNaN(new Number(NaN)); - * // => true - * - * isNaN(undefined); - * // => true - * - * _.isNaN(undefined); - * // => false - */ - function isNaN(value) { - // An `NaN` primitive is the only value that is not equal to itself. - // Perform the `toStringTag` check first to avoid errors with some - // ActiveX objects in IE. - return isNumber(value) && value != +value; - } - - /** - * Checks if `value` is `null`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `null`, else `false`. - * @example - * - * _.isNull(null); - * // => true - * - * _.isNull(void 0); - * // => false - */ - function isNull(value) { - return value === null; - } - - /** - * Checks if `value` is classified as a `Number` primitive or object. - * - * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are - * classified as numbers, use the `_.isFinite` method. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a number, else `false`. - * @example - * - * _.isNumber(3); - * // => true - * - * _.isNumber(Number.MIN_VALUE); - * // => true - * - * _.isNumber(Infinity); - * // => true - * - * _.isNumber('3'); - * // => false - */ - function isNumber(value) { - return typeof value == 'number' || - (isObjectLike(value) && baseGetTag(value) == numberTag); - } - - /** - * Checks if `value` is classified as a `RegExp` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - * @example - * - * _.isRegExp(/abc/); - * // => true - * - * _.isRegExp('/abc/'); - * // => false - */ - var isRegExp = baseIsRegExp; - - /** - * Checks if `value` is classified as a `String` primitive or object. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a string, else `false`. - * @example - * - * _.isString('abc'); - * // => true - * - * _.isString(1); - * // => false - */ - function isString(value) { - return typeof value == 'string' || - (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); - } - - /** - * Checks if `value` is `undefined`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. - * @example - * - * _.isUndefined(void 0); - * // => true - * - * _.isUndefined(null); - * // => false - */ - function isUndefined(value) { - return value === undefined; - } - - /** - * Converts `value` to an array. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to convert. - * @returns {Array} Returns the converted array. - * @example - * - * _.toArray({ 'a': 1, 'b': 2 }); - * // => [1, 2] - * - * _.toArray('abc'); - * // => ['a', 'b', 'c'] - * - * _.toArray(1); - * // => [] - * - * _.toArray(null); - * // => [] - */ - function toArray(value) { - if (!isArrayLike(value)) { - return values(value); - } - return value.length ? copyArray(value) : []; - } - - /** - * Converts `value` to an integer. - * - * **Note:** This method is loosely based on - * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toInteger(3.2); - * // => 3 - * - * _.toInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toInteger(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toInteger('3.2'); - * // => 3 - */ - var toInteger = Number; - - /** - * Converts `value` to a number. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to process. - * @returns {number} Returns the number. - * @example - * - * _.toNumber(3.2); - * // => 3.2 - * - * _.toNumber(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toNumber(Infinity); - * // => Infinity - * - * _.toNumber('3.2'); - * // => 3.2 - */ - var toNumber = Number; - - /** - * Converts `value` to a string. An empty string is returned for `null` - * and `undefined` values. The sign of `-0` is preserved. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - * @example - * - * _.toString(null); - * // => '' - * - * _.toString(-0); - * // => '-0' - * - * _.toString([1, 2, 3]); - * // => '1,2,3' - */ - function toString(value) { - if (typeof value == 'string') { - return value; - } - return value == null ? '' : (value + ''); - } - - /*------------------------------------------------------------------------*/ - - /** - * Assigns own enumerable string keyed properties of source objects to the - * destination object. Source objects are applied from left to right. - * Subsequent sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object` and is loosely based on - * [`Object.assign`](https://mdn.io/Object/assign). - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assignIn - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assign({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'c': 3 } - */ - var assign = createAssigner(function(object, source) { - copyObject(source, nativeKeys(source), object); - }); - - /** - * This method is like `_.assign` except that it iterates over own and - * inherited source properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extend - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assign - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assignIn({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } - */ - var assignIn = createAssigner(function(object, source) { - copyObject(source, nativeKeysIn(source), object); - }); - - /** - * Creates an object that inherits from the `prototype` object. If a - * `properties` object is given, its own enumerable string keyed properties - * are assigned to the created object. - * - * @static - * @memberOf _ - * @since 2.3.0 - * @category Object - * @param {Object} prototype The object to inherit from. - * @param {Object} [properties] The properties to assign to the object. - * @returns {Object} Returns the new object. - * @example - * - * function Shape() { - * this.x = 0; - * this.y = 0; - * } - * - * function Circle() { - * Shape.call(this); - * } - * - * Circle.prototype = _.create(Shape.prototype, { - * 'constructor': Circle - * }); - * - * var circle = new Circle; - * circle instanceof Circle; - * // => true - * - * circle instanceof Shape; - * // => true - */ - function create(prototype, properties) { - var result = baseCreate(prototype); - return properties == null ? result : assign(result, properties); - } - - /** - * Assigns own and inherited enumerable string keyed properties of source - * objects to the destination object for all destination properties that - * resolve to `undefined`. Source objects are applied from left to right. - * Once a property is set, additional values of the same property are ignored. - * - * **Note:** This method mutates `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaultsDeep - * @example - * - * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var defaults = baseRest(function(object, sources) { - object = Object(object); - - var index = -1; - var length = sources.length; - var guard = length > 2 ? sources[2] : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - length = 1; - } - - while (++index < length) { - var source = sources[index]; - var props = keysIn(source); - var propsIndex = -1; - var propsLength = props.length; - - while (++propsIndex < propsLength) { - var key = props[propsIndex]; - var value = object[key]; - - if (value === undefined || - (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { - object[key] = source[key]; - } - } - } - - return object; - }); - - /** - * Checks if `path` is a direct property of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = { 'a': { 'b': 2 } }; - * var other = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.has(object, 'a'); - * // => true - * - * _.has(object, 'a.b'); - * // => true - * - * _.has(object, ['a', 'b']); - * // => true - * - * _.has(other, 'a'); - * // => false - */ - function has(object, path) { - return object != null && hasOwnProperty.call(object, path); - } - - /** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ - var keys = nativeKeys; - - /** - * Creates an array of the own and inherited enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keysIn(new Foo); - * // => ['a', 'b', 'c'] (iteration order is not guaranteed) - */ - var keysIn = nativeKeysIn; - - /** - * Creates an object composed of the picked `object` properties. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The source object. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.pick(object, ['a', 'c']); - * // => { 'a': 1, 'c': 3 } - */ - var pick = flatRest(function(object, paths) { - return object == null ? {} : basePick(object, paths); - }); - - /** - * This method is like `_.get` except that if the resolved value is a - * function it's invoked with the `this` binding of its parent object and - * its result is returned. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to resolve. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; - * - * _.result(object, 'a[0].b.c1'); - * // => 3 - * - * _.result(object, 'a[0].b.c2'); - * // => 4 - * - * _.result(object, 'a[0].b.c3', 'default'); - * // => 'default' - * - * _.result(object, 'a[0].b.c3', _.constant('default')); - * // => 'default' - */ - function result(object, path, defaultValue) { - var value = object == null ? undefined : object[path]; - if (value === undefined) { - value = defaultValue; - } - return isFunction(value) ? value.call(object) : value; - } - - /** - * Creates an array of the own enumerable string keyed property values of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property values. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.values(new Foo); - * // => [1, 2] (iteration order is not guaranteed) - * - * _.values('hi'); - * // => ['h', 'i'] - */ - function values(object) { - return object == null ? [] : baseValues(object, keys(object)); - } - - /*------------------------------------------------------------------------*/ - - /** - * Converts the characters "&", "<", ">", '"', and "'" in `string` to their - * corresponding HTML entities. - * - * **Note:** No other characters are escaped. To escape additional - * characters use a third-party library like [_he_](https://mths.be/he). - * - * Though the ">" character is escaped for symmetry, characters like - * ">" and "/" don't need escaping in HTML and have no special meaning - * unless they're part of a tag or unquoted attribute value. See - * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) - * (under "semi-related fun fact") for more details. - * - * When working with HTML you should always - * [quote attribute values](http://wonko.com/post/html-escaping) to reduce - * XSS vectors. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escape('fred, barney, & pebbles'); - * // => 'fred, barney, & pebbles' - */ - function escape(string) { - string = toString(string); - return (string && reHasUnescapedHtml.test(string)) - ? string.replace(reUnescapedHtml, escapeHtmlChar) - : string; - } - - /*------------------------------------------------------------------------*/ - - /** - * This method returns the first argument it receives. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {*} value Any value. - * @returns {*} Returns `value`. - * @example - * - * var object = { 'a': 1 }; - * - * console.log(_.identity(object) === object); - * // => true - */ - function identity(value) { - return value; - } - - /** - * Creates a function that invokes `func` with the arguments of the created - * function. If `func` is a property name, the created function returns the - * property value for a given element. If `func` is an array or object, the - * created function returns `true` for elements that contain the equivalent - * source properties, otherwise it returns `false`. - * - * @static - * @since 4.0.0 - * @memberOf _ - * @category Util - * @param {*} [func=_.identity] The value to convert to a callback. - * @returns {Function} Returns the callback. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true })); - * // => [{ 'user': 'barney', 'age': 36, 'active': true }] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, _.iteratee(['user', 'fred'])); - * // => [{ 'user': 'fred', 'age': 40 }] - * - * // The `_.property` iteratee shorthand. - * _.map(users, _.iteratee('user')); - * // => ['barney', 'fred'] - * - * // Create custom iteratee shorthands. - * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) { - * return !_.isRegExp(func) ? iteratee(func) : function(string) { - * return func.test(string); - * }; - * }); - * - * _.filter(['abc', 'def'], /ef/); - * // => ['def'] - */ - var iteratee = baseIteratee; - - /** - * Creates a function that performs a partial deep comparison between a given - * object and `source`, returning `true` if the given object has equivalent - * property values, else `false`. - * - * **Note:** The created function is equivalent to `_.isMatch` with `source` - * partially applied. - * - * Partial comparisons will match empty array and empty object `source` - * values against any array or object value, respectively. See `_.isEqual` - * for a list of supported value comparisons. - * - * **Note:** Multiple values can be checked by combining several matchers - * using `_.overSome` - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Util - * @param {Object} source The object of property values to match. - * @returns {Function} Returns the new spec function. - * @example - * - * var objects = [ - * { 'a': 1, 'b': 2, 'c': 3 }, - * { 'a': 4, 'b': 5, 'c': 6 } - * ]; - * - * _.filter(objects, _.matches({ 'a': 4, 'c': 6 })); - * // => [{ 'a': 4, 'b': 5, 'c': 6 }] - * - * // Checking for several possible values - * _.filter(objects, _.overSome([_.matches({ 'a': 1 }), _.matches({ 'a': 4 })])); - * // => [{ 'a': 1, 'b': 2, 'c': 3 }, { 'a': 4, 'b': 5, 'c': 6 }] - */ - function matches(source) { - return baseMatches(assign({}, source)); - } - - /** - * Adds all own enumerable string keyed function properties of a source - * object to the destination object. If `object` is a function, then methods - * are added to its prototype as well. - * - * **Note:** Use `_.runInContext` to create a pristine `lodash` function to - * avoid conflicts caused by modifying the original. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {Function|Object} [object=lodash] The destination object. - * @param {Object} source The object of functions to add. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.chain=true] Specify whether mixins are chainable. - * @returns {Function|Object} Returns `object`. - * @example - * - * function vowels(string) { - * return _.filter(string, function(v) { - * return /[aeiou]/i.test(v); - * }); - * } - * - * _.mixin({ 'vowels': vowels }); - * _.vowels('fred'); - * // => ['e'] - * - * _('fred').vowels().value(); - * // => ['e'] - * - * _.mixin({ 'vowels': vowels }, { 'chain': false }); - * _('fred').vowels(); - * // => ['e'] - */ - function mixin(object, source, options) { - var props = keys(source), - methodNames = baseFunctions(source, props); - - if (options == null && - !(isObject(source) && (methodNames.length || !props.length))) { - options = source; - source = object; - object = this; - methodNames = baseFunctions(source, keys(source)); - } - var chain = !(isObject(options) && 'chain' in options) || !!options.chain, - isFunc = isFunction(object); - - baseEach(methodNames, function(methodName) { - var func = source[methodName]; - object[methodName] = func; - if (isFunc) { - object.prototype[methodName] = function() { - var chainAll = this.__chain__; - if (chain || chainAll) { - var result = object(this.__wrapped__), - actions = result.__actions__ = copyArray(this.__actions__); - - actions.push({ 'func': func, 'args': arguments, 'thisArg': object }); - result.__chain__ = chainAll; - return result; - } - return func.apply(object, arrayPush([this.value()], arguments)); - }; - } - }); - - return object; - } - - /** - * Reverts the `_` variable to its previous value and returns a reference to - * the `lodash` function. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @returns {Function} Returns the `lodash` function. - * @example - * - * var lodash = _.noConflict(); - */ - function noConflict() { - if (root._ === this) { - root._ = oldDash; - } - return this; - } - - /** - * This method returns `undefined`. - * - * @static - * @memberOf _ - * @since 2.3.0 - * @category Util - * @example - * - * _.times(2, _.noop); - * // => [undefined, undefined] - */ - function noop() { - // No operation performed. - } - - /** - * Generates a unique ID. If `prefix` is given, the ID is appended to it. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {string} [prefix=''] The value to prefix the ID with. - * @returns {string} Returns the unique ID. - * @example - * - * _.uniqueId('contact_'); - * // => 'contact_104' - * - * _.uniqueId(); - * // => '105' - */ - function uniqueId(prefix) { - var id = ++idCounter; - return toString(prefix) + id; - } - - /*------------------------------------------------------------------------*/ - - /** - * Computes the maximum value of `array`. If `array` is empty or falsey, - * `undefined` is returned. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Math - * @param {Array} array The array to iterate over. - * @returns {*} Returns the maximum value. - * @example - * - * _.max([4, 2, 8, 6]); - * // => 8 - * - * _.max([]); - * // => undefined - */ - function max(array) { - return (array && array.length) - ? baseExtremum(array, identity, baseGt) - : undefined; - } - - /** - * Computes the minimum value of `array`. If `array` is empty or falsey, - * `undefined` is returned. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Math - * @param {Array} array The array to iterate over. - * @returns {*} Returns the minimum value. - * @example - * - * _.min([4, 2, 8, 6]); - * // => 2 - * - * _.min([]); - * // => undefined - */ - function min(array) { - return (array && array.length) - ? baseExtremum(array, identity, baseLt) - : undefined; - } - - /*------------------------------------------------------------------------*/ - - // Add methods that return wrapped values in chain sequences. - lodash.assignIn = assignIn; - lodash.before = before; - lodash.bind = bind; - lodash.chain = chain; - lodash.compact = compact; - lodash.concat = concat; - lodash.create = create; - lodash.defaults = defaults; - lodash.defer = defer; - lodash.delay = delay; - lodash.filter = filter; - lodash.flatten = flatten; - lodash.flattenDeep = flattenDeep; - lodash.iteratee = iteratee; - lodash.keys = keys; - lodash.map = map; - lodash.matches = matches; - lodash.mixin = mixin; - lodash.negate = negate; - lodash.once = once; - lodash.pick = pick; - lodash.slice = slice; - lodash.sortBy = sortBy; - lodash.tap = tap; - lodash.thru = thru; - lodash.toArray = toArray; - lodash.values = values; - - // Add aliases. - lodash.extend = assignIn; - - // Add methods to `lodash.prototype`. - mixin(lodash, lodash); - - /*------------------------------------------------------------------------*/ - - // Add methods that return unwrapped values in chain sequences. - lodash.clone = clone; - lodash.escape = escape; - lodash.every = every; - lodash.find = find; - lodash.forEach = forEach; - lodash.has = has; - lodash.head = head; - lodash.identity = identity; - lodash.indexOf = indexOf; - lodash.isArguments = isArguments; - lodash.isArray = isArray; - lodash.isBoolean = isBoolean; - lodash.isDate = isDate; - lodash.isEmpty = isEmpty; - lodash.isEqual = isEqual; - lodash.isFinite = isFinite; - lodash.isFunction = isFunction; - lodash.isNaN = isNaN; - lodash.isNull = isNull; - lodash.isNumber = isNumber; - lodash.isObject = isObject; - lodash.isRegExp = isRegExp; - lodash.isString = isString; - lodash.isUndefined = isUndefined; - lodash.last = last; - lodash.max = max; - lodash.min = min; - lodash.noConflict = noConflict; - lodash.noop = noop; - lodash.reduce = reduce; - lodash.result = result; - lodash.size = size; - lodash.some = some; - lodash.uniqueId = uniqueId; - - // Add aliases. - lodash.each = forEach; - lodash.first = head; - - mixin(lodash, (function() { - var source = {}; - baseForOwn(lodash, function(func, methodName) { - if (!hasOwnProperty.call(lodash.prototype, methodName)) { - source[methodName] = func; - } - }); - return source; - }()), { 'chain': false }); - - /*------------------------------------------------------------------------*/ - - /** - * The semantic version number. - * - * @static - * @memberOf _ - * @type {string} - */ - lodash.VERSION = VERSION; - - // Add `Array` methods to `lodash.prototype`. - baseEach(['pop', 'join', 'replace', 'reverse', 'split', 'push', 'shift', 'sort', 'splice', 'unshift'], function(methodName) { - var func = (/^(?:replace|split)$/.test(methodName) ? String.prototype : arrayProto)[methodName], - chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru', - retUnwrapped = /^(?:pop|join|replace|shift)$/.test(methodName); - - lodash.prototype[methodName] = function() { - var args = arguments; - if (retUnwrapped && !this.__chain__) { - var value = this.value(); - return func.apply(isArray(value) ? value : [], args); - } - return this[chainName](function(value) { - return func.apply(isArray(value) ? value : [], args); - }); - }; - }); - - // Add chain sequence methods to the `lodash` wrapper. - lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue; - - /*--------------------------------------------------------------------------*/ - - // Some AMD build optimizers, like r.js, check for condition patterns like: - if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) { - // Expose Lodash on the global object to prevent errors when Lodash is - // loaded by a script tag in the presence of an AMD loader. - // See http://requirejs.org/docs/errors.html#mismatch for more details. - // Use `_.noConflict` to remove Lodash from the global object. - root._ = lodash; - - // Define as an anonymous module so, through path mapping, it can be - // referenced as the "underscore" module. - define(function() { - return lodash; - }); - } - // Check for `exports` after `define` in case a build optimizer adds it. - else if (freeModule) { - // Export for Node.js. - (freeModule.exports = lodash)._ = lodash; - // Export for CommonJS support. - freeExports._ = lodash; - } - else { - // Export to the global object. - root._ = lodash; - } -}.call(this)); diff --git a/packages/frontend-core/node_modules/lodash/core.min.js b/packages/frontend-core/node_modules/lodash/core.min.js deleted file mode 100644 index e425e4d4f5..0000000000 --- a/packages/frontend-core/node_modules/lodash/core.min.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * @license - * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE - * Build: `lodash core -o ./dist/lodash.core.js` - */ -;(function(){function n(n){return H(n)&&pn.call(n,"callee")&&!yn.call(n,"callee")}function t(n,t){return n.push.apply(n,t),n}function r(n){return function(t){return null==t?Z:t[n]}}function e(n,t,r,e,u){return u(n,function(n,u,o){r=e?(e=false,n):t(r,n,u,o)}),r}function u(n,t){return j(t,function(t){return n[t]})}function o(n){return n instanceof i?n:new i(n)}function i(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t}function c(n,t,r){if(typeof n!="function")throw new TypeError("Expected a function"); -return setTimeout(function(){n.apply(Z,r)},t)}function f(n,t){var r=true;return mn(n,function(n,e,u){return r=!!t(n,e,u)}),r}function a(n,t,r){for(var e=-1,u=n.length;++et}function b(n,t,r,e,u){return n===t||(null==n||null==t||!H(n)&&!H(t)?n!==n&&t!==t:y(n,t,r,e,b,u))}function y(n,t,r,e,u,o){var i=Nn(n),c=Nn(t),f=i?"[object Array]":hn.call(n),a=c?"[object Array]":hn.call(t),f="[object Arguments]"==f?"[object Object]":f,a="[object Arguments]"==a?"[object Object]":a,l="[object Object]"==f,c="[object Object]"==a,a=f==a;o||(o=[]);var p=An(o,function(t){return t[0]==n}),s=An(o,function(n){ -return n[0]==t});if(p&&s)return p[1]==t;if(o.push([n,t]),o.push([t,n]),a&&!l){if(i)r=T(n,t,r,e,u,o);else n:{switch(f){case"[object Boolean]":case"[object Date]":case"[object Number]":r=J(+n,+t);break n;case"[object Error]":r=n.name==t.name&&n.message==t.message;break n;case"[object RegExp]":case"[object String]":r=n==t+"";break n}r=false}return o.pop(),r}return 1&r||(i=l&&pn.call(n,"__wrapped__"),f=c&&pn.call(t,"__wrapped__"),!i&&!f)?!!a&&(r=B(n,t,r,e,u,o),o.pop(),r):(i=i?n.value():n,f=f?t.value():t, -r=u(i,f,r,e,o),o.pop(),r)}function g(n){return typeof n=="function"?n:null==n?X:(typeof n=="object"?d:r)(n)}function _(n,t){return nt&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Array(u);++ei))return false;var c=o.get(n),f=o.get(t);if(c&&f)return c==t&&f==n;for(var c=-1,f=true,a=2&r?[]:Z;++cr?jn(e+r,0):r:0,r=(r||0)-1;for(var u=t===t;++rarguments.length,mn); -}function G(n,t){var r;if(typeof t!="function")throw new TypeError("Expected a function");return n=Fn(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=Z),r}}function J(n,t){return n===t||n!==n&&t!==t}function M(n){var t;return(t=null!=n)&&(t=n.length,t=typeof t=="number"&&-1=t),t&&!U(n)}function U(n){return!!V(n)&&(n=hn.call(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function V(n){var t=typeof n; -return null!=n&&("object"==t||"function"==t)}function H(n){return null!=n&&typeof n=="object"}function K(n){return typeof n=="number"||H(n)&&"[object Number]"==hn.call(n)}function L(n){return typeof n=="string"||!Nn(n)&&H(n)&&"[object String]"==hn.call(n)}function Q(n){return typeof n=="string"?n:null==n?"":n+""}function W(n){return null==n?[]:u(n,Dn(n))}function X(n){return n}function Y(n,r,e){var u=Dn(r),o=h(r,u);null!=e||V(r)&&(o.length||!u.length)||(e=r,r=n,n=this,o=h(r,Dn(r)));var i=!(V(e)&&"chain"in e&&!e.chain),c=U(n); -return mn(o,function(e){var u=r[e];n[e]=u,c&&(n.prototype[e]=function(){var r=this.__chain__;if(i||r){var e=n(this.__wrapped__);return(e.__actions__=A(this.__actions__)).push({func:u,args:arguments,thisArg:n}),e.__chain__=r,e}return u.apply(n,t([this.value()],arguments))})}),n}var Z,nn=1/0,tn=/[&<>"']/g,rn=RegExp(tn.source),en=/^(?:0|[1-9]\d*)$/,un=typeof self=="object"&&self&&self.Object===Object&&self,on=typeof global=="object"&&global&&global.Object===Object&&global||un||Function("return this")(),cn=(un=typeof exports=="object"&&exports&&!exports.nodeType&&exports)&&typeof module=="object"&&module&&!module.nodeType&&module,fn=function(n){ -return function(t){return null==n?Z:n[t]}}({"&":"&","<":"<",">":">",'"':""","'":"'"}),an=Array.prototype,ln=Object.prototype,pn=ln.hasOwnProperty,sn=0,hn=ln.toString,vn=on._,bn=Object.create,yn=ln.propertyIsEnumerable,gn=on.isFinite,_n=function(n,t){return function(r){return n(t(r))}}(Object.keys,Object),jn=Math.max,dn=function(){function n(){}return function(t){return V(t)?bn?bn(t):(n.prototype=t,t=new n,n.prototype=Z,t):{}}}();i.prototype=dn(o.prototype),i.prototype.constructor=i; -var mn=function(n,t){return function(r,e){if(null==r)return r;if(!M(r))return n(r,e);for(var u=r.length,o=t?u:-1,i=Object(r);(t?o--:++or&&(r=jn(e+r,0));n:{for(t=g(t),e=n.length,r+=-1;++re||o&&c&&a||!u&&a||!i){r=1;break n}if(!o&&r { '4': 1, '6': 2 } - * - * // The `_.property` iteratee shorthand. - * _.countBy(['one', 'two', 'three'], 'length'); - * // => { '3': 2, '5': 1 } - */ -var countBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - ++result[key]; - } else { - baseAssignValue(result, key, 1); - } -}); - -module.exports = countBy; diff --git a/packages/frontend-core/node_modules/lodash/create.js b/packages/frontend-core/node_modules/lodash/create.js deleted file mode 100644 index 919edb850f..0000000000 --- a/packages/frontend-core/node_modules/lodash/create.js +++ /dev/null @@ -1,43 +0,0 @@ -var baseAssign = require('./_baseAssign'), - baseCreate = require('./_baseCreate'); - -/** - * Creates an object that inherits from the `prototype` object. If a - * `properties` object is given, its own enumerable string keyed properties - * are assigned to the created object. - * - * @static - * @memberOf _ - * @since 2.3.0 - * @category Object - * @param {Object} prototype The object to inherit from. - * @param {Object} [properties] The properties to assign to the object. - * @returns {Object} Returns the new object. - * @example - * - * function Shape() { - * this.x = 0; - * this.y = 0; - * } - * - * function Circle() { - * Shape.call(this); - * } - * - * Circle.prototype = _.create(Shape.prototype, { - * 'constructor': Circle - * }); - * - * var circle = new Circle; - * circle instanceof Circle; - * // => true - * - * circle instanceof Shape; - * // => true - */ -function create(prototype, properties) { - var result = baseCreate(prototype); - return properties == null ? result : baseAssign(result, properties); -} - -module.exports = create; diff --git a/packages/frontend-core/node_modules/lodash/curry.js b/packages/frontend-core/node_modules/lodash/curry.js deleted file mode 100644 index 918db1a4a7..0000000000 --- a/packages/frontend-core/node_modules/lodash/curry.js +++ /dev/null @@ -1,57 +0,0 @@ -var createWrap = require('./_createWrap'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_CURRY_FLAG = 8; - -/** - * Creates a function that accepts arguments of `func` and either invokes - * `func` returning its result, if at least `arity` number of arguments have - * been provided, or returns a function that accepts the remaining `func` - * arguments, and so on. The arity of `func` may be specified if `func.length` - * is not sufficient. - * - * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curry(abc); - * - * curried(1)(2)(3); - * // => [1, 2, 3] - * - * curried(1, 2)(3); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(1)(_, 3)(2); - * // => [1, 2, 3] - */ -function curry(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curry.placeholder; - return result; -} - -// Assign default placeholders. -curry.placeholder = {}; - -module.exports = curry; diff --git a/packages/frontend-core/node_modules/lodash/curryRight.js b/packages/frontend-core/node_modules/lodash/curryRight.js deleted file mode 100644 index c85b6f339b..0000000000 --- a/packages/frontend-core/node_modules/lodash/curryRight.js +++ /dev/null @@ -1,54 +0,0 @@ -var createWrap = require('./_createWrap'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_CURRY_RIGHT_FLAG = 16; - -/** - * This method is like `_.curry` except that arguments are applied to `func` - * in the manner of `_.partialRight` instead of `_.partial`. - * - * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curryRight(abc); - * - * curried(3)(2)(1); - * // => [1, 2, 3] - * - * curried(2, 3)(1); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(3)(1, _)(2); - * // => [1, 2, 3] - */ -function curryRight(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curryRight.placeholder; - return result; -} - -// Assign default placeholders. -curryRight.placeholder = {}; - -module.exports = curryRight; diff --git a/packages/frontend-core/node_modules/lodash/date.js b/packages/frontend-core/node_modules/lodash/date.js deleted file mode 100644 index cbf5b41098..0000000000 --- a/packages/frontend-core/node_modules/lodash/date.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - 'now': require('./now') -}; diff --git a/packages/frontend-core/node_modules/lodash/debounce.js b/packages/frontend-core/node_modules/lodash/debounce.js deleted file mode 100644 index 8f751d53d1..0000000000 --- a/packages/frontend-core/node_modules/lodash/debounce.js +++ /dev/null @@ -1,191 +0,0 @@ -var isObject = require('./isObject'), - now = require('./now'), - toNumber = require('./toNumber'); - -/** Error message constants. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max, - nativeMin = Math.min; - -/** - * Creates a debounced function that delays invoking `func` until after `wait` - * milliseconds have elapsed since the last time the debounced function was - * invoked. The debounced function comes with a `cancel` method to cancel - * delayed `func` invocations and a `flush` method to immediately invoke them. - * Provide `options` to indicate whether `func` should be invoked on the - * leading and/or trailing edge of the `wait` timeout. The `func` is invoked - * with the last arguments provided to the debounced function. Subsequent - * calls to the debounced function return the result of the last `func` - * invocation. - * - * **Note:** If `leading` and `trailing` options are `true`, `func` is - * invoked on the trailing edge of the timeout only if the debounced function - * is invoked more than once during the `wait` timeout. - * - * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred - * until to the next tick, similar to `setTimeout` with a timeout of `0`. - * - * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) - * for details over the differences between `_.debounce` and `_.throttle`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to debounce. - * @param {number} [wait=0] The number of milliseconds to delay. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.leading=false] - * Specify invoking on the leading edge of the timeout. - * @param {number} [options.maxWait] - * The maximum time `func` is allowed to be delayed before it's invoked. - * @param {boolean} [options.trailing=true] - * Specify invoking on the trailing edge of the timeout. - * @returns {Function} Returns the new debounced function. - * @example - * - * // Avoid costly calculations while the window size is in flux. - * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); - * - * // Invoke `sendMail` when clicked, debouncing subsequent calls. - * jQuery(element).on('click', _.debounce(sendMail, 300, { - * 'leading': true, - * 'trailing': false - * })); - * - * // Ensure `batchLog` is invoked once after 1 second of debounced calls. - * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); - * var source = new EventSource('/stream'); - * jQuery(source).on('message', debounced); - * - * // Cancel the trailing debounced invocation. - * jQuery(window).on('popstate', debounced.cancel); - */ -function debounce(func, wait, options) { - var lastArgs, - lastThis, - maxWait, - result, - timerId, - lastCallTime, - lastInvokeTime = 0, - leading = false, - maxing = false, - trailing = true; - - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - wait = toNumber(wait) || 0; - if (isObject(options)) { - leading = !!options.leading; - maxing = 'maxWait' in options; - maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; - trailing = 'trailing' in options ? !!options.trailing : trailing; - } - - function invokeFunc(time) { - var args = lastArgs, - thisArg = lastThis; - - lastArgs = lastThis = undefined; - lastInvokeTime = time; - result = func.apply(thisArg, args); - return result; - } - - function leadingEdge(time) { - // Reset any `maxWait` timer. - lastInvokeTime = time; - // Start the timer for the trailing edge. - timerId = setTimeout(timerExpired, wait); - // Invoke the leading edge. - return leading ? invokeFunc(time) : result; - } - - function remainingWait(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime, - timeWaiting = wait - timeSinceLastCall; - - return maxing - ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) - : timeWaiting; - } - - function shouldInvoke(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime; - - // Either this is the first call, activity has stopped and we're at the - // trailing edge, the system time has gone backwards and we're treating - // it as the trailing edge, or we've hit the `maxWait` limit. - return (lastCallTime === undefined || (timeSinceLastCall >= wait) || - (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); - } - - function timerExpired() { - var time = now(); - if (shouldInvoke(time)) { - return trailingEdge(time); - } - // Restart the timer. - timerId = setTimeout(timerExpired, remainingWait(time)); - } - - function trailingEdge(time) { - timerId = undefined; - - // Only invoke if we have `lastArgs` which means `func` has been - // debounced at least once. - if (trailing && lastArgs) { - return invokeFunc(time); - } - lastArgs = lastThis = undefined; - return result; - } - - function cancel() { - if (timerId !== undefined) { - clearTimeout(timerId); - } - lastInvokeTime = 0; - lastArgs = lastCallTime = lastThis = timerId = undefined; - } - - function flush() { - return timerId === undefined ? result : trailingEdge(now()); - } - - function debounced() { - var time = now(), - isInvoking = shouldInvoke(time); - - lastArgs = arguments; - lastThis = this; - lastCallTime = time; - - if (isInvoking) { - if (timerId === undefined) { - return leadingEdge(lastCallTime); - } - if (maxing) { - // Handle invocations in a tight loop. - clearTimeout(timerId); - timerId = setTimeout(timerExpired, wait); - return invokeFunc(lastCallTime); - } - } - if (timerId === undefined) { - timerId = setTimeout(timerExpired, wait); - } - return result; - } - debounced.cancel = cancel; - debounced.flush = flush; - return debounced; -} - -module.exports = debounce; diff --git a/packages/frontend-core/node_modules/lodash/deburr.js b/packages/frontend-core/node_modules/lodash/deburr.js deleted file mode 100644 index f85e314a0c..0000000000 --- a/packages/frontend-core/node_modules/lodash/deburr.js +++ /dev/null @@ -1,45 +0,0 @@ -var deburrLetter = require('./_deburrLetter'), - toString = require('./toString'); - -/** Used to match Latin Unicode letters (excluding mathematical operators). */ -var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; - -/** Used to compose unicode character classes. */ -var rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; - -/** Used to compose unicode capture groups. */ -var rsCombo = '[' + rsComboRange + ']'; - -/** - * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and - * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). - */ -var reComboMark = RegExp(rsCombo, 'g'); - -/** - * Deburrs `string` by converting - * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) - * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) - * letters to basic Latin letters and removing - * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to deburr. - * @returns {string} Returns the deburred string. - * @example - * - * _.deburr('déjà vu'); - * // => 'deja vu' - */ -function deburr(string) { - string = toString(string); - return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); -} - -module.exports = deburr; diff --git a/packages/frontend-core/node_modules/lodash/defaultTo.js b/packages/frontend-core/node_modules/lodash/defaultTo.js deleted file mode 100644 index 5b333592e9..0000000000 --- a/packages/frontend-core/node_modules/lodash/defaultTo.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Checks `value` to determine whether a default value should be returned in - * its place. The `defaultValue` is returned if `value` is `NaN`, `null`, - * or `undefined`. - * - * @static - * @memberOf _ - * @since 4.14.0 - * @category Util - * @param {*} value The value to check. - * @param {*} defaultValue The default value. - * @returns {*} Returns the resolved value. - * @example - * - * _.defaultTo(1, 10); - * // => 1 - * - * _.defaultTo(undefined, 10); - * // => 10 - */ -function defaultTo(value, defaultValue) { - return (value == null || value !== value) ? defaultValue : value; -} - -module.exports = defaultTo; diff --git a/packages/frontend-core/node_modules/lodash/defaults.js b/packages/frontend-core/node_modules/lodash/defaults.js deleted file mode 100644 index c74df044c4..0000000000 --- a/packages/frontend-core/node_modules/lodash/defaults.js +++ /dev/null @@ -1,64 +0,0 @@ -var baseRest = require('./_baseRest'), - eq = require('./eq'), - isIterateeCall = require('./_isIterateeCall'), - keysIn = require('./keysIn'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Assigns own and inherited enumerable string keyed properties of source - * objects to the destination object for all destination properties that - * resolve to `undefined`. Source objects are applied from left to right. - * Once a property is set, additional values of the same property are ignored. - * - * **Note:** This method mutates `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaultsDeep - * @example - * - * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ -var defaults = baseRest(function(object, sources) { - object = Object(object); - - var index = -1; - var length = sources.length; - var guard = length > 2 ? sources[2] : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - length = 1; - } - - while (++index < length) { - var source = sources[index]; - var props = keysIn(source); - var propsIndex = -1; - var propsLength = props.length; - - while (++propsIndex < propsLength) { - var key = props[propsIndex]; - var value = object[key]; - - if (value === undefined || - (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { - object[key] = source[key]; - } - } - } - - return object; -}); - -module.exports = defaults; diff --git a/packages/frontend-core/node_modules/lodash/defaultsDeep.js b/packages/frontend-core/node_modules/lodash/defaultsDeep.js deleted file mode 100644 index 9b5fa3ee22..0000000000 --- a/packages/frontend-core/node_modules/lodash/defaultsDeep.js +++ /dev/null @@ -1,30 +0,0 @@ -var apply = require('./_apply'), - baseRest = require('./_baseRest'), - customDefaultsMerge = require('./_customDefaultsMerge'), - mergeWith = require('./mergeWith'); - -/** - * This method is like `_.defaults` except that it recursively assigns - * default properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 3.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaults - * @example - * - * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); - * // => { 'a': { 'b': 2, 'c': 3 } } - */ -var defaultsDeep = baseRest(function(args) { - args.push(undefined, customDefaultsMerge); - return apply(mergeWith, undefined, args); -}); - -module.exports = defaultsDeep; diff --git a/packages/frontend-core/node_modules/lodash/defer.js b/packages/frontend-core/node_modules/lodash/defer.js deleted file mode 100644 index f6d6c6fa67..0000000000 --- a/packages/frontend-core/node_modules/lodash/defer.js +++ /dev/null @@ -1,26 +0,0 @@ -var baseDelay = require('./_baseDelay'), - baseRest = require('./_baseRest'); - -/** - * Defers invoking the `func` until the current call stack has cleared. Any - * additional arguments are provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to defer. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.defer(function(text) { - * console.log(text); - * }, 'deferred'); - * // => Logs 'deferred' after one millisecond. - */ -var defer = baseRest(function(func, args) { - return baseDelay(func, 1, args); -}); - -module.exports = defer; diff --git a/packages/frontend-core/node_modules/lodash/delay.js b/packages/frontend-core/node_modules/lodash/delay.js deleted file mode 100644 index bd554796fd..0000000000 --- a/packages/frontend-core/node_modules/lodash/delay.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseDelay = require('./_baseDelay'), - baseRest = require('./_baseRest'), - toNumber = require('./toNumber'); - -/** - * Invokes `func` after `wait` milliseconds. Any additional arguments are - * provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.delay(function(text) { - * console.log(text); - * }, 1000, 'later'); - * // => Logs 'later' after one second. - */ -var delay = baseRest(function(func, wait, args) { - return baseDelay(func, toNumber(wait) || 0, args); -}); - -module.exports = delay; diff --git a/packages/frontend-core/node_modules/lodash/difference.js b/packages/frontend-core/node_modules/lodash/difference.js deleted file mode 100644 index fa28bb301f..0000000000 --- a/packages/frontend-core/node_modules/lodash/difference.js +++ /dev/null @@ -1,33 +0,0 @@ -var baseDifference = require('./_baseDifference'), - baseFlatten = require('./_baseFlatten'), - baseRest = require('./_baseRest'), - isArrayLikeObject = require('./isArrayLikeObject'); - -/** - * Creates an array of `array` values not included in the other given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * **Note:** Unlike `_.pullAll`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @returns {Array} Returns the new array of filtered values. - * @see _.without, _.xor - * @example - * - * _.difference([2, 1], [2, 3]); - * // => [1] - */ -var difference = baseRest(function(array, values) { - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) - : []; -}); - -module.exports = difference; diff --git a/packages/frontend-core/node_modules/lodash/differenceBy.js b/packages/frontend-core/node_modules/lodash/differenceBy.js deleted file mode 100644 index 2cd63e7ec0..0000000000 --- a/packages/frontend-core/node_modules/lodash/differenceBy.js +++ /dev/null @@ -1,44 +0,0 @@ -var baseDifference = require('./_baseDifference'), - baseFlatten = require('./_baseFlatten'), - baseIteratee = require('./_baseIteratee'), - baseRest = require('./_baseRest'), - isArrayLikeObject = require('./isArrayLikeObject'), - last = require('./last'); - -/** - * This method is like `_.difference` except that it accepts `iteratee` which - * is invoked for each element of `array` and `values` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * **Note:** Unlike `_.pullAllBy`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [1.2] - * - * // The `_.property` iteratee shorthand. - * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); - * // => [{ 'x': 2 }] - */ -var differenceBy = baseRest(function(array, values) { - var iteratee = last(values); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), baseIteratee(iteratee, 2)) - : []; -}); - -module.exports = differenceBy; diff --git a/packages/frontend-core/node_modules/lodash/differenceWith.js b/packages/frontend-core/node_modules/lodash/differenceWith.js deleted file mode 100644 index c0233f4b9c..0000000000 --- a/packages/frontend-core/node_modules/lodash/differenceWith.js +++ /dev/null @@ -1,40 +0,0 @@ -var baseDifference = require('./_baseDifference'), - baseFlatten = require('./_baseFlatten'), - baseRest = require('./_baseRest'), - isArrayLikeObject = require('./isArrayLikeObject'), - last = require('./last'); - -/** - * This method is like `_.difference` except that it accepts `comparator` - * which is invoked to compare elements of `array` to `values`. The order and - * references of result values are determined by the first array. The comparator - * is invoked with two arguments: (arrVal, othVal). - * - * **Note:** Unlike `_.pullAllWith`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * - * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); - * // => [{ 'x': 2, 'y': 1 }] - */ -var differenceWith = baseRest(function(array, values) { - var comparator = last(values); - if (isArrayLikeObject(comparator)) { - comparator = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) - : []; -}); - -module.exports = differenceWith; diff --git a/packages/frontend-core/node_modules/lodash/divide.js b/packages/frontend-core/node_modules/lodash/divide.js deleted file mode 100644 index 8cae0cd1b0..0000000000 --- a/packages/frontend-core/node_modules/lodash/divide.js +++ /dev/null @@ -1,22 +0,0 @@ -var createMathOperation = require('./_createMathOperation'); - -/** - * Divide two numbers. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Math - * @param {number} dividend The first number in a division. - * @param {number} divisor The second number in a division. - * @returns {number} Returns the quotient. - * @example - * - * _.divide(6, 4); - * // => 1.5 - */ -var divide = createMathOperation(function(dividend, divisor) { - return dividend / divisor; -}, 1); - -module.exports = divide; diff --git a/packages/frontend-core/node_modules/lodash/drop.js b/packages/frontend-core/node_modules/lodash/drop.js deleted file mode 100644 index d5c3cbaa4e..0000000000 --- a/packages/frontend-core/node_modules/lodash/drop.js +++ /dev/null @@ -1,38 +0,0 @@ -var baseSlice = require('./_baseSlice'), - toInteger = require('./toInteger'); - -/** - * Creates a slice of `array` with `n` elements dropped from the beginning. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.drop([1, 2, 3]); - * // => [2, 3] - * - * _.drop([1, 2, 3], 2); - * // => [3] - * - * _.drop([1, 2, 3], 5); - * // => [] - * - * _.drop([1, 2, 3], 0); - * // => [1, 2, 3] - */ -function drop(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - return baseSlice(array, n < 0 ? 0 : n, length); -} - -module.exports = drop; diff --git a/packages/frontend-core/node_modules/lodash/dropRight.js b/packages/frontend-core/node_modules/lodash/dropRight.js deleted file mode 100644 index 441fe99681..0000000000 --- a/packages/frontend-core/node_modules/lodash/dropRight.js +++ /dev/null @@ -1,39 +0,0 @@ -var baseSlice = require('./_baseSlice'), - toInteger = require('./toInteger'); - -/** - * Creates a slice of `array` with `n` elements dropped from the end. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.dropRight([1, 2, 3]); - * // => [1, 2] - * - * _.dropRight([1, 2, 3], 2); - * // => [1] - * - * _.dropRight([1, 2, 3], 5); - * // => [] - * - * _.dropRight([1, 2, 3], 0); - * // => [1, 2, 3] - */ -function dropRight(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - n = length - n; - return baseSlice(array, 0, n < 0 ? 0 : n); -} - -module.exports = dropRight; diff --git a/packages/frontend-core/node_modules/lodash/dropRightWhile.js b/packages/frontend-core/node_modules/lodash/dropRightWhile.js deleted file mode 100644 index 9ad36a0445..0000000000 --- a/packages/frontend-core/node_modules/lodash/dropRightWhile.js +++ /dev/null @@ -1,45 +0,0 @@ -var baseIteratee = require('./_baseIteratee'), - baseWhile = require('./_baseWhile'); - -/** - * Creates a slice of `array` excluding elements dropped from the end. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.dropRightWhile(users, function(o) { return !o.active; }); - * // => objects for ['barney'] - * - * // The `_.matches` iteratee shorthand. - * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); - * // => objects for ['barney', 'fred'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropRightWhile(users, ['active', false]); - * // => objects for ['barney'] - * - * // The `_.property` iteratee shorthand. - * _.dropRightWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ -function dropRightWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, baseIteratee(predicate, 3), true, true) - : []; -} - -module.exports = dropRightWhile; diff --git a/packages/frontend-core/node_modules/lodash/dropWhile.js b/packages/frontend-core/node_modules/lodash/dropWhile.js deleted file mode 100644 index 903ef568c9..0000000000 --- a/packages/frontend-core/node_modules/lodash/dropWhile.js +++ /dev/null @@ -1,45 +0,0 @@ -var baseIteratee = require('./_baseIteratee'), - baseWhile = require('./_baseWhile'); - -/** - * Creates a slice of `array` excluding elements dropped from the beginning. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.dropWhile(users, function(o) { return !o.active; }); - * // => objects for ['pebbles'] - * - * // The `_.matches` iteratee shorthand. - * _.dropWhile(users, { 'user': 'barney', 'active': false }); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropWhile(users, ['active', false]); - * // => objects for ['pebbles'] - * - * // The `_.property` iteratee shorthand. - * _.dropWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ -function dropWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, baseIteratee(predicate, 3), true) - : []; -} - -module.exports = dropWhile; diff --git a/packages/frontend-core/node_modules/lodash/each.js b/packages/frontend-core/node_modules/lodash/each.js deleted file mode 100644 index 8800f42046..0000000000 --- a/packages/frontend-core/node_modules/lodash/each.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./forEach'); diff --git a/packages/frontend-core/node_modules/lodash/eachRight.js b/packages/frontend-core/node_modules/lodash/eachRight.js deleted file mode 100644 index 3252b2aba3..0000000000 --- a/packages/frontend-core/node_modules/lodash/eachRight.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./forEachRight'); diff --git a/packages/frontend-core/node_modules/lodash/endsWith.js b/packages/frontend-core/node_modules/lodash/endsWith.js deleted file mode 100644 index 76fc866e3e..0000000000 --- a/packages/frontend-core/node_modules/lodash/endsWith.js +++ /dev/null @@ -1,43 +0,0 @@ -var baseClamp = require('./_baseClamp'), - baseToString = require('./_baseToString'), - toInteger = require('./toInteger'), - toString = require('./toString'); - -/** - * Checks if `string` ends with the given target string. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to inspect. - * @param {string} [target] The string to search for. - * @param {number} [position=string.length] The position to search up to. - * @returns {boolean} Returns `true` if `string` ends with `target`, - * else `false`. - * @example - * - * _.endsWith('abc', 'c'); - * // => true - * - * _.endsWith('abc', 'b'); - * // => false - * - * _.endsWith('abc', 'b', 2); - * // => true - */ -function endsWith(string, target, position) { - string = toString(string); - target = baseToString(target); - - var length = string.length; - position = position === undefined - ? length - : baseClamp(toInteger(position), 0, length); - - var end = position; - position -= target.length; - return position >= 0 && string.slice(position, end) == target; -} - -module.exports = endsWith; diff --git a/packages/frontend-core/node_modules/lodash/entries.js b/packages/frontend-core/node_modules/lodash/entries.js deleted file mode 100644 index 7a88df2044..0000000000 --- a/packages/frontend-core/node_modules/lodash/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./toPairs'); diff --git a/packages/frontend-core/node_modules/lodash/entriesIn.js b/packages/frontend-core/node_modules/lodash/entriesIn.js deleted file mode 100644 index f6c6331c1d..0000000000 --- a/packages/frontend-core/node_modules/lodash/entriesIn.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./toPairsIn'); diff --git a/packages/frontend-core/node_modules/lodash/eq.js b/packages/frontend-core/node_modules/lodash/eq.js deleted file mode 100644 index a940688053..0000000000 --- a/packages/frontend-core/node_modules/lodash/eq.js +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ -function eq(value, other) { - return value === other || (value !== value && other !== other); -} - -module.exports = eq; diff --git a/packages/frontend-core/node_modules/lodash/escape.js b/packages/frontend-core/node_modules/lodash/escape.js deleted file mode 100644 index 9247e0029b..0000000000 --- a/packages/frontend-core/node_modules/lodash/escape.js +++ /dev/null @@ -1,43 +0,0 @@ -var escapeHtmlChar = require('./_escapeHtmlChar'), - toString = require('./toString'); - -/** Used to match HTML entities and HTML characters. */ -var reUnescapedHtml = /[&<>"']/g, - reHasUnescapedHtml = RegExp(reUnescapedHtml.source); - -/** - * Converts the characters "&", "<", ">", '"', and "'" in `string` to their - * corresponding HTML entities. - * - * **Note:** No other characters are escaped. To escape additional - * characters use a third-party library like [_he_](https://mths.be/he). - * - * Though the ">" character is escaped for symmetry, characters like - * ">" and "/" don't need escaping in HTML and have no special meaning - * unless they're part of a tag or unquoted attribute value. See - * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) - * (under "semi-related fun fact") for more details. - * - * When working with HTML you should always - * [quote attribute values](http://wonko.com/post/html-escaping) to reduce - * XSS vectors. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escape('fred, barney, & pebbles'); - * // => 'fred, barney, & pebbles' - */ -function escape(string) { - string = toString(string); - return (string && reHasUnescapedHtml.test(string)) - ? string.replace(reUnescapedHtml, escapeHtmlChar) - : string; -} - -module.exports = escape; diff --git a/packages/frontend-core/node_modules/lodash/escapeRegExp.js b/packages/frontend-core/node_modules/lodash/escapeRegExp.js deleted file mode 100644 index 0a58c69fc8..0000000000 --- a/packages/frontend-core/node_modules/lodash/escapeRegExp.js +++ /dev/null @@ -1,32 +0,0 @@ -var toString = require('./toString'); - -/** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ -var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, - reHasRegExpChar = RegExp(reRegExpChar.source); - -/** - * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", - * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escapeRegExp('[lodash](https://lodash.com/)'); - * // => '\[lodash\]\(https://lodash\.com/\)' - */ -function escapeRegExp(string) { - string = toString(string); - return (string && reHasRegExpChar.test(string)) - ? string.replace(reRegExpChar, '\\$&') - : string; -} - -module.exports = escapeRegExp; diff --git a/packages/frontend-core/node_modules/lodash/every.js b/packages/frontend-core/node_modules/lodash/every.js deleted file mode 100644 index 25080dac49..0000000000 --- a/packages/frontend-core/node_modules/lodash/every.js +++ /dev/null @@ -1,56 +0,0 @@ -var arrayEvery = require('./_arrayEvery'), - baseEvery = require('./_baseEvery'), - baseIteratee = require('./_baseIteratee'), - isArray = require('./isArray'), - isIterateeCall = require('./_isIterateeCall'); - -/** - * Checks if `predicate` returns truthy for **all** elements of `collection`. - * Iteration is stopped once `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * **Note:** This method returns `true` for - * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because - * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of - * elements of empty collections. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - * @example - * - * _.every([true, 1, null, 'yes'], Boolean); - * // => false - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.every(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.every(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.every(users, 'active'); - * // => false - */ -function every(collection, predicate, guard) { - var func = isArray(collection) ? arrayEvery : baseEvery; - if (guard && isIterateeCall(collection, predicate, guard)) { - predicate = undefined; - } - return func(collection, baseIteratee(predicate, 3)); -} - -module.exports = every; diff --git a/packages/frontend-core/node_modules/lodash/extend.js b/packages/frontend-core/node_modules/lodash/extend.js deleted file mode 100644 index e00166c206..0000000000 --- a/packages/frontend-core/node_modules/lodash/extend.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignIn'); diff --git a/packages/frontend-core/node_modules/lodash/extendWith.js b/packages/frontend-core/node_modules/lodash/extendWith.js deleted file mode 100644 index dbdcb3b4e4..0000000000 --- a/packages/frontend-core/node_modules/lodash/extendWith.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignInWith'); diff --git a/packages/frontend-core/node_modules/lodash/fill.js b/packages/frontend-core/node_modules/lodash/fill.js deleted file mode 100644 index ae13aa1c99..0000000000 --- a/packages/frontend-core/node_modules/lodash/fill.js +++ /dev/null @@ -1,45 +0,0 @@ -var baseFill = require('./_baseFill'), - isIterateeCall = require('./_isIterateeCall'); - -/** - * Fills elements of `array` with `value` from `start` up to, but not - * including, `end`. - * - * **Note:** This method mutates `array`. - * - * @static - * @memberOf _ - * @since 3.2.0 - * @category Array - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - * @example - * - * var array = [1, 2, 3]; - * - * _.fill(array, 'a'); - * console.log(array); - * // => ['a', 'a', 'a'] - * - * _.fill(Array(3), 2); - * // => [2, 2, 2] - * - * _.fill([4, 6, 8, 10], '*', 1, 3); - * // => [4, '*', '*', 10] - */ -function fill(array, value, start, end) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { - start = 0; - end = length; - } - return baseFill(array, value, start, end); -} - -module.exports = fill; diff --git a/packages/frontend-core/node_modules/lodash/filter.js b/packages/frontend-core/node_modules/lodash/filter.js deleted file mode 100644 index 89e0c8c481..0000000000 --- a/packages/frontend-core/node_modules/lodash/filter.js +++ /dev/null @@ -1,52 +0,0 @@ -var arrayFilter = require('./_arrayFilter'), - baseFilter = require('./_baseFilter'), - baseIteratee = require('./_baseIteratee'), - isArray = require('./isArray'); - -/** - * Iterates over elements of `collection`, returning an array of all elements - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * **Note:** Unlike `_.remove`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.reject - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * _.filter(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, { 'age': 36, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.filter(users, 'active'); - * // => objects for ['barney'] - * - * // Combining several predicates using `_.overEvery` or `_.overSome`. - * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); - * // => objects for ['fred', 'barney'] - */ -function filter(collection, predicate) { - var func = isArray(collection) ? arrayFilter : baseFilter; - return func(collection, baseIteratee(predicate, 3)); -} - -module.exports = filter; diff --git a/packages/frontend-core/node_modules/lodash/find.js b/packages/frontend-core/node_modules/lodash/find.js deleted file mode 100644 index de732ccb49..0000000000 --- a/packages/frontend-core/node_modules/lodash/find.js +++ /dev/null @@ -1,42 +0,0 @@ -var createFind = require('./_createFind'), - findIndex = require('./findIndex'); - -/** - * Iterates over elements of `collection`, returning the first element - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false }, - * { 'user': 'pebbles', 'age': 1, 'active': true } - * ]; - * - * _.find(users, function(o) { return o.age < 40; }); - * // => object for 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.find(users, { 'age': 1, 'active': true }); - * // => object for 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.find(users, ['active', false]); - * // => object for 'fred' - * - * // The `_.property` iteratee shorthand. - * _.find(users, 'active'); - * // => object for 'barney' - */ -var find = createFind(findIndex); - -module.exports = find; diff --git a/packages/frontend-core/node_modules/lodash/findIndex.js b/packages/frontend-core/node_modules/lodash/findIndex.js deleted file mode 100644 index 4689069f81..0000000000 --- a/packages/frontend-core/node_modules/lodash/findIndex.js +++ /dev/null @@ -1,55 +0,0 @@ -var baseFindIndex = require('./_baseFindIndex'), - baseIteratee = require('./_baseIteratee'), - toInteger = require('./toInteger'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * This method is like `_.find` except that it returns the index of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.findIndex(users, function(o) { return o.user == 'barney'; }); - * // => 0 - * - * // The `_.matches` iteratee shorthand. - * _.findIndex(users, { 'user': 'fred', 'active': false }); - * // => 1 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findIndex(users, ['active', false]); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.findIndex(users, 'active'); - * // => 2 - */ -function findIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseFindIndex(array, baseIteratee(predicate, 3), index); -} - -module.exports = findIndex; diff --git a/packages/frontend-core/node_modules/lodash/findKey.js b/packages/frontend-core/node_modules/lodash/findKey.js deleted file mode 100644 index cac0248a9d..0000000000 --- a/packages/frontend-core/node_modules/lodash/findKey.js +++ /dev/null @@ -1,44 +0,0 @@ -var baseFindKey = require('./_baseFindKey'), - baseForOwn = require('./_baseForOwn'), - baseIteratee = require('./_baseIteratee'); - -/** - * This method is like `_.find` except that it returns the key of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findKey(users, function(o) { return o.age < 40; }); - * // => 'barney' (iteration order is not guaranteed) - * - * // The `_.matches` iteratee shorthand. - * _.findKey(users, { 'age': 1, 'active': true }); - * // => 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findKey(users, 'active'); - * // => 'barney' - */ -function findKey(object, predicate) { - return baseFindKey(object, baseIteratee(predicate, 3), baseForOwn); -} - -module.exports = findKey; diff --git a/packages/frontend-core/node_modules/lodash/findLast.js b/packages/frontend-core/node_modules/lodash/findLast.js deleted file mode 100644 index 70b4271dc3..0000000000 --- a/packages/frontend-core/node_modules/lodash/findLast.js +++ /dev/null @@ -1,25 +0,0 @@ -var createFind = require('./_createFind'), - findLastIndex = require('./findLastIndex'); - -/** - * This method is like `_.find` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=collection.length-1] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * _.findLast([1, 2, 3, 4], function(n) { - * return n % 2 == 1; - * }); - * // => 3 - */ -var findLast = createFind(findLastIndex); - -module.exports = findLast; diff --git a/packages/frontend-core/node_modules/lodash/findLastIndex.js b/packages/frontend-core/node_modules/lodash/findLastIndex.js deleted file mode 100644 index 7da3431f6d..0000000000 --- a/packages/frontend-core/node_modules/lodash/findLastIndex.js +++ /dev/null @@ -1,59 +0,0 @@ -var baseFindIndex = require('./_baseFindIndex'), - baseIteratee = require('./_baseIteratee'), - toInteger = require('./toInteger'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max, - nativeMin = Math.min; - -/** - * This method is like `_.findIndex` except that it iterates over elements - * of `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); - * // => 2 - * - * // The `_.matches` iteratee shorthand. - * _.findLastIndex(users, { 'user': 'barney', 'active': true }); - * // => 0 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastIndex(users, ['active', false]); - * // => 2 - * - * // The `_.property` iteratee shorthand. - * _.findLastIndex(users, 'active'); - * // => 0 - */ -function findLastIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length - 1; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = fromIndex < 0 - ? nativeMax(length + index, 0) - : nativeMin(index, length - 1); - } - return baseFindIndex(array, baseIteratee(predicate, 3), index, true); -} - -module.exports = findLastIndex; diff --git a/packages/frontend-core/node_modules/lodash/findLastKey.js b/packages/frontend-core/node_modules/lodash/findLastKey.js deleted file mode 100644 index 66fb9fbcec..0000000000 --- a/packages/frontend-core/node_modules/lodash/findLastKey.js +++ /dev/null @@ -1,44 +0,0 @@ -var baseFindKey = require('./_baseFindKey'), - baseForOwnRight = require('./_baseForOwnRight'), - baseIteratee = require('./_baseIteratee'); - -/** - * This method is like `_.findKey` except that it iterates over elements of - * a collection in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findLastKey(users, function(o) { return o.age < 40; }); - * // => returns 'pebbles' assuming `_.findKey` returns 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.findLastKey(users, { 'age': 36, 'active': true }); - * // => 'barney' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findLastKey(users, 'active'); - * // => 'pebbles' - */ -function findLastKey(object, predicate) { - return baseFindKey(object, baseIteratee(predicate, 3), baseForOwnRight); -} - -module.exports = findLastKey; diff --git a/packages/frontend-core/node_modules/lodash/first.js b/packages/frontend-core/node_modules/lodash/first.js deleted file mode 100644 index 53f4ad13ee..0000000000 --- a/packages/frontend-core/node_modules/lodash/first.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./head'); diff --git a/packages/frontend-core/node_modules/lodash/flake.lock b/packages/frontend-core/node_modules/lodash/flake.lock deleted file mode 100644 index dd0325218d..0000000000 --- a/packages/frontend-core/node_modules/lodash/flake.lock +++ /dev/null @@ -1,40 +0,0 @@ -{ - "nodes": { - "nixpkgs": { - "locked": { - "lastModified": 1613582597, - "narHash": "sha256-6LvipIvFuhyorHpUqK3HjySC5Y6gshXHFBhU9EJ4DoM=", - "path": "/nix/store/srvplqq673sqd9vyfhyc5w1p88y1gfm4-source", - "rev": "6b1057b452c55bb3b463f0d7055bc4ec3fd1f381", - "type": "path" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "root": { - "inputs": { - "nixpkgs": "nixpkgs", - "utils": "utils" - } - }, - "utils": { - "locked": { - "lastModified": 1610051610, - "narHash": "sha256-U9rPz/usA1/Aohhk7Cmc2gBrEEKRzcW4nwPWMPwja4Y=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "3982c9903e93927c2164caa727cd3f6a0e6d14cc", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/packages/frontend-core/node_modules/lodash/flake.nix b/packages/frontend-core/node_modules/lodash/flake.nix deleted file mode 100644 index 15a451c6f2..0000000000 --- a/packages/frontend-core/node_modules/lodash/flake.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - inputs = { - utils.url = "github:numtide/flake-utils"; - }; - - outputs = { self, nixpkgs, utils }: - utils.lib.eachDefaultSystem (system: - let - pkgs = nixpkgs.legacyPackages."${system}"; - in rec { - devShell = pkgs.mkShell { - nativeBuildInputs = with pkgs; [ - yarn - nodejs-14_x - nodePackages.typescript-language-server - nodePackages.eslint - ]; - }; - }); -} diff --git a/packages/frontend-core/node_modules/lodash/flatMap.js b/packages/frontend-core/node_modules/lodash/flatMap.js deleted file mode 100644 index e6685068f5..0000000000 --- a/packages/frontend-core/node_modules/lodash/flatMap.js +++ /dev/null @@ -1,29 +0,0 @@ -var baseFlatten = require('./_baseFlatten'), - map = require('./map'); - -/** - * Creates a flattened array of values by running each element in `collection` - * thru `iteratee` and flattening the mapped results. The iteratee is invoked - * with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [n, n]; - * } - * - * _.flatMap([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ -function flatMap(collection, iteratee) { - return baseFlatten(map(collection, iteratee), 1); -} - -module.exports = flatMap; diff --git a/packages/frontend-core/node_modules/lodash/flatMapDeep.js b/packages/frontend-core/node_modules/lodash/flatMapDeep.js deleted file mode 100644 index 4653d60333..0000000000 --- a/packages/frontend-core/node_modules/lodash/flatMapDeep.js +++ /dev/null @@ -1,31 +0,0 @@ -var baseFlatten = require('./_baseFlatten'), - map = require('./map'); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDeep([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ -function flatMapDeep(collection, iteratee) { - return baseFlatten(map(collection, iteratee), INFINITY); -} - -module.exports = flatMapDeep; diff --git a/packages/frontend-core/node_modules/lodash/flatMapDepth.js b/packages/frontend-core/node_modules/lodash/flatMapDepth.js deleted file mode 100644 index 6d72005c97..0000000000 --- a/packages/frontend-core/node_modules/lodash/flatMapDepth.js +++ /dev/null @@ -1,31 +0,0 @@ -var baseFlatten = require('./_baseFlatten'), - map = require('./map'), - toInteger = require('./toInteger'); - -/** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDepth([1, 2], duplicate, 2); - * // => [[1, 1], [2, 2]] - */ -function flatMapDepth(collection, iteratee, depth) { - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(map(collection, iteratee), depth); -} - -module.exports = flatMapDepth; diff --git a/packages/frontend-core/node_modules/lodash/flatten.js b/packages/frontend-core/node_modules/lodash/flatten.js deleted file mode 100644 index 3f09f7f770..0000000000 --- a/packages/frontend-core/node_modules/lodash/flatten.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseFlatten = require('./_baseFlatten'); - -/** - * Flattens `array` a single level deep. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flatten([1, [2, [3, [4]], 5]]); - * // => [1, 2, [3, [4]], 5] - */ -function flatten(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, 1) : []; -} - -module.exports = flatten; diff --git a/packages/frontend-core/node_modules/lodash/flattenDeep.js b/packages/frontend-core/node_modules/lodash/flattenDeep.js deleted file mode 100644 index 8ad585cf49..0000000000 --- a/packages/frontend-core/node_modules/lodash/flattenDeep.js +++ /dev/null @@ -1,25 +0,0 @@ -var baseFlatten = require('./_baseFlatten'); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** - * Recursively flattens `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flattenDeep([1, [2, [3, [4]], 5]]); - * // => [1, 2, 3, 4, 5] - */ -function flattenDeep(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, INFINITY) : []; -} - -module.exports = flattenDeep; diff --git a/packages/frontend-core/node_modules/lodash/flattenDepth.js b/packages/frontend-core/node_modules/lodash/flattenDepth.js deleted file mode 100644 index 441fdcc224..0000000000 --- a/packages/frontend-core/node_modules/lodash/flattenDepth.js +++ /dev/null @@ -1,33 +0,0 @@ -var baseFlatten = require('./_baseFlatten'), - toInteger = require('./toInteger'); - -/** - * Recursively flatten `array` up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Array - * @param {Array} array The array to flatten. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * var array = [1, [2, [3, [4]], 5]]; - * - * _.flattenDepth(array, 1); - * // => [1, 2, [3, [4]], 5] - * - * _.flattenDepth(array, 2); - * // => [1, 2, 3, [4], 5] - */ -function flattenDepth(array, depth) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(array, depth); -} - -module.exports = flattenDepth; diff --git a/packages/frontend-core/node_modules/lodash/flip.js b/packages/frontend-core/node_modules/lodash/flip.js deleted file mode 100644 index c28dd7896f..0000000000 --- a/packages/frontend-core/node_modules/lodash/flip.js +++ /dev/null @@ -1,28 +0,0 @@ -var createWrap = require('./_createWrap'); - -/** Used to compose bitmasks for function metadata. */ -var WRAP_FLIP_FLAG = 512; - -/** - * Creates a function that invokes `func` with arguments reversed. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to flip arguments for. - * @returns {Function} Returns the new flipped function. - * @example - * - * var flipped = _.flip(function() { - * return _.toArray(arguments); - * }); - * - * flipped('a', 'b', 'c', 'd'); - * // => ['d', 'c', 'b', 'a'] - */ -function flip(func) { - return createWrap(func, WRAP_FLIP_FLAG); -} - -module.exports = flip; diff --git a/packages/frontend-core/node_modules/lodash/floor.js b/packages/frontend-core/node_modules/lodash/floor.js deleted file mode 100644 index ab6dfa28a4..0000000000 --- a/packages/frontend-core/node_modules/lodash/floor.js +++ /dev/null @@ -1,26 +0,0 @@ -var createRound = require('./_createRound'); - -/** - * Computes `number` rounded down to `precision`. - * - * @static - * @memberOf _ - * @since 3.10.0 - * @category Math - * @param {number} number The number to round down. - * @param {number} [precision=0] The precision to round down to. - * @returns {number} Returns the rounded down number. - * @example - * - * _.floor(4.006); - * // => 4 - * - * _.floor(0.046, 2); - * // => 0.04 - * - * _.floor(4060, -2); - * // => 4000 - */ -var floor = createRound('floor'); - -module.exports = floor; diff --git a/packages/frontend-core/node_modules/lodash/flow.js b/packages/frontend-core/node_modules/lodash/flow.js deleted file mode 100644 index 74b6b62d40..0000000000 --- a/packages/frontend-core/node_modules/lodash/flow.js +++ /dev/null @@ -1,27 +0,0 @@ -var createFlow = require('./_createFlow'); - -/** - * Creates a function that returns the result of invoking the given functions - * with the `this` binding of the created function, where each successive - * invocation is supplied the return value of the previous. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Util - * @param {...(Function|Function[])} [funcs] The functions to invoke. - * @returns {Function} Returns the new composite function. - * @see _.flowRight - * @example - * - * function square(n) { - * return n * n; - * } - * - * var addSquare = _.flow([_.add, square]); - * addSquare(1, 2); - * // => 9 - */ -var flow = createFlow(); - -module.exports = flow; diff --git a/packages/frontend-core/node_modules/lodash/flowRight.js b/packages/frontend-core/node_modules/lodash/flowRight.js deleted file mode 100644 index 1146141059..0000000000 --- a/packages/frontend-core/node_modules/lodash/flowRight.js +++ /dev/null @@ -1,26 +0,0 @@ -var createFlow = require('./_createFlow'); - -/** - * This method is like `_.flow` except that it creates a function that - * invokes the given functions from right to left. - * - * @static - * @since 3.0.0 - * @memberOf _ - * @category Util - * @param {...(Function|Function[])} [funcs] The functions to invoke. - * @returns {Function} Returns the new composite function. - * @see _.flow - * @example - * - * function square(n) { - * return n * n; - * } - * - * var addSquare = _.flowRight([square, _.add]); - * addSquare(1, 2); - * // => 9 - */ -var flowRight = createFlow(true); - -module.exports = flowRight; diff --git a/packages/frontend-core/node_modules/lodash/forEach.js b/packages/frontend-core/node_modules/lodash/forEach.js deleted file mode 100644 index c64eaa73f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/forEach.js +++ /dev/null @@ -1,41 +0,0 @@ -var arrayEach = require('./_arrayEach'), - baseEach = require('./_baseEach'), - castFunction = require('./_castFunction'), - isArray = require('./isArray'); - -/** - * Iterates over elements of `collection` and invokes `iteratee` for each element. - * The iteratee is invoked with three arguments: (value, index|key, collection). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * **Note:** As with other "Collections" methods, objects with a "length" - * property are iterated like arrays. To avoid this behavior use `_.forIn` - * or `_.forOwn` for object iteration. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias each - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEachRight - * @example - * - * _.forEach([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `1` then `2`. - * - * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ -function forEach(collection, iteratee) { - var func = isArray(collection) ? arrayEach : baseEach; - return func(collection, castFunction(iteratee)); -} - -module.exports = forEach; diff --git a/packages/frontend-core/node_modules/lodash/forEachRight.js b/packages/frontend-core/node_modules/lodash/forEachRight.js deleted file mode 100644 index 7390ebaf85..0000000000 --- a/packages/frontend-core/node_modules/lodash/forEachRight.js +++ /dev/null @@ -1,31 +0,0 @@ -var arrayEachRight = require('./_arrayEachRight'), - baseEachRight = require('./_baseEachRight'), - castFunction = require('./_castFunction'), - isArray = require('./isArray'); - -/** - * This method is like `_.forEach` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @alias eachRight - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEach - * @example - * - * _.forEachRight([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `2` then `1`. - */ -function forEachRight(collection, iteratee) { - var func = isArray(collection) ? arrayEachRight : baseEachRight; - return func(collection, castFunction(iteratee)); -} - -module.exports = forEachRight; diff --git a/packages/frontend-core/node_modules/lodash/forIn.js b/packages/frontend-core/node_modules/lodash/forIn.js deleted file mode 100644 index 583a59638f..0000000000 --- a/packages/frontend-core/node_modules/lodash/forIn.js +++ /dev/null @@ -1,39 +0,0 @@ -var baseFor = require('./_baseFor'), - castFunction = require('./_castFunction'), - keysIn = require('./keysIn'); - -/** - * Iterates over own and inherited enumerable string keyed properties of an - * object and invokes `iteratee` for each property. The iteratee is invoked - * with three arguments: (value, key, object). Iteratee functions may exit - * iteration early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forInRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forIn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). - */ -function forIn(object, iteratee) { - return object == null - ? object - : baseFor(object, castFunction(iteratee), keysIn); -} - -module.exports = forIn; diff --git a/packages/frontend-core/node_modules/lodash/forInRight.js b/packages/frontend-core/node_modules/lodash/forInRight.js deleted file mode 100644 index 4aedf58af5..0000000000 --- a/packages/frontend-core/node_modules/lodash/forInRight.js +++ /dev/null @@ -1,37 +0,0 @@ -var baseForRight = require('./_baseForRight'), - castFunction = require('./_castFunction'), - keysIn = require('./keysIn'); - -/** - * This method is like `_.forIn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forIn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forInRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. - */ -function forInRight(object, iteratee) { - return object == null - ? object - : baseForRight(object, castFunction(iteratee), keysIn); -} - -module.exports = forInRight; diff --git a/packages/frontend-core/node_modules/lodash/forOwn.js b/packages/frontend-core/node_modules/lodash/forOwn.js deleted file mode 100644 index 94eed8402a..0000000000 --- a/packages/frontend-core/node_modules/lodash/forOwn.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseForOwn = require('./_baseForOwn'), - castFunction = require('./_castFunction'); - -/** - * Iterates over own enumerable string keyed properties of an object and - * invokes `iteratee` for each property. The iteratee is invoked with three - * arguments: (value, key, object). Iteratee functions may exit iteration - * early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwnRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ -function forOwn(object, iteratee) { - return object && baseForOwn(object, castFunction(iteratee)); -} - -module.exports = forOwn; diff --git a/packages/frontend-core/node_modules/lodash/forOwnRight.js b/packages/frontend-core/node_modules/lodash/forOwnRight.js deleted file mode 100644 index 86f338f032..0000000000 --- a/packages/frontend-core/node_modules/lodash/forOwnRight.js +++ /dev/null @@ -1,34 +0,0 @@ -var baseForOwnRight = require('./_baseForOwnRight'), - castFunction = require('./_castFunction'); - -/** - * This method is like `_.forOwn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwnRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. - */ -function forOwnRight(object, iteratee) { - return object && baseForOwnRight(object, castFunction(iteratee)); -} - -module.exports = forOwnRight; diff --git a/packages/frontend-core/node_modules/lodash/fp.js b/packages/frontend-core/node_modules/lodash/fp.js deleted file mode 100644 index e372dbbdf6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp.js +++ /dev/null @@ -1,2 +0,0 @@ -var _ = require('./lodash.min').runInContext(); -module.exports = require('./fp/_baseConvert')(_, _); diff --git a/packages/frontend-core/node_modules/lodash/fp/F.js b/packages/frontend-core/node_modules/lodash/fp/F.js deleted file mode 100644 index a05a63ad9c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/F.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./stubFalse'); diff --git a/packages/frontend-core/node_modules/lodash/fp/T.js b/packages/frontend-core/node_modules/lodash/fp/T.js deleted file mode 100644 index e2ba8ea569..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/T.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./stubTrue'); diff --git a/packages/frontend-core/node_modules/lodash/fp/__.js b/packages/frontend-core/node_modules/lodash/fp/__.js deleted file mode 100644 index 4af98deb4e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/__.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./placeholder'); diff --git a/packages/frontend-core/node_modules/lodash/fp/_baseConvert.js b/packages/frontend-core/node_modules/lodash/fp/_baseConvert.js deleted file mode 100644 index 9baf8e1902..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/_baseConvert.js +++ /dev/null @@ -1,569 +0,0 @@ -var mapping = require('./_mapping'), - fallbackHolder = require('./placeholder'); - -/** Built-in value reference. */ -var push = Array.prototype.push; - -/** - * Creates a function, with an arity of `n`, that invokes `func` with the - * arguments it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} n The arity of the new function. - * @returns {Function} Returns the new function. - */ -function baseArity(func, n) { - return n == 2 - ? function(a, b) { return func.apply(undefined, arguments); } - : function(a) { return func.apply(undefined, arguments); }; -} - -/** - * Creates a function that invokes `func`, with up to `n` arguments, ignoring - * any additional arguments. - * - * @private - * @param {Function} func The function to cap arguments for. - * @param {number} n The arity cap. - * @returns {Function} Returns the new function. - */ -function baseAry(func, n) { - return n == 2 - ? function(a, b) { return func(a, b); } - : function(a) { return func(a); }; -} - -/** - * Creates a clone of `array`. - * - * @private - * @param {Array} array The array to clone. - * @returns {Array} Returns the cloned array. - */ -function cloneArray(array) { - var length = array ? array.length : 0, - result = Array(length); - - while (length--) { - result[length] = array[length]; - } - return result; -} - -/** - * Creates a function that clones a given object using the assignment `func`. - * - * @private - * @param {Function} func The assignment function. - * @returns {Function} Returns the new cloner function. - */ -function createCloner(func) { - return function(object) { - return func({}, object); - }; -} - -/** - * A specialized version of `_.spread` which flattens the spread array into - * the arguments of the invoked `func`. - * - * @private - * @param {Function} func The function to spread arguments over. - * @param {number} start The start position of the spread. - * @returns {Function} Returns the new function. - */ -function flatSpread(func, start) { - return function() { - var length = arguments.length, - lastIndex = length - 1, - args = Array(length); - - while (length--) { - args[length] = arguments[length]; - } - var array = args[start], - otherArgs = args.slice(0, start); - - if (array) { - push.apply(otherArgs, array); - } - if (start != lastIndex) { - push.apply(otherArgs, args.slice(start + 1)); - } - return func.apply(this, otherArgs); - }; -} - -/** - * Creates a function that wraps `func` and uses `cloner` to clone the first - * argument it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} cloner The function to clone arguments. - * @returns {Function} Returns the new immutable function. - */ -function wrapImmutable(func, cloner) { - return function() { - var length = arguments.length; - if (!length) { - return; - } - var args = Array(length); - while (length--) { - args[length] = arguments[length]; - } - var result = args[0] = cloner.apply(undefined, args); - func.apply(undefined, args); - return result; - }; -} - -/** - * The base implementation of `convert` which accepts a `util` object of methods - * required to perform conversions. - * - * @param {Object} util The util object. - * @param {string} name The name of the function to convert. - * @param {Function} func The function to convert. - * @param {Object} [options] The options object. - * @param {boolean} [options.cap=true] Specify capping iteratee arguments. - * @param {boolean} [options.curry=true] Specify currying. - * @param {boolean} [options.fixed=true] Specify fixed arity. - * @param {boolean} [options.immutable=true] Specify immutable operations. - * @param {boolean} [options.rearg=true] Specify rearranging arguments. - * @returns {Function|Object} Returns the converted function or object. - */ -function baseConvert(util, name, func, options) { - var isLib = typeof name == 'function', - isObj = name === Object(name); - - if (isObj) { - options = func; - func = name; - name = undefined; - } - if (func == null) { - throw new TypeError; - } - options || (options = {}); - - var config = { - 'cap': 'cap' in options ? options.cap : true, - 'curry': 'curry' in options ? options.curry : true, - 'fixed': 'fixed' in options ? options.fixed : true, - 'immutable': 'immutable' in options ? options.immutable : true, - 'rearg': 'rearg' in options ? options.rearg : true - }; - - var defaultHolder = isLib ? func : fallbackHolder, - forceCurry = ('curry' in options) && options.curry, - forceFixed = ('fixed' in options) && options.fixed, - forceRearg = ('rearg' in options) && options.rearg, - pristine = isLib ? func.runInContext() : undefined; - - var helpers = isLib ? func : { - 'ary': util.ary, - 'assign': util.assign, - 'clone': util.clone, - 'curry': util.curry, - 'forEach': util.forEach, - 'isArray': util.isArray, - 'isError': util.isError, - 'isFunction': util.isFunction, - 'isWeakMap': util.isWeakMap, - 'iteratee': util.iteratee, - 'keys': util.keys, - 'rearg': util.rearg, - 'toInteger': util.toInteger, - 'toPath': util.toPath - }; - - var ary = helpers.ary, - assign = helpers.assign, - clone = helpers.clone, - curry = helpers.curry, - each = helpers.forEach, - isArray = helpers.isArray, - isError = helpers.isError, - isFunction = helpers.isFunction, - isWeakMap = helpers.isWeakMap, - keys = helpers.keys, - rearg = helpers.rearg, - toInteger = helpers.toInteger, - toPath = helpers.toPath; - - var aryMethodKeys = keys(mapping.aryMethod); - - var wrappers = { - 'castArray': function(castArray) { - return function() { - var value = arguments[0]; - return isArray(value) - ? castArray(cloneArray(value)) - : castArray.apply(undefined, arguments); - }; - }, - 'iteratee': function(iteratee) { - return function() { - var func = arguments[0], - arity = arguments[1], - result = iteratee(func, arity), - length = result.length; - - if (config.cap && typeof arity == 'number') { - arity = arity > 2 ? (arity - 2) : 1; - return (length && length <= arity) ? result : baseAry(result, arity); - } - return result; - }; - }, - 'mixin': function(mixin) { - return function(source) { - var func = this; - if (!isFunction(func)) { - return mixin(func, Object(source)); - } - var pairs = []; - each(keys(source), function(key) { - if (isFunction(source[key])) { - pairs.push([key, func.prototype[key]]); - } - }); - - mixin(func, Object(source)); - - each(pairs, function(pair) { - var value = pair[1]; - if (isFunction(value)) { - func.prototype[pair[0]] = value; - } else { - delete func.prototype[pair[0]]; - } - }); - return func; - }; - }, - 'nthArg': function(nthArg) { - return function(n) { - var arity = n < 0 ? 1 : (toInteger(n) + 1); - return curry(nthArg(n), arity); - }; - }, - 'rearg': function(rearg) { - return function(func, indexes) { - var arity = indexes ? indexes.length : 0; - return curry(rearg(func, indexes), arity); - }; - }, - 'runInContext': function(runInContext) { - return function(context) { - return baseConvert(util, runInContext(context), options); - }; - } - }; - - /*--------------------------------------------------------------------------*/ - - /** - * Casts `func` to a function with an arity capped iteratee if needed. - * - * @private - * @param {string} name The name of the function to inspect. - * @param {Function} func The function to inspect. - * @returns {Function} Returns the cast function. - */ - function castCap(name, func) { - if (config.cap) { - var indexes = mapping.iterateeRearg[name]; - if (indexes) { - return iterateeRearg(func, indexes); - } - var n = !isLib && mapping.iterateeAry[name]; - if (n) { - return iterateeAry(func, n); - } - } - return func; - } - - /** - * Casts `func` to a curried function if needed. - * - * @private - * @param {string} name The name of the function to inspect. - * @param {Function} func The function to inspect. - * @param {number} n The arity of `func`. - * @returns {Function} Returns the cast function. - */ - function castCurry(name, func, n) { - return (forceCurry || (config.curry && n > 1)) - ? curry(func, n) - : func; - } - - /** - * Casts `func` to a fixed arity function if needed. - * - * @private - * @param {string} name The name of the function to inspect. - * @param {Function} func The function to inspect. - * @param {number} n The arity cap. - * @returns {Function} Returns the cast function. - */ - function castFixed(name, func, n) { - if (config.fixed && (forceFixed || !mapping.skipFixed[name])) { - var data = mapping.methodSpread[name], - start = data && data.start; - - return start === undefined ? ary(func, n) : flatSpread(func, start); - } - return func; - } - - /** - * Casts `func` to an rearged function if needed. - * - * @private - * @param {string} name The name of the function to inspect. - * @param {Function} func The function to inspect. - * @param {number} n The arity of `func`. - * @returns {Function} Returns the cast function. - */ - function castRearg(name, func, n) { - return (config.rearg && n > 1 && (forceRearg || !mapping.skipRearg[name])) - ? rearg(func, mapping.methodRearg[name] || mapping.aryRearg[n]) - : func; - } - - /** - * Creates a clone of `object` by `path`. - * - * @private - * @param {Object} object The object to clone. - * @param {Array|string} path The path to clone by. - * @returns {Object} Returns the cloned object. - */ - function cloneByPath(object, path) { - path = toPath(path); - - var index = -1, - length = path.length, - lastIndex = length - 1, - result = clone(Object(object)), - nested = result; - - while (nested != null && ++index < length) { - var key = path[index], - value = nested[key]; - - if (value != null && - !(isFunction(value) || isError(value) || isWeakMap(value))) { - nested[key] = clone(index == lastIndex ? value : Object(value)); - } - nested = nested[key]; - } - return result; - } - - /** - * Converts `lodash` to an immutable auto-curried iteratee-first data-last - * version with conversion `options` applied. - * - * @param {Object} [options] The options object. See `baseConvert` for more details. - * @returns {Function} Returns the converted `lodash`. - */ - function convertLib(options) { - return _.runInContext.convert(options)(undefined); - } - - /** - * Create a converter function for `func` of `name`. - * - * @param {string} name The name of the function to convert. - * @param {Function} func The function to convert. - * @returns {Function} Returns the new converter function. - */ - function createConverter(name, func) { - var realName = mapping.aliasToReal[name] || name, - methodName = mapping.remap[realName] || realName, - oldOptions = options; - - return function(options) { - var newUtil = isLib ? pristine : helpers, - newFunc = isLib ? pristine[methodName] : func, - newOptions = assign(assign({}, oldOptions), options); - - return baseConvert(newUtil, realName, newFunc, newOptions); - }; - } - - /** - * Creates a function that wraps `func` to invoke its iteratee, with up to `n` - * arguments, ignoring any additional arguments. - * - * @private - * @param {Function} func The function to cap iteratee arguments for. - * @param {number} n The arity cap. - * @returns {Function} Returns the new function. - */ - function iterateeAry(func, n) { - return overArg(func, function(func) { - return typeof func == 'function' ? baseAry(func, n) : func; - }); - } - - /** - * Creates a function that wraps `func` to invoke its iteratee with arguments - * arranged according to the specified `indexes` where the argument value at - * the first index is provided as the first argument, the argument value at - * the second index is provided as the second argument, and so on. - * - * @private - * @param {Function} func The function to rearrange iteratee arguments for. - * @param {number[]} indexes The arranged argument indexes. - * @returns {Function} Returns the new function. - */ - function iterateeRearg(func, indexes) { - return overArg(func, function(func) { - var n = indexes.length; - return baseArity(rearg(baseAry(func, n), indexes), n); - }); - } - - /** - * Creates a function that invokes `func` with its first argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ - function overArg(func, transform) { - return function() { - var length = arguments.length; - if (!length) { - return func(); - } - var args = Array(length); - while (length--) { - args[length] = arguments[length]; - } - var index = config.rearg ? 0 : (length - 1); - args[index] = transform(args[index]); - return func.apply(undefined, args); - }; - } - - /** - * Creates a function that wraps `func` and applys the conversions - * rules by `name`. - * - * @private - * @param {string} name The name of the function to wrap. - * @param {Function} func The function to wrap. - * @returns {Function} Returns the converted function. - */ - function wrap(name, func, placeholder) { - var result, - realName = mapping.aliasToReal[name] || name, - wrapped = func, - wrapper = wrappers[realName]; - - if (wrapper) { - wrapped = wrapper(func); - } - else if (config.immutable) { - if (mapping.mutate.array[realName]) { - wrapped = wrapImmutable(func, cloneArray); - } - else if (mapping.mutate.object[realName]) { - wrapped = wrapImmutable(func, createCloner(func)); - } - else if (mapping.mutate.set[realName]) { - wrapped = wrapImmutable(func, cloneByPath); - } - } - each(aryMethodKeys, function(aryKey) { - each(mapping.aryMethod[aryKey], function(otherName) { - if (realName == otherName) { - var data = mapping.methodSpread[realName], - afterRearg = data && data.afterRearg; - - result = afterRearg - ? castFixed(realName, castRearg(realName, wrapped, aryKey), aryKey) - : castRearg(realName, castFixed(realName, wrapped, aryKey), aryKey); - - result = castCap(realName, result); - result = castCurry(realName, result, aryKey); - return false; - } - }); - return !result; - }); - - result || (result = wrapped); - if (result == func) { - result = forceCurry ? curry(result, 1) : function() { - return func.apply(this, arguments); - }; - } - result.convert = createConverter(realName, func); - result.placeholder = func.placeholder = placeholder; - - return result; - } - - /*--------------------------------------------------------------------------*/ - - if (!isObj) { - return wrap(name, func, defaultHolder); - } - var _ = func; - - // Convert methods by ary cap. - var pairs = []; - each(aryMethodKeys, function(aryKey) { - each(mapping.aryMethod[aryKey], function(key) { - var func = _[mapping.remap[key] || key]; - if (func) { - pairs.push([key, wrap(key, func, _)]); - } - }); - }); - - // Convert remaining methods. - each(keys(_), function(key) { - var func = _[key]; - if (typeof func == 'function') { - var length = pairs.length; - while (length--) { - if (pairs[length][0] == key) { - return; - } - } - func.convert = createConverter(key, func); - pairs.push([key, func]); - } - }); - - // Assign to `_` leaving `_.prototype` unchanged to allow chaining. - each(pairs, function(pair) { - _[pair[0]] = pair[1]; - }); - - _.convert = convertLib; - _.placeholder = _; - - // Assign aliases. - each(keys(_), function(key) { - each(mapping.realToAlias[key] || [], function(alias) { - _[alias] = _[key]; - }); - }); - - return _; -} - -module.exports = baseConvert; diff --git a/packages/frontend-core/node_modules/lodash/fp/_convertBrowser.js b/packages/frontend-core/node_modules/lodash/fp/_convertBrowser.js deleted file mode 100644 index bde030dc08..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/_convertBrowser.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseConvert = require('./_baseConvert'); - -/** - * Converts `lodash` to an immutable auto-curried iteratee-first data-last - * version with conversion `options` applied. - * - * @param {Function} lodash The lodash function to convert. - * @param {Object} [options] The options object. See `baseConvert` for more details. - * @returns {Function} Returns the converted `lodash`. - */ -function browserConvert(lodash, options) { - return baseConvert(lodash, lodash, options); -} - -if (typeof _ == 'function' && typeof _.runInContext == 'function') { - _ = browserConvert(_.runInContext()); -} -module.exports = browserConvert; diff --git a/packages/frontend-core/node_modules/lodash/fp/_falseOptions.js b/packages/frontend-core/node_modules/lodash/fp/_falseOptions.js deleted file mode 100644 index 773235e343..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/_falseOptions.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - 'cap': false, - 'curry': false, - 'fixed': false, - 'immutable': false, - 'rearg': false -}; diff --git a/packages/frontend-core/node_modules/lodash/fp/_mapping.js b/packages/frontend-core/node_modules/lodash/fp/_mapping.js deleted file mode 100644 index a642ec0584..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/_mapping.js +++ /dev/null @@ -1,358 +0,0 @@ -/** Used to map aliases to their real names. */ -exports.aliasToReal = { - - // Lodash aliases. - 'each': 'forEach', - 'eachRight': 'forEachRight', - 'entries': 'toPairs', - 'entriesIn': 'toPairsIn', - 'extend': 'assignIn', - 'extendAll': 'assignInAll', - 'extendAllWith': 'assignInAllWith', - 'extendWith': 'assignInWith', - 'first': 'head', - - // Methods that are curried variants of others. - 'conforms': 'conformsTo', - 'matches': 'isMatch', - 'property': 'get', - - // Ramda aliases. - '__': 'placeholder', - 'F': 'stubFalse', - 'T': 'stubTrue', - 'all': 'every', - 'allPass': 'overEvery', - 'always': 'constant', - 'any': 'some', - 'anyPass': 'overSome', - 'apply': 'spread', - 'assoc': 'set', - 'assocPath': 'set', - 'complement': 'negate', - 'compose': 'flowRight', - 'contains': 'includes', - 'dissoc': 'unset', - 'dissocPath': 'unset', - 'dropLast': 'dropRight', - 'dropLastWhile': 'dropRightWhile', - 'equals': 'isEqual', - 'identical': 'eq', - 'indexBy': 'keyBy', - 'init': 'initial', - 'invertObj': 'invert', - 'juxt': 'over', - 'omitAll': 'omit', - 'nAry': 'ary', - 'path': 'get', - 'pathEq': 'matchesProperty', - 'pathOr': 'getOr', - 'paths': 'at', - 'pickAll': 'pick', - 'pipe': 'flow', - 'pluck': 'map', - 'prop': 'get', - 'propEq': 'matchesProperty', - 'propOr': 'getOr', - 'props': 'at', - 'symmetricDifference': 'xor', - 'symmetricDifferenceBy': 'xorBy', - 'symmetricDifferenceWith': 'xorWith', - 'takeLast': 'takeRight', - 'takeLastWhile': 'takeRightWhile', - 'unapply': 'rest', - 'unnest': 'flatten', - 'useWith': 'overArgs', - 'where': 'conformsTo', - 'whereEq': 'isMatch', - 'zipObj': 'zipObject' -}; - -/** Used to map ary to method names. */ -exports.aryMethod = { - '1': [ - 'assignAll', 'assignInAll', 'attempt', 'castArray', 'ceil', 'create', - 'curry', 'curryRight', 'defaultsAll', 'defaultsDeepAll', 'floor', 'flow', - 'flowRight', 'fromPairs', 'invert', 'iteratee', 'memoize', 'method', 'mergeAll', - 'methodOf', 'mixin', 'nthArg', 'over', 'overEvery', 'overSome','rest', 'reverse', - 'round', 'runInContext', 'spread', 'template', 'trim', 'trimEnd', 'trimStart', - 'uniqueId', 'words', 'zipAll' - ], - '2': [ - 'add', 'after', 'ary', 'assign', 'assignAllWith', 'assignIn', 'assignInAllWith', - 'at', 'before', 'bind', 'bindAll', 'bindKey', 'chunk', 'cloneDeepWith', - 'cloneWith', 'concat', 'conformsTo', 'countBy', 'curryN', 'curryRightN', - 'debounce', 'defaults', 'defaultsDeep', 'defaultTo', 'delay', 'difference', - 'divide', 'drop', 'dropRight', 'dropRightWhile', 'dropWhile', 'endsWith', 'eq', - 'every', 'filter', 'find', 'findIndex', 'findKey', 'findLast', 'findLastIndex', - 'findLastKey', 'flatMap', 'flatMapDeep', 'flattenDepth', 'forEach', - 'forEachRight', 'forIn', 'forInRight', 'forOwn', 'forOwnRight', 'get', - 'groupBy', 'gt', 'gte', 'has', 'hasIn', 'includes', 'indexOf', 'intersection', - 'invertBy', 'invoke', 'invokeMap', 'isEqual', 'isMatch', 'join', 'keyBy', - 'lastIndexOf', 'lt', 'lte', 'map', 'mapKeys', 'mapValues', 'matchesProperty', - 'maxBy', 'meanBy', 'merge', 'mergeAllWith', 'minBy', 'multiply', 'nth', 'omit', - 'omitBy', 'overArgs', 'pad', 'padEnd', 'padStart', 'parseInt', 'partial', - 'partialRight', 'partition', 'pick', 'pickBy', 'propertyOf', 'pull', 'pullAll', - 'pullAt', 'random', 'range', 'rangeRight', 'rearg', 'reject', 'remove', - 'repeat', 'restFrom', 'result', 'sampleSize', 'some', 'sortBy', 'sortedIndex', - 'sortedIndexOf', 'sortedLastIndex', 'sortedLastIndexOf', 'sortedUniqBy', - 'split', 'spreadFrom', 'startsWith', 'subtract', 'sumBy', 'take', 'takeRight', - 'takeRightWhile', 'takeWhile', 'tap', 'throttle', 'thru', 'times', 'trimChars', - 'trimCharsEnd', 'trimCharsStart', 'truncate', 'union', 'uniqBy', 'uniqWith', - 'unset', 'unzipWith', 'without', 'wrap', 'xor', 'zip', 'zipObject', - 'zipObjectDeep' - ], - '3': [ - 'assignInWith', 'assignWith', 'clamp', 'differenceBy', 'differenceWith', - 'findFrom', 'findIndexFrom', 'findLastFrom', 'findLastIndexFrom', 'getOr', - 'includesFrom', 'indexOfFrom', 'inRange', 'intersectionBy', 'intersectionWith', - 'invokeArgs', 'invokeArgsMap', 'isEqualWith', 'isMatchWith', 'flatMapDepth', - 'lastIndexOfFrom', 'mergeWith', 'orderBy', 'padChars', 'padCharsEnd', - 'padCharsStart', 'pullAllBy', 'pullAllWith', 'rangeStep', 'rangeStepRight', - 'reduce', 'reduceRight', 'replace', 'set', 'slice', 'sortedIndexBy', - 'sortedLastIndexBy', 'transform', 'unionBy', 'unionWith', 'update', 'xorBy', - 'xorWith', 'zipWith' - ], - '4': [ - 'fill', 'setWith', 'updateWith' - ] -}; - -/** Used to map ary to rearg configs. */ -exports.aryRearg = { - '2': [1, 0], - '3': [2, 0, 1], - '4': [3, 2, 0, 1] -}; - -/** Used to map method names to their iteratee ary. */ -exports.iterateeAry = { - 'dropRightWhile': 1, - 'dropWhile': 1, - 'every': 1, - 'filter': 1, - 'find': 1, - 'findFrom': 1, - 'findIndex': 1, - 'findIndexFrom': 1, - 'findKey': 1, - 'findLast': 1, - 'findLastFrom': 1, - 'findLastIndex': 1, - 'findLastIndexFrom': 1, - 'findLastKey': 1, - 'flatMap': 1, - 'flatMapDeep': 1, - 'flatMapDepth': 1, - 'forEach': 1, - 'forEachRight': 1, - 'forIn': 1, - 'forInRight': 1, - 'forOwn': 1, - 'forOwnRight': 1, - 'map': 1, - 'mapKeys': 1, - 'mapValues': 1, - 'partition': 1, - 'reduce': 2, - 'reduceRight': 2, - 'reject': 1, - 'remove': 1, - 'some': 1, - 'takeRightWhile': 1, - 'takeWhile': 1, - 'times': 1, - 'transform': 2 -}; - -/** Used to map method names to iteratee rearg configs. */ -exports.iterateeRearg = { - 'mapKeys': [1], - 'reduceRight': [1, 0] -}; - -/** Used to map method names to rearg configs. */ -exports.methodRearg = { - 'assignInAllWith': [1, 0], - 'assignInWith': [1, 2, 0], - 'assignAllWith': [1, 0], - 'assignWith': [1, 2, 0], - 'differenceBy': [1, 2, 0], - 'differenceWith': [1, 2, 0], - 'getOr': [2, 1, 0], - 'intersectionBy': [1, 2, 0], - 'intersectionWith': [1, 2, 0], - 'isEqualWith': [1, 2, 0], - 'isMatchWith': [2, 1, 0], - 'mergeAllWith': [1, 0], - 'mergeWith': [1, 2, 0], - 'padChars': [2, 1, 0], - 'padCharsEnd': [2, 1, 0], - 'padCharsStart': [2, 1, 0], - 'pullAllBy': [2, 1, 0], - 'pullAllWith': [2, 1, 0], - 'rangeStep': [1, 2, 0], - 'rangeStepRight': [1, 2, 0], - 'setWith': [3, 1, 2, 0], - 'sortedIndexBy': [2, 1, 0], - 'sortedLastIndexBy': [2, 1, 0], - 'unionBy': [1, 2, 0], - 'unionWith': [1, 2, 0], - 'updateWith': [3, 1, 2, 0], - 'xorBy': [1, 2, 0], - 'xorWith': [1, 2, 0], - 'zipWith': [1, 2, 0] -}; - -/** Used to map method names to spread configs. */ -exports.methodSpread = { - 'assignAll': { 'start': 0 }, - 'assignAllWith': { 'start': 0 }, - 'assignInAll': { 'start': 0 }, - 'assignInAllWith': { 'start': 0 }, - 'defaultsAll': { 'start': 0 }, - 'defaultsDeepAll': { 'start': 0 }, - 'invokeArgs': { 'start': 2 }, - 'invokeArgsMap': { 'start': 2 }, - 'mergeAll': { 'start': 0 }, - 'mergeAllWith': { 'start': 0 }, - 'partial': { 'start': 1 }, - 'partialRight': { 'start': 1 }, - 'without': { 'start': 1 }, - 'zipAll': { 'start': 0 } -}; - -/** Used to identify methods which mutate arrays or objects. */ -exports.mutate = { - 'array': { - 'fill': true, - 'pull': true, - 'pullAll': true, - 'pullAllBy': true, - 'pullAllWith': true, - 'pullAt': true, - 'remove': true, - 'reverse': true - }, - 'object': { - 'assign': true, - 'assignAll': true, - 'assignAllWith': true, - 'assignIn': true, - 'assignInAll': true, - 'assignInAllWith': true, - 'assignInWith': true, - 'assignWith': true, - 'defaults': true, - 'defaultsAll': true, - 'defaultsDeep': true, - 'defaultsDeepAll': true, - 'merge': true, - 'mergeAll': true, - 'mergeAllWith': true, - 'mergeWith': true, - }, - 'set': { - 'set': true, - 'setWith': true, - 'unset': true, - 'update': true, - 'updateWith': true - } -}; - -/** Used to map real names to their aliases. */ -exports.realToAlias = (function() { - var hasOwnProperty = Object.prototype.hasOwnProperty, - object = exports.aliasToReal, - result = {}; - - for (var key in object) { - var value = object[key]; - if (hasOwnProperty.call(result, value)) { - result[value].push(key); - } else { - result[value] = [key]; - } - } - return result; -}()); - -/** Used to map method names to other names. */ -exports.remap = { - 'assignAll': 'assign', - 'assignAllWith': 'assignWith', - 'assignInAll': 'assignIn', - 'assignInAllWith': 'assignInWith', - 'curryN': 'curry', - 'curryRightN': 'curryRight', - 'defaultsAll': 'defaults', - 'defaultsDeepAll': 'defaultsDeep', - 'findFrom': 'find', - 'findIndexFrom': 'findIndex', - 'findLastFrom': 'findLast', - 'findLastIndexFrom': 'findLastIndex', - 'getOr': 'get', - 'includesFrom': 'includes', - 'indexOfFrom': 'indexOf', - 'invokeArgs': 'invoke', - 'invokeArgsMap': 'invokeMap', - 'lastIndexOfFrom': 'lastIndexOf', - 'mergeAll': 'merge', - 'mergeAllWith': 'mergeWith', - 'padChars': 'pad', - 'padCharsEnd': 'padEnd', - 'padCharsStart': 'padStart', - 'propertyOf': 'get', - 'rangeStep': 'range', - 'rangeStepRight': 'rangeRight', - 'restFrom': 'rest', - 'spreadFrom': 'spread', - 'trimChars': 'trim', - 'trimCharsEnd': 'trimEnd', - 'trimCharsStart': 'trimStart', - 'zipAll': 'zip' -}; - -/** Used to track methods that skip fixing their arity. */ -exports.skipFixed = { - 'castArray': true, - 'flow': true, - 'flowRight': true, - 'iteratee': true, - 'mixin': true, - 'rearg': true, - 'runInContext': true -}; - -/** Used to track methods that skip rearranging arguments. */ -exports.skipRearg = { - 'add': true, - 'assign': true, - 'assignIn': true, - 'bind': true, - 'bindKey': true, - 'concat': true, - 'difference': true, - 'divide': true, - 'eq': true, - 'gt': true, - 'gte': true, - 'isEqual': true, - 'lt': true, - 'lte': true, - 'matchesProperty': true, - 'merge': true, - 'multiply': true, - 'overArgs': true, - 'partial': true, - 'partialRight': true, - 'propertyOf': true, - 'random': true, - 'range': true, - 'rangeRight': true, - 'subtract': true, - 'zip': true, - 'zipObject': true, - 'zipObjectDeep': true -}; diff --git a/packages/frontend-core/node_modules/lodash/fp/_util.js b/packages/frontend-core/node_modules/lodash/fp/_util.js deleted file mode 100644 index 1dbf36f5d2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/_util.js +++ /dev/null @@ -1,16 +0,0 @@ -module.exports = { - 'ary': require('../ary'), - 'assign': require('../_baseAssign'), - 'clone': require('../clone'), - 'curry': require('../curry'), - 'forEach': require('../_arrayEach'), - 'isArray': require('../isArray'), - 'isError': require('../isError'), - 'isFunction': require('../isFunction'), - 'isWeakMap': require('../isWeakMap'), - 'iteratee': require('../iteratee'), - 'keys': require('../_baseKeys'), - 'rearg': require('../rearg'), - 'toInteger': require('../toInteger'), - 'toPath': require('../toPath') -}; diff --git a/packages/frontend-core/node_modules/lodash/fp/add.js b/packages/frontend-core/node_modules/lodash/fp/add.js deleted file mode 100644 index 816eeece34..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/add.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('add', require('../add')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/after.js b/packages/frontend-core/node_modules/lodash/fp/after.js deleted file mode 100644 index 21a0167ab2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/after.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('after', require('../after')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/all.js b/packages/frontend-core/node_modules/lodash/fp/all.js deleted file mode 100644 index d0839f77ed..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/all.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./every'); diff --git a/packages/frontend-core/node_modules/lodash/fp/allPass.js b/packages/frontend-core/node_modules/lodash/fp/allPass.js deleted file mode 100644 index 79b73ef845..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/allPass.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./overEvery'); diff --git a/packages/frontend-core/node_modules/lodash/fp/always.js b/packages/frontend-core/node_modules/lodash/fp/always.js deleted file mode 100644 index 988770307b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/always.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./constant'); diff --git a/packages/frontend-core/node_modules/lodash/fp/any.js b/packages/frontend-core/node_modules/lodash/fp/any.js deleted file mode 100644 index 900ac25e83..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/any.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./some'); diff --git a/packages/frontend-core/node_modules/lodash/fp/anyPass.js b/packages/frontend-core/node_modules/lodash/fp/anyPass.js deleted file mode 100644 index 2774ab37a4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/anyPass.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./overSome'); diff --git a/packages/frontend-core/node_modules/lodash/fp/apply.js b/packages/frontend-core/node_modules/lodash/fp/apply.js deleted file mode 100644 index 2b75712962..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/apply.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./spread'); diff --git a/packages/frontend-core/node_modules/lodash/fp/array.js b/packages/frontend-core/node_modules/lodash/fp/array.js deleted file mode 100644 index fe939c2c26..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/array.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../array')); diff --git a/packages/frontend-core/node_modules/lodash/fp/ary.js b/packages/frontend-core/node_modules/lodash/fp/ary.js deleted file mode 100644 index 8edf18778d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/ary.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('ary', require('../ary')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assign.js b/packages/frontend-core/node_modules/lodash/fp/assign.js deleted file mode 100644 index 23f47af17e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assign.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assign', require('../assign')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignAll.js b/packages/frontend-core/node_modules/lodash/fp/assignAll.js deleted file mode 100644 index b1d36c7ef8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignAll', require('../assign')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignAllWith.js b/packages/frontend-core/node_modules/lodash/fp/assignAllWith.js deleted file mode 100644 index 21e836e6f0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignAllWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignAllWith', require('../assignWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignIn.js b/packages/frontend-core/node_modules/lodash/fp/assignIn.js deleted file mode 100644 index 6e7c65fad8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignIn', require('../assignIn')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignInAll.js b/packages/frontend-core/node_modules/lodash/fp/assignInAll.js deleted file mode 100644 index 7ba75dba11..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignInAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignInAll', require('../assignIn')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignInAllWith.js b/packages/frontend-core/node_modules/lodash/fp/assignInAllWith.js deleted file mode 100644 index e766903d4c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignInAllWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignInAllWith', require('../assignInWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignInWith.js b/packages/frontend-core/node_modules/lodash/fp/assignInWith.js deleted file mode 100644 index acb5923675..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignInWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignInWith', require('../assignInWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assignWith.js b/packages/frontend-core/node_modules/lodash/fp/assignWith.js deleted file mode 100644 index eb925212d5..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assignWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('assignWith', require('../assignWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/assoc.js b/packages/frontend-core/node_modules/lodash/fp/assoc.js deleted file mode 100644 index 7648820c99..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assoc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./set'); diff --git a/packages/frontend-core/node_modules/lodash/fp/assocPath.js b/packages/frontend-core/node_modules/lodash/fp/assocPath.js deleted file mode 100644 index 7648820c99..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/assocPath.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./set'); diff --git a/packages/frontend-core/node_modules/lodash/fp/at.js b/packages/frontend-core/node_modules/lodash/fp/at.js deleted file mode 100644 index cc39d257c6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/at.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('at', require('../at')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/attempt.js b/packages/frontend-core/node_modules/lodash/fp/attempt.js deleted file mode 100644 index 26ca42ea04..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/attempt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('attempt', require('../attempt')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/before.js b/packages/frontend-core/node_modules/lodash/fp/before.js deleted file mode 100644 index 7a2de65d27..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/before.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('before', require('../before')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/bind.js b/packages/frontend-core/node_modules/lodash/fp/bind.js deleted file mode 100644 index 5cbe4f302f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/bind.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('bind', require('../bind')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/bindAll.js b/packages/frontend-core/node_modules/lodash/fp/bindAll.js deleted file mode 100644 index 6b4a4a0f27..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/bindAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('bindAll', require('../bindAll')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/bindKey.js b/packages/frontend-core/node_modules/lodash/fp/bindKey.js deleted file mode 100644 index 6a46c6b19c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/bindKey.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('bindKey', require('../bindKey')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/camelCase.js b/packages/frontend-core/node_modules/lodash/fp/camelCase.js deleted file mode 100644 index 87b77b4937..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/camelCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('camelCase', require('../camelCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/capitalize.js b/packages/frontend-core/node_modules/lodash/fp/capitalize.js deleted file mode 100644 index cac74e14f8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/capitalize.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('capitalize', require('../capitalize'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/castArray.js b/packages/frontend-core/node_modules/lodash/fp/castArray.js deleted file mode 100644 index 8681c099ea..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/castArray.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('castArray', require('../castArray')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/ceil.js b/packages/frontend-core/node_modules/lodash/fp/ceil.js deleted file mode 100644 index f416b7294c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/ceil.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('ceil', require('../ceil')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/chain.js b/packages/frontend-core/node_modules/lodash/fp/chain.js deleted file mode 100644 index 604fe398b1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/chain.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('chain', require('../chain'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/chunk.js b/packages/frontend-core/node_modules/lodash/fp/chunk.js deleted file mode 100644 index 871ab08580..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/chunk.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('chunk', require('../chunk')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/clamp.js b/packages/frontend-core/node_modules/lodash/fp/clamp.js deleted file mode 100644 index 3b06c01ce1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/clamp.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('clamp', require('../clamp')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/clone.js b/packages/frontend-core/node_modules/lodash/fp/clone.js deleted file mode 100644 index cadb59c917..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/clone.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('clone', require('../clone'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/cloneDeep.js b/packages/frontend-core/node_modules/lodash/fp/cloneDeep.js deleted file mode 100644 index a6107aac94..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/cloneDeep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('cloneDeep', require('../cloneDeep'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/cloneDeepWith.js b/packages/frontend-core/node_modules/lodash/fp/cloneDeepWith.js deleted file mode 100644 index 6f01e44a34..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/cloneDeepWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('cloneDeepWith', require('../cloneDeepWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/cloneWith.js b/packages/frontend-core/node_modules/lodash/fp/cloneWith.js deleted file mode 100644 index aa8857810e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/cloneWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('cloneWith', require('../cloneWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/collection.js b/packages/frontend-core/node_modules/lodash/fp/collection.js deleted file mode 100644 index fc8b328a0d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/collection.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../collection')); diff --git a/packages/frontend-core/node_modules/lodash/fp/commit.js b/packages/frontend-core/node_modules/lodash/fp/commit.js deleted file mode 100644 index 130a894f89..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/commit.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('commit', require('../commit'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/compact.js b/packages/frontend-core/node_modules/lodash/fp/compact.js deleted file mode 100644 index ce8f7a1ac3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/compact.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('compact', require('../compact'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/complement.js b/packages/frontend-core/node_modules/lodash/fp/complement.js deleted file mode 100644 index 93eb462b35..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/complement.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./negate'); diff --git a/packages/frontend-core/node_modules/lodash/fp/compose.js b/packages/frontend-core/node_modules/lodash/fp/compose.js deleted file mode 100644 index 1954e94239..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/compose.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./flowRight'); diff --git a/packages/frontend-core/node_modules/lodash/fp/concat.js b/packages/frontend-core/node_modules/lodash/fp/concat.js deleted file mode 100644 index e59346ad98..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/concat.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('concat', require('../concat')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/cond.js b/packages/frontend-core/node_modules/lodash/fp/cond.js deleted file mode 100644 index 6a0120efd4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/cond.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('cond', require('../cond'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/conforms.js b/packages/frontend-core/node_modules/lodash/fp/conforms.js deleted file mode 100644 index 3247f64a8c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/conforms.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./conformsTo'); diff --git a/packages/frontend-core/node_modules/lodash/fp/conformsTo.js b/packages/frontend-core/node_modules/lodash/fp/conformsTo.js deleted file mode 100644 index aa7f41ec09..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/conformsTo.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('conformsTo', require('../conformsTo')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/constant.js b/packages/frontend-core/node_modules/lodash/fp/constant.js deleted file mode 100644 index 9e406fc09c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/constant.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('constant', require('../constant'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/contains.js b/packages/frontend-core/node_modules/lodash/fp/contains.js deleted file mode 100644 index 594722af59..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/contains.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./includes'); diff --git a/packages/frontend-core/node_modules/lodash/fp/convert.js b/packages/frontend-core/node_modules/lodash/fp/convert.js deleted file mode 100644 index 4795dc4246..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/convert.js +++ /dev/null @@ -1,18 +0,0 @@ -var baseConvert = require('./_baseConvert'), - util = require('./_util'); - -/** - * Converts `func` of `name` to an immutable auto-curried iteratee-first data-last - * version with conversion `options` applied. If `name` is an object its methods - * will be converted. - * - * @param {string} name The name of the function to wrap. - * @param {Function} [func] The function to wrap. - * @param {Object} [options] The options object. See `baseConvert` for more details. - * @returns {Function|Object} Returns the converted function or object. - */ -function convert(name, func, options) { - return baseConvert(util, name, func, options); -} - -module.exports = convert; diff --git a/packages/frontend-core/node_modules/lodash/fp/countBy.js b/packages/frontend-core/node_modules/lodash/fp/countBy.js deleted file mode 100644 index dfa464326f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/countBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('countBy', require('../countBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/create.js b/packages/frontend-core/node_modules/lodash/fp/create.js deleted file mode 100644 index 752025fb83..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/create.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('create', require('../create')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/curry.js b/packages/frontend-core/node_modules/lodash/fp/curry.js deleted file mode 100644 index b0b4168c50..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/curry.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('curry', require('../curry')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/curryN.js b/packages/frontend-core/node_modules/lodash/fp/curryN.js deleted file mode 100644 index 2ae7d00a62..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/curryN.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('curryN', require('../curry')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/curryRight.js b/packages/frontend-core/node_modules/lodash/fp/curryRight.js deleted file mode 100644 index cb619eb5d9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/curryRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('curryRight', require('../curryRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/curryRightN.js b/packages/frontend-core/node_modules/lodash/fp/curryRightN.js deleted file mode 100644 index 2495afc89c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/curryRightN.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('curryRightN', require('../curryRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/date.js b/packages/frontend-core/node_modules/lodash/fp/date.js deleted file mode 100644 index 82cb952bc4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/date.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../date')); diff --git a/packages/frontend-core/node_modules/lodash/fp/debounce.js b/packages/frontend-core/node_modules/lodash/fp/debounce.js deleted file mode 100644 index 26122293af..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/debounce.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('debounce', require('../debounce')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/deburr.js b/packages/frontend-core/node_modules/lodash/fp/deburr.js deleted file mode 100644 index 96463ab88e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/deburr.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('deburr', require('../deburr'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defaultTo.js b/packages/frontend-core/node_modules/lodash/fp/defaultTo.js deleted file mode 100644 index d6b52a4447..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defaultTo.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defaultTo', require('../defaultTo')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defaults.js b/packages/frontend-core/node_modules/lodash/fp/defaults.js deleted file mode 100644 index e1a8e6e7db..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defaults.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defaults', require('../defaults')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defaultsAll.js b/packages/frontend-core/node_modules/lodash/fp/defaultsAll.js deleted file mode 100644 index 238fcc3c2f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defaultsAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defaultsAll', require('../defaults')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defaultsDeep.js b/packages/frontend-core/node_modules/lodash/fp/defaultsDeep.js deleted file mode 100644 index 1f172ff944..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defaultsDeep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defaultsDeep', require('../defaultsDeep')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defaultsDeepAll.js b/packages/frontend-core/node_modules/lodash/fp/defaultsDeepAll.js deleted file mode 100644 index 6835f2f079..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defaultsDeepAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defaultsDeepAll', require('../defaultsDeep')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/defer.js b/packages/frontend-core/node_modules/lodash/fp/defer.js deleted file mode 100644 index ec7990fe22..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/defer.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('defer', require('../defer'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/delay.js b/packages/frontend-core/node_modules/lodash/fp/delay.js deleted file mode 100644 index 556dbd568e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/delay.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('delay', require('../delay')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/difference.js b/packages/frontend-core/node_modules/lodash/fp/difference.js deleted file mode 100644 index 2d0376542a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/difference.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('difference', require('../difference')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/differenceBy.js b/packages/frontend-core/node_modules/lodash/fp/differenceBy.js deleted file mode 100644 index 2f914910a9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/differenceBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('differenceBy', require('../differenceBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/differenceWith.js b/packages/frontend-core/node_modules/lodash/fp/differenceWith.js deleted file mode 100644 index bcf5ad2e11..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/differenceWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('differenceWith', require('../differenceWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/dissoc.js b/packages/frontend-core/node_modules/lodash/fp/dissoc.js deleted file mode 100644 index 7ec7be190b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dissoc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./unset'); diff --git a/packages/frontend-core/node_modules/lodash/fp/dissocPath.js b/packages/frontend-core/node_modules/lodash/fp/dissocPath.js deleted file mode 100644 index 7ec7be190b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dissocPath.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./unset'); diff --git a/packages/frontend-core/node_modules/lodash/fp/divide.js b/packages/frontend-core/node_modules/lodash/fp/divide.js deleted file mode 100644 index 82048c5e02..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/divide.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('divide', require('../divide')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/drop.js b/packages/frontend-core/node_modules/lodash/fp/drop.js deleted file mode 100644 index 2fa9b4faa5..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/drop.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('drop', require('../drop')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/dropLast.js b/packages/frontend-core/node_modules/lodash/fp/dropLast.js deleted file mode 100644 index 174e525512..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dropLast.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dropRight'); diff --git a/packages/frontend-core/node_modules/lodash/fp/dropLastWhile.js b/packages/frontend-core/node_modules/lodash/fp/dropLastWhile.js deleted file mode 100644 index be2a9d24ae..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dropLastWhile.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dropRightWhile'); diff --git a/packages/frontend-core/node_modules/lodash/fp/dropRight.js b/packages/frontend-core/node_modules/lodash/fp/dropRight.js deleted file mode 100644 index e98881fcd4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dropRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('dropRight', require('../dropRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/dropRightWhile.js b/packages/frontend-core/node_modules/lodash/fp/dropRightWhile.js deleted file mode 100644 index cacaa70191..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dropRightWhile.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('dropRightWhile', require('../dropRightWhile')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/dropWhile.js b/packages/frontend-core/node_modules/lodash/fp/dropWhile.js deleted file mode 100644 index 285f864d12..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/dropWhile.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('dropWhile', require('../dropWhile')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/each.js b/packages/frontend-core/node_modules/lodash/fp/each.js deleted file mode 100644 index 8800f42046..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/each.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./forEach'); diff --git a/packages/frontend-core/node_modules/lodash/fp/eachRight.js b/packages/frontend-core/node_modules/lodash/fp/eachRight.js deleted file mode 100644 index 3252b2aba3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/eachRight.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./forEachRight'); diff --git a/packages/frontend-core/node_modules/lodash/fp/endsWith.js b/packages/frontend-core/node_modules/lodash/fp/endsWith.js deleted file mode 100644 index 17dc2a4951..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/endsWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('endsWith', require('../endsWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/entries.js b/packages/frontend-core/node_modules/lodash/fp/entries.js deleted file mode 100644 index 7a88df2044..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./toPairs'); diff --git a/packages/frontend-core/node_modules/lodash/fp/entriesIn.js b/packages/frontend-core/node_modules/lodash/fp/entriesIn.js deleted file mode 100644 index f6c6331c1d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/entriesIn.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./toPairsIn'); diff --git a/packages/frontend-core/node_modules/lodash/fp/eq.js b/packages/frontend-core/node_modules/lodash/fp/eq.js deleted file mode 100644 index 9a3d21bf1d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/eq.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('eq', require('../eq')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/equals.js b/packages/frontend-core/node_modules/lodash/fp/equals.js deleted file mode 100644 index e6a5ce0caf..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/equals.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./isEqual'); diff --git a/packages/frontend-core/node_modules/lodash/fp/escape.js b/packages/frontend-core/node_modules/lodash/fp/escape.js deleted file mode 100644 index 52c1fbba60..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/escape.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('escape', require('../escape'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/escapeRegExp.js b/packages/frontend-core/node_modules/lodash/fp/escapeRegExp.js deleted file mode 100644 index 369b2eff6e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/escapeRegExp.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('escapeRegExp', require('../escapeRegExp'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/every.js b/packages/frontend-core/node_modules/lodash/fp/every.js deleted file mode 100644 index 95c2776c33..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/every.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('every', require('../every')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/extend.js b/packages/frontend-core/node_modules/lodash/fp/extend.js deleted file mode 100644 index e00166c206..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/extend.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignIn'); diff --git a/packages/frontend-core/node_modules/lodash/fp/extendAll.js b/packages/frontend-core/node_modules/lodash/fp/extendAll.js deleted file mode 100644 index cc55b64fcc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/extendAll.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignInAll'); diff --git a/packages/frontend-core/node_modules/lodash/fp/extendAllWith.js b/packages/frontend-core/node_modules/lodash/fp/extendAllWith.js deleted file mode 100644 index 6679d208bc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/extendAllWith.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignInAllWith'); diff --git a/packages/frontend-core/node_modules/lodash/fp/extendWith.js b/packages/frontend-core/node_modules/lodash/fp/extendWith.js deleted file mode 100644 index dbdcb3b4e4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/extendWith.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./assignInWith'); diff --git a/packages/frontend-core/node_modules/lodash/fp/fill.js b/packages/frontend-core/node_modules/lodash/fp/fill.js deleted file mode 100644 index b2d47e84eb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/fill.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('fill', require('../fill')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/filter.js b/packages/frontend-core/node_modules/lodash/fp/filter.js deleted file mode 100644 index 796d501ce8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/filter.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('filter', require('../filter')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/find.js b/packages/frontend-core/node_modules/lodash/fp/find.js deleted file mode 100644 index f805d336aa..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/find.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('find', require('../find')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findFrom.js b/packages/frontend-core/node_modules/lodash/fp/findFrom.js deleted file mode 100644 index da8275e840..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findFrom', require('../find')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findIndex.js b/packages/frontend-core/node_modules/lodash/fp/findIndex.js deleted file mode 100644 index 8c15fd1160..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findIndex.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findIndex', require('../findIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findIndexFrom.js b/packages/frontend-core/node_modules/lodash/fp/findIndexFrom.js deleted file mode 100644 index 32e98cb953..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findIndexFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findIndexFrom', require('../findIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findKey.js b/packages/frontend-core/node_modules/lodash/fp/findKey.js deleted file mode 100644 index 475bcfa8a5..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findKey.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findKey', require('../findKey')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findLast.js b/packages/frontend-core/node_modules/lodash/fp/findLast.js deleted file mode 100644 index 093fe94e74..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findLast.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findLast', require('../findLast')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findLastFrom.js b/packages/frontend-core/node_modules/lodash/fp/findLastFrom.js deleted file mode 100644 index 76c38fbad2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findLastFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findLastFrom', require('../findLast')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findLastIndex.js b/packages/frontend-core/node_modules/lodash/fp/findLastIndex.js deleted file mode 100644 index 36986df0b8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findLastIndex.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findLastIndex', require('../findLastIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findLastIndexFrom.js b/packages/frontend-core/node_modules/lodash/fp/findLastIndexFrom.js deleted file mode 100644 index 34c8176cf1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findLastIndexFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findLastIndexFrom', require('../findLastIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/findLastKey.js b/packages/frontend-core/node_modules/lodash/fp/findLastKey.js deleted file mode 100644 index 5f81b604e8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/findLastKey.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('findLastKey', require('../findLastKey')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/first.js b/packages/frontend-core/node_modules/lodash/fp/first.js deleted file mode 100644 index 53f4ad13ee..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/first.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./head'); diff --git a/packages/frontend-core/node_modules/lodash/fp/flatMap.js b/packages/frontend-core/node_modules/lodash/fp/flatMap.js deleted file mode 100644 index d01dc4d048..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flatMap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flatMap', require('../flatMap')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flatMapDeep.js b/packages/frontend-core/node_modules/lodash/fp/flatMapDeep.js deleted file mode 100644 index 569c42eb9f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flatMapDeep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flatMapDeep', require('../flatMapDeep')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flatMapDepth.js b/packages/frontend-core/node_modules/lodash/fp/flatMapDepth.js deleted file mode 100644 index 6eb68fdeed..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flatMapDepth.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flatMapDepth', require('../flatMapDepth')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flatten.js b/packages/frontend-core/node_modules/lodash/fp/flatten.js deleted file mode 100644 index 30425d8962..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flatten.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flatten', require('../flatten'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flattenDeep.js b/packages/frontend-core/node_modules/lodash/fp/flattenDeep.js deleted file mode 100644 index aed5db27c0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flattenDeep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flattenDeep', require('../flattenDeep'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flattenDepth.js b/packages/frontend-core/node_modules/lodash/fp/flattenDepth.js deleted file mode 100644 index ad65e378ef..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flattenDepth.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flattenDepth', require('../flattenDepth')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flip.js b/packages/frontend-core/node_modules/lodash/fp/flip.js deleted file mode 100644 index 0547e7b4ea..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flip.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flip', require('../flip'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/floor.js b/packages/frontend-core/node_modules/lodash/fp/floor.js deleted file mode 100644 index a6cf3358ed..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/floor.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('floor', require('../floor')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flow.js b/packages/frontend-core/node_modules/lodash/fp/flow.js deleted file mode 100644 index cd83677a62..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flow.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flow', require('../flow')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/flowRight.js b/packages/frontend-core/node_modules/lodash/fp/flowRight.js deleted file mode 100644 index 972a5b9b1c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/flowRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('flowRight', require('../flowRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forEach.js b/packages/frontend-core/node_modules/lodash/fp/forEach.js deleted file mode 100644 index 2f494521c8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forEach.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forEach', require('../forEach')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forEachRight.js b/packages/frontend-core/node_modules/lodash/fp/forEachRight.js deleted file mode 100644 index 3ff97336bb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forEachRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forEachRight', require('../forEachRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forIn.js b/packages/frontend-core/node_modules/lodash/fp/forIn.js deleted file mode 100644 index 9341749b1f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forIn', require('../forIn')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forInRight.js b/packages/frontend-core/node_modules/lodash/fp/forInRight.js deleted file mode 100644 index cecf8bbfa6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forInRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forInRight', require('../forInRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forOwn.js b/packages/frontend-core/node_modules/lodash/fp/forOwn.js deleted file mode 100644 index 246449e9a8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forOwn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forOwn', require('../forOwn')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/forOwnRight.js b/packages/frontend-core/node_modules/lodash/fp/forOwnRight.js deleted file mode 100644 index c5e826e0d7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/forOwnRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('forOwnRight', require('../forOwnRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/fromPairs.js b/packages/frontend-core/node_modules/lodash/fp/fromPairs.js deleted file mode 100644 index f8cc5968cd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/fromPairs.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('fromPairs', require('../fromPairs')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/function.js b/packages/frontend-core/node_modules/lodash/fp/function.js deleted file mode 100644 index dfe69b1fa0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/function.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../function')); diff --git a/packages/frontend-core/node_modules/lodash/fp/functions.js b/packages/frontend-core/node_modules/lodash/fp/functions.js deleted file mode 100644 index 09d1bb1baa..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/functions.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('functions', require('../functions'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/functionsIn.js b/packages/frontend-core/node_modules/lodash/fp/functionsIn.js deleted file mode 100644 index 2cfeb83ebb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/functionsIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('functionsIn', require('../functionsIn'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/get.js b/packages/frontend-core/node_modules/lodash/fp/get.js deleted file mode 100644 index 6d3a32863e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/get.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('get', require('../get')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/getOr.js b/packages/frontend-core/node_modules/lodash/fp/getOr.js deleted file mode 100644 index 7dbf771f0c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/getOr.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('getOr', require('../get')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/groupBy.js b/packages/frontend-core/node_modules/lodash/fp/groupBy.js deleted file mode 100644 index fc0bc78a57..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/groupBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('groupBy', require('../groupBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/gt.js b/packages/frontend-core/node_modules/lodash/fp/gt.js deleted file mode 100644 index 9e57c8085a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/gt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('gt', require('../gt')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/gte.js b/packages/frontend-core/node_modules/lodash/fp/gte.js deleted file mode 100644 index 4584786389..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/gte.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('gte', require('../gte')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/has.js b/packages/frontend-core/node_modules/lodash/fp/has.js deleted file mode 100644 index b901298398..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/has.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('has', require('../has')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/hasIn.js b/packages/frontend-core/node_modules/lodash/fp/hasIn.js deleted file mode 100644 index b3c3d1a3f3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/hasIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('hasIn', require('../hasIn')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/head.js b/packages/frontend-core/node_modules/lodash/fp/head.js deleted file mode 100644 index 2694f0a21d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/head.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('head', require('../head'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/identical.js b/packages/frontend-core/node_modules/lodash/fp/identical.js deleted file mode 100644 index 85563f4a46..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/identical.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./eq'); diff --git a/packages/frontend-core/node_modules/lodash/fp/identity.js b/packages/frontend-core/node_modules/lodash/fp/identity.js deleted file mode 100644 index 096415a5de..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/identity.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('identity', require('../identity'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/inRange.js b/packages/frontend-core/node_modules/lodash/fp/inRange.js deleted file mode 100644 index 202d940bae..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/inRange.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('inRange', require('../inRange')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/includes.js b/packages/frontend-core/node_modules/lodash/fp/includes.js deleted file mode 100644 index 11467805ce..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/includes.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('includes', require('../includes')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/includesFrom.js b/packages/frontend-core/node_modules/lodash/fp/includesFrom.js deleted file mode 100644 index 683afdb463..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/includesFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('includesFrom', require('../includes')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/indexBy.js b/packages/frontend-core/node_modules/lodash/fp/indexBy.js deleted file mode 100644 index 7e64bc0fcd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/indexBy.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./keyBy'); diff --git a/packages/frontend-core/node_modules/lodash/fp/indexOf.js b/packages/frontend-core/node_modules/lodash/fp/indexOf.js deleted file mode 100644 index 524658eb95..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/indexOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('indexOf', require('../indexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/indexOfFrom.js b/packages/frontend-core/node_modules/lodash/fp/indexOfFrom.js deleted file mode 100644 index d99c822f46..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/indexOfFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('indexOfFrom', require('../indexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/init.js b/packages/frontend-core/node_modules/lodash/fp/init.js deleted file mode 100644 index 2f88d8b0e1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/init.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./initial'); diff --git a/packages/frontend-core/node_modules/lodash/fp/initial.js b/packages/frontend-core/node_modules/lodash/fp/initial.js deleted file mode 100644 index b732ba0bd6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/initial.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('initial', require('../initial'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/intersection.js b/packages/frontend-core/node_modules/lodash/fp/intersection.js deleted file mode 100644 index 52936d560c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/intersection.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('intersection', require('../intersection')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/intersectionBy.js b/packages/frontend-core/node_modules/lodash/fp/intersectionBy.js deleted file mode 100644 index 72629f277d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/intersectionBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('intersectionBy', require('../intersectionBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/intersectionWith.js b/packages/frontend-core/node_modules/lodash/fp/intersectionWith.js deleted file mode 100644 index e064f400f8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/intersectionWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('intersectionWith', require('../intersectionWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invert.js b/packages/frontend-core/node_modules/lodash/fp/invert.js deleted file mode 100644 index 2d5d1f0d45..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invert.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invert', require('../invert')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invertBy.js b/packages/frontend-core/node_modules/lodash/fp/invertBy.js deleted file mode 100644 index 63ca97ecb2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invertBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invertBy', require('../invertBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invertObj.js b/packages/frontend-core/node_modules/lodash/fp/invertObj.js deleted file mode 100644 index f1d842e49b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invertObj.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./invert'); diff --git a/packages/frontend-core/node_modules/lodash/fp/invoke.js b/packages/frontend-core/node_modules/lodash/fp/invoke.js deleted file mode 100644 index fcf17f0d57..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invoke.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invoke', require('../invoke')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invokeArgs.js b/packages/frontend-core/node_modules/lodash/fp/invokeArgs.js deleted file mode 100644 index d3f2953fa3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invokeArgs.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invokeArgs', require('../invoke')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invokeArgsMap.js b/packages/frontend-core/node_modules/lodash/fp/invokeArgsMap.js deleted file mode 100644 index eaa9f84ffb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invokeArgsMap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invokeArgsMap', require('../invokeMap')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/invokeMap.js b/packages/frontend-core/node_modules/lodash/fp/invokeMap.js deleted file mode 100644 index 6515fd73f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/invokeMap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('invokeMap', require('../invokeMap')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isArguments.js b/packages/frontend-core/node_modules/lodash/fp/isArguments.js deleted file mode 100644 index 1d93c9e599..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isArguments.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isArguments', require('../isArguments'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isArray.js b/packages/frontend-core/node_modules/lodash/fp/isArray.js deleted file mode 100644 index ba7ade8ddc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isArray.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isArray', require('../isArray'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isArrayBuffer.js b/packages/frontend-core/node_modules/lodash/fp/isArrayBuffer.js deleted file mode 100644 index 5088513faf..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isArrayBuffer.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isArrayBuffer', require('../isArrayBuffer'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isArrayLike.js b/packages/frontend-core/node_modules/lodash/fp/isArrayLike.js deleted file mode 100644 index 8f1856bf6f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isArrayLike.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isArrayLike', require('../isArrayLike'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isArrayLikeObject.js b/packages/frontend-core/node_modules/lodash/fp/isArrayLikeObject.js deleted file mode 100644 index 21084984bc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isArrayLikeObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isArrayLikeObject', require('../isArrayLikeObject'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isBoolean.js b/packages/frontend-core/node_modules/lodash/fp/isBoolean.js deleted file mode 100644 index 9339f75b1f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isBoolean.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isBoolean', require('../isBoolean'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isBuffer.js b/packages/frontend-core/node_modules/lodash/fp/isBuffer.js deleted file mode 100644 index e60b123818..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isBuffer.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isBuffer', require('../isBuffer'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isDate.js b/packages/frontend-core/node_modules/lodash/fp/isDate.js deleted file mode 100644 index dc41d089ec..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isDate.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isDate', require('../isDate'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isElement.js b/packages/frontend-core/node_modules/lodash/fp/isElement.js deleted file mode 100644 index 18ee039a2d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isElement.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isElement', require('../isElement'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isEmpty.js b/packages/frontend-core/node_modules/lodash/fp/isEmpty.js deleted file mode 100644 index 0f4ae841e2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isEmpty.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isEmpty', require('../isEmpty'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isEqual.js b/packages/frontend-core/node_modules/lodash/fp/isEqual.js deleted file mode 100644 index 41383865f2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isEqual.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isEqual', require('../isEqual')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isEqualWith.js b/packages/frontend-core/node_modules/lodash/fp/isEqualWith.js deleted file mode 100644 index 029ff5cdaa..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isEqualWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isEqualWith', require('../isEqualWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isError.js b/packages/frontend-core/node_modules/lodash/fp/isError.js deleted file mode 100644 index 3dfd81ccc2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isError.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isError', require('../isError'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isFinite.js b/packages/frontend-core/node_modules/lodash/fp/isFinite.js deleted file mode 100644 index 0b647b841e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isFinite.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isFinite', require('../isFinite'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isFunction.js b/packages/frontend-core/node_modules/lodash/fp/isFunction.js deleted file mode 100644 index ff8e5c4585..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isFunction.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isFunction', require('../isFunction'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isInteger.js b/packages/frontend-core/node_modules/lodash/fp/isInteger.js deleted file mode 100644 index 67af4ff6db..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isInteger.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isInteger', require('../isInteger'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isLength.js b/packages/frontend-core/node_modules/lodash/fp/isLength.js deleted file mode 100644 index fc101c5a64..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isLength.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isLength', require('../isLength'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isMap.js b/packages/frontend-core/node_modules/lodash/fp/isMap.js deleted file mode 100644 index a209aa66fc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isMap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isMap', require('../isMap'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isMatch.js b/packages/frontend-core/node_modules/lodash/fp/isMatch.js deleted file mode 100644 index 6264ca17fa..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isMatch.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isMatch', require('../isMatch')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isMatchWith.js b/packages/frontend-core/node_modules/lodash/fp/isMatchWith.js deleted file mode 100644 index d95f319353..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isMatchWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isMatchWith', require('../isMatchWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isNaN.js b/packages/frontend-core/node_modules/lodash/fp/isNaN.js deleted file mode 100644 index 66a978f111..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isNaN.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isNaN', require('../isNaN'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isNative.js b/packages/frontend-core/node_modules/lodash/fp/isNative.js deleted file mode 100644 index 3d775ba953..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isNative.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isNative', require('../isNative'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isNil.js b/packages/frontend-core/node_modules/lodash/fp/isNil.js deleted file mode 100644 index 5952c028a9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isNil.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isNil', require('../isNil'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isNull.js b/packages/frontend-core/node_modules/lodash/fp/isNull.js deleted file mode 100644 index f201a354b4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isNull.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isNull', require('../isNull'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isNumber.js b/packages/frontend-core/node_modules/lodash/fp/isNumber.js deleted file mode 100644 index a2b5fa049f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isNumber.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isNumber', require('../isNumber'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isObject.js b/packages/frontend-core/node_modules/lodash/fp/isObject.js deleted file mode 100644 index 231ace03bc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isObject', require('../isObject'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isObjectLike.js b/packages/frontend-core/node_modules/lodash/fp/isObjectLike.js deleted file mode 100644 index f16082e6fe..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isObjectLike.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isObjectLike', require('../isObjectLike'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isPlainObject.js b/packages/frontend-core/node_modules/lodash/fp/isPlainObject.js deleted file mode 100644 index b5bea90d3a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isPlainObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isPlainObject', require('../isPlainObject'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isRegExp.js b/packages/frontend-core/node_modules/lodash/fp/isRegExp.js deleted file mode 100644 index 12a1a3d718..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isRegExp.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isRegExp', require('../isRegExp'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isSafeInteger.js b/packages/frontend-core/node_modules/lodash/fp/isSafeInteger.js deleted file mode 100644 index 7230f5520a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isSafeInteger.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isSafeInteger', require('../isSafeInteger'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isSet.js b/packages/frontend-core/node_modules/lodash/fp/isSet.js deleted file mode 100644 index 35c01f6fa1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isSet.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isSet', require('../isSet'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isString.js b/packages/frontend-core/node_modules/lodash/fp/isString.js deleted file mode 100644 index 1fd0679ef8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isString.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isString', require('../isString'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isSymbol.js b/packages/frontend-core/node_modules/lodash/fp/isSymbol.js deleted file mode 100644 index 38676956da..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isSymbol.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isSymbol', require('../isSymbol'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isTypedArray.js b/packages/frontend-core/node_modules/lodash/fp/isTypedArray.js deleted file mode 100644 index 8567953875..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isTypedArray.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isTypedArray', require('../isTypedArray'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isUndefined.js b/packages/frontend-core/node_modules/lodash/fp/isUndefined.js deleted file mode 100644 index ddbca31ca7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isUndefined.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isUndefined', require('../isUndefined'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isWeakMap.js b/packages/frontend-core/node_modules/lodash/fp/isWeakMap.js deleted file mode 100644 index ef60c613c4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isWeakMap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isWeakMap', require('../isWeakMap'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/isWeakSet.js b/packages/frontend-core/node_modules/lodash/fp/isWeakSet.js deleted file mode 100644 index c99bfaa6d9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/isWeakSet.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('isWeakSet', require('../isWeakSet'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/iteratee.js b/packages/frontend-core/node_modules/lodash/fp/iteratee.js deleted file mode 100644 index 9f0f71738a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/iteratee.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('iteratee', require('../iteratee')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/join.js b/packages/frontend-core/node_modules/lodash/fp/join.js deleted file mode 100644 index a220e003c4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/join.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('join', require('../join')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/juxt.js b/packages/frontend-core/node_modules/lodash/fp/juxt.js deleted file mode 100644 index f71e04e000..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/juxt.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./over'); diff --git a/packages/frontend-core/node_modules/lodash/fp/kebabCase.js b/packages/frontend-core/node_modules/lodash/fp/kebabCase.js deleted file mode 100644 index 60737f17cd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/kebabCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('kebabCase', require('../kebabCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/keyBy.js b/packages/frontend-core/node_modules/lodash/fp/keyBy.js deleted file mode 100644 index 9a6a85d422..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/keyBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('keyBy', require('../keyBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/keys.js b/packages/frontend-core/node_modules/lodash/fp/keys.js deleted file mode 100644 index e12bb07f13..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/keys.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('keys', require('../keys'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/keysIn.js b/packages/frontend-core/node_modules/lodash/fp/keysIn.js deleted file mode 100644 index f3eb36a8d2..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/keysIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('keysIn', require('../keysIn'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lang.js b/packages/frontend-core/node_modules/lodash/fp/lang.js deleted file mode 100644 index 08cc9c14bd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lang.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../lang')); diff --git a/packages/frontend-core/node_modules/lodash/fp/last.js b/packages/frontend-core/node_modules/lodash/fp/last.js deleted file mode 100644 index 0f716993fc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/last.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('last', require('../last'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lastIndexOf.js b/packages/frontend-core/node_modules/lodash/fp/lastIndexOf.js deleted file mode 100644 index ddf39c3013..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lastIndexOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lastIndexOf', require('../lastIndexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lastIndexOfFrom.js b/packages/frontend-core/node_modules/lodash/fp/lastIndexOfFrom.js deleted file mode 100644 index 1ff6a0b5ad..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lastIndexOfFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lastIndexOfFrom', require('../lastIndexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lowerCase.js b/packages/frontend-core/node_modules/lodash/fp/lowerCase.js deleted file mode 100644 index ea64bc15d6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lowerCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lowerCase', require('../lowerCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lowerFirst.js b/packages/frontend-core/node_modules/lodash/fp/lowerFirst.js deleted file mode 100644 index 539720a3da..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lowerFirst.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lowerFirst', require('../lowerFirst'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lt.js b/packages/frontend-core/node_modules/lodash/fp/lt.js deleted file mode 100644 index a31d21ecc6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lt', require('../lt')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/lte.js b/packages/frontend-core/node_modules/lodash/fp/lte.js deleted file mode 100644 index d795d10ee7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/lte.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('lte', require('../lte')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/map.js b/packages/frontend-core/node_modules/lodash/fp/map.js deleted file mode 100644 index cf98794362..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/map.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('map', require('../map')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mapKeys.js b/packages/frontend-core/node_modules/lodash/fp/mapKeys.js deleted file mode 100644 index 1684587099..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mapKeys.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mapKeys', require('../mapKeys')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mapValues.js b/packages/frontend-core/node_modules/lodash/fp/mapValues.js deleted file mode 100644 index 4004972751..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mapValues.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mapValues', require('../mapValues')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/matches.js b/packages/frontend-core/node_modules/lodash/fp/matches.js deleted file mode 100644 index 29d1e1e4f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/matches.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./isMatch'); diff --git a/packages/frontend-core/node_modules/lodash/fp/matchesProperty.js b/packages/frontend-core/node_modules/lodash/fp/matchesProperty.js deleted file mode 100644 index 4575bd2431..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/matchesProperty.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('matchesProperty', require('../matchesProperty')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/math.js b/packages/frontend-core/node_modules/lodash/fp/math.js deleted file mode 100644 index e8f50f7927..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/math.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../math')); diff --git a/packages/frontend-core/node_modules/lodash/fp/max.js b/packages/frontend-core/node_modules/lodash/fp/max.js deleted file mode 100644 index a66acac220..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/max.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('max', require('../max'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/maxBy.js b/packages/frontend-core/node_modules/lodash/fp/maxBy.js deleted file mode 100644 index d083fd64fd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/maxBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('maxBy', require('../maxBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mean.js b/packages/frontend-core/node_modules/lodash/fp/mean.js deleted file mode 100644 index 31172460c3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mean.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mean', require('../mean'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/meanBy.js b/packages/frontend-core/node_modules/lodash/fp/meanBy.js deleted file mode 100644 index 556f25edfe..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/meanBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('meanBy', require('../meanBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/memoize.js b/packages/frontend-core/node_modules/lodash/fp/memoize.js deleted file mode 100644 index 638eec63ba..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/memoize.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('memoize', require('../memoize')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/merge.js b/packages/frontend-core/node_modules/lodash/fp/merge.js deleted file mode 100644 index ac66adde12..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/merge.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('merge', require('../merge')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mergeAll.js b/packages/frontend-core/node_modules/lodash/fp/mergeAll.js deleted file mode 100644 index a3674d6716..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mergeAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mergeAll', require('../merge')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mergeAllWith.js b/packages/frontend-core/node_modules/lodash/fp/mergeAllWith.js deleted file mode 100644 index 4bd4206dc7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mergeAllWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mergeAllWith', require('../mergeWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mergeWith.js b/packages/frontend-core/node_modules/lodash/fp/mergeWith.js deleted file mode 100644 index 00d44d5e1a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mergeWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mergeWith', require('../mergeWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/method.js b/packages/frontend-core/node_modules/lodash/fp/method.js deleted file mode 100644 index f4060c6878..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/method.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('method', require('../method')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/methodOf.js b/packages/frontend-core/node_modules/lodash/fp/methodOf.js deleted file mode 100644 index 61399056f3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/methodOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('methodOf', require('../methodOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/min.js b/packages/frontend-core/node_modules/lodash/fp/min.js deleted file mode 100644 index d12c6b40d3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/min.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('min', require('../min'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/minBy.js b/packages/frontend-core/node_modules/lodash/fp/minBy.js deleted file mode 100644 index fdb9e24d8a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/minBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('minBy', require('../minBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/mixin.js b/packages/frontend-core/node_modules/lodash/fp/mixin.js deleted file mode 100644 index 332e6fbfdd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/mixin.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('mixin', require('../mixin')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/multiply.js b/packages/frontend-core/node_modules/lodash/fp/multiply.js deleted file mode 100644 index 4dcf0b0d4a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/multiply.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('multiply', require('../multiply')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/nAry.js b/packages/frontend-core/node_modules/lodash/fp/nAry.js deleted file mode 100644 index f262a76ccd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/nAry.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./ary'); diff --git a/packages/frontend-core/node_modules/lodash/fp/negate.js b/packages/frontend-core/node_modules/lodash/fp/negate.js deleted file mode 100644 index 8b6dc7c5b8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/negate.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('negate', require('../negate'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/next.js b/packages/frontend-core/node_modules/lodash/fp/next.js deleted file mode 100644 index 140155e232..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/next.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('next', require('../next'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/noop.js b/packages/frontend-core/node_modules/lodash/fp/noop.js deleted file mode 100644 index b9e32cc8cd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/noop.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('noop', require('../noop'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/now.js b/packages/frontend-core/node_modules/lodash/fp/now.js deleted file mode 100644 index 6de2068aac..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/now.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('now', require('../now'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/nth.js b/packages/frontend-core/node_modules/lodash/fp/nth.js deleted file mode 100644 index da4fda7409..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/nth.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('nth', require('../nth')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/nthArg.js b/packages/frontend-core/node_modules/lodash/fp/nthArg.js deleted file mode 100644 index fce3165942..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/nthArg.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('nthArg', require('../nthArg')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/number.js b/packages/frontend-core/node_modules/lodash/fp/number.js deleted file mode 100644 index 5c10b8842d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/number.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../number')); diff --git a/packages/frontend-core/node_modules/lodash/fp/object.js b/packages/frontend-core/node_modules/lodash/fp/object.js deleted file mode 100644 index ae39a1346c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/object.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../object')); diff --git a/packages/frontend-core/node_modules/lodash/fp/omit.js b/packages/frontend-core/node_modules/lodash/fp/omit.js deleted file mode 100644 index fd685291e6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/omit.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('omit', require('../omit')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/omitAll.js b/packages/frontend-core/node_modules/lodash/fp/omitAll.js deleted file mode 100644 index 144cf4b96e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/omitAll.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./omit'); diff --git a/packages/frontend-core/node_modules/lodash/fp/omitBy.js b/packages/frontend-core/node_modules/lodash/fp/omitBy.js deleted file mode 100644 index 90df738026..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/omitBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('omitBy', require('../omitBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/once.js b/packages/frontend-core/node_modules/lodash/fp/once.js deleted file mode 100644 index f8f0a5c73e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/once.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('once', require('../once'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/orderBy.js b/packages/frontend-core/node_modules/lodash/fp/orderBy.js deleted file mode 100644 index 848e210754..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/orderBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('orderBy', require('../orderBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/over.js b/packages/frontend-core/node_modules/lodash/fp/over.js deleted file mode 100644 index 01eba7b984..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/over.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('over', require('../over')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/overArgs.js b/packages/frontend-core/node_modules/lodash/fp/overArgs.js deleted file mode 100644 index 738556f0c0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/overArgs.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('overArgs', require('../overArgs')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/overEvery.js b/packages/frontend-core/node_modules/lodash/fp/overEvery.js deleted file mode 100644 index 9f5a032dc7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/overEvery.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('overEvery', require('../overEvery')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/overSome.js b/packages/frontend-core/node_modules/lodash/fp/overSome.js deleted file mode 100644 index 15939d5865..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/overSome.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('overSome', require('../overSome')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pad.js b/packages/frontend-core/node_modules/lodash/fp/pad.js deleted file mode 100644 index f1dea4a98f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pad.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pad', require('../pad')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/padChars.js b/packages/frontend-core/node_modules/lodash/fp/padChars.js deleted file mode 100644 index d6e0804cd6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/padChars.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('padChars', require('../pad')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/padCharsEnd.js b/packages/frontend-core/node_modules/lodash/fp/padCharsEnd.js deleted file mode 100644 index d4ab79ad30..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/padCharsEnd.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('padCharsEnd', require('../padEnd')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/padCharsStart.js b/packages/frontend-core/node_modules/lodash/fp/padCharsStart.js deleted file mode 100644 index a08a30000a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/padCharsStart.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('padCharsStart', require('../padStart')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/padEnd.js b/packages/frontend-core/node_modules/lodash/fp/padEnd.js deleted file mode 100644 index a8522ec36a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/padEnd.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('padEnd', require('../padEnd')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/padStart.js b/packages/frontend-core/node_modules/lodash/fp/padStart.js deleted file mode 100644 index f4ca79d4af..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/padStart.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('padStart', require('../padStart')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/parseInt.js b/packages/frontend-core/node_modules/lodash/fp/parseInt.js deleted file mode 100644 index 27314ccbca..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/parseInt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('parseInt', require('../parseInt')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/partial.js b/packages/frontend-core/node_modules/lodash/fp/partial.js deleted file mode 100644 index 5d4601598b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/partial.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('partial', require('../partial')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/partialRight.js b/packages/frontend-core/node_modules/lodash/fp/partialRight.js deleted file mode 100644 index 7f05fed0ab..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/partialRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('partialRight', require('../partialRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/partition.js b/packages/frontend-core/node_modules/lodash/fp/partition.js deleted file mode 100644 index 2ebcacc1f4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/partition.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('partition', require('../partition')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/path.js b/packages/frontend-core/node_modules/lodash/fp/path.js deleted file mode 100644 index b29cfb2139..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/path.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./get'); diff --git a/packages/frontend-core/node_modules/lodash/fp/pathEq.js b/packages/frontend-core/node_modules/lodash/fp/pathEq.js deleted file mode 100644 index 36c027a383..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pathEq.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./matchesProperty'); diff --git a/packages/frontend-core/node_modules/lodash/fp/pathOr.js b/packages/frontend-core/node_modules/lodash/fp/pathOr.js deleted file mode 100644 index 4ab582091b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pathOr.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./getOr'); diff --git a/packages/frontend-core/node_modules/lodash/fp/paths.js b/packages/frontend-core/node_modules/lodash/fp/paths.js deleted file mode 100644 index 1eb7950ac0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/paths.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./at'); diff --git a/packages/frontend-core/node_modules/lodash/fp/pick.js b/packages/frontend-core/node_modules/lodash/fp/pick.js deleted file mode 100644 index 197393de1d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pick.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pick', require('../pick')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pickAll.js b/packages/frontend-core/node_modules/lodash/fp/pickAll.js deleted file mode 100644 index a8ecd46131..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pickAll.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./pick'); diff --git a/packages/frontend-core/node_modules/lodash/fp/pickBy.js b/packages/frontend-core/node_modules/lodash/fp/pickBy.js deleted file mode 100644 index d832d16b6c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pickBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pickBy', require('../pickBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pipe.js b/packages/frontend-core/node_modules/lodash/fp/pipe.js deleted file mode 100644 index b2e1e2cc8d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pipe.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./flow'); diff --git a/packages/frontend-core/node_modules/lodash/fp/placeholder.js b/packages/frontend-core/node_modules/lodash/fp/placeholder.js deleted file mode 100644 index 1ce17393b9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/placeholder.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * The default argument placeholder value for methods. - * - * @type {Object} - */ -module.exports = {}; diff --git a/packages/frontend-core/node_modules/lodash/fp/plant.js b/packages/frontend-core/node_modules/lodash/fp/plant.js deleted file mode 100644 index eca8f32b4a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/plant.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('plant', require('../plant'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pluck.js b/packages/frontend-core/node_modules/lodash/fp/pluck.js deleted file mode 100644 index 0d1e1abfaf..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pluck.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./map'); diff --git a/packages/frontend-core/node_modules/lodash/fp/prop.js b/packages/frontend-core/node_modules/lodash/fp/prop.js deleted file mode 100644 index b29cfb2139..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/prop.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./get'); diff --git a/packages/frontend-core/node_modules/lodash/fp/propEq.js b/packages/frontend-core/node_modules/lodash/fp/propEq.js deleted file mode 100644 index 36c027a383..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/propEq.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./matchesProperty'); diff --git a/packages/frontend-core/node_modules/lodash/fp/propOr.js b/packages/frontend-core/node_modules/lodash/fp/propOr.js deleted file mode 100644 index 4ab582091b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/propOr.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./getOr'); diff --git a/packages/frontend-core/node_modules/lodash/fp/property.js b/packages/frontend-core/node_modules/lodash/fp/property.js deleted file mode 100644 index b29cfb2139..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./get'); diff --git a/packages/frontend-core/node_modules/lodash/fp/propertyOf.js b/packages/frontend-core/node_modules/lodash/fp/propertyOf.js deleted file mode 100644 index f6273ee47a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/propertyOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('propertyOf', require('../get')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/props.js b/packages/frontend-core/node_modules/lodash/fp/props.js deleted file mode 100644 index 1eb7950ac0..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/props.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./at'); diff --git a/packages/frontend-core/node_modules/lodash/fp/pull.js b/packages/frontend-core/node_modules/lodash/fp/pull.js deleted file mode 100644 index 8d7084f079..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pull.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pull', require('../pull')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pullAll.js b/packages/frontend-core/node_modules/lodash/fp/pullAll.js deleted file mode 100644 index 98d5c9a73a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pullAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pullAll', require('../pullAll')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pullAllBy.js b/packages/frontend-core/node_modules/lodash/fp/pullAllBy.js deleted file mode 100644 index 876bc3bf1c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pullAllBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pullAllBy', require('../pullAllBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pullAllWith.js b/packages/frontend-core/node_modules/lodash/fp/pullAllWith.js deleted file mode 100644 index f71ba4d73d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pullAllWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pullAllWith', require('../pullAllWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/pullAt.js b/packages/frontend-core/node_modules/lodash/fp/pullAt.js deleted file mode 100644 index e8b3bb6125..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/pullAt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('pullAt', require('../pullAt')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/random.js b/packages/frontend-core/node_modules/lodash/fp/random.js deleted file mode 100644 index 99d852e4ab..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/random.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('random', require('../random')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/range.js b/packages/frontend-core/node_modules/lodash/fp/range.js deleted file mode 100644 index a6bb59118b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/range.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('range', require('../range')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/rangeRight.js b/packages/frontend-core/node_modules/lodash/fp/rangeRight.js deleted file mode 100644 index fdb712f94e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/rangeRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('rangeRight', require('../rangeRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/rangeStep.js b/packages/frontend-core/node_modules/lodash/fp/rangeStep.js deleted file mode 100644 index d72dfc200c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/rangeStep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('rangeStep', require('../range')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/rangeStepRight.js b/packages/frontend-core/node_modules/lodash/fp/rangeStepRight.js deleted file mode 100644 index 8b2a67bc65..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/rangeStepRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('rangeStepRight', require('../rangeRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/rearg.js b/packages/frontend-core/node_modules/lodash/fp/rearg.js deleted file mode 100644 index 678e02a32a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/rearg.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('rearg', require('../rearg')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/reduce.js b/packages/frontend-core/node_modules/lodash/fp/reduce.js deleted file mode 100644 index 4cef0a0083..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/reduce.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('reduce', require('../reduce')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/reduceRight.js b/packages/frontend-core/node_modules/lodash/fp/reduceRight.js deleted file mode 100644 index caf5bb5155..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/reduceRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('reduceRight', require('../reduceRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/reject.js b/packages/frontend-core/node_modules/lodash/fp/reject.js deleted file mode 100644 index c163273861..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/reject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('reject', require('../reject')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/remove.js b/packages/frontend-core/node_modules/lodash/fp/remove.js deleted file mode 100644 index e9d1327368..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/remove.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('remove', require('../remove')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/repeat.js b/packages/frontend-core/node_modules/lodash/fp/repeat.js deleted file mode 100644 index 08470f247a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/repeat.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('repeat', require('../repeat')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/replace.js b/packages/frontend-core/node_modules/lodash/fp/replace.js deleted file mode 100644 index 2227db6257..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/replace.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('replace', require('../replace')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/rest.js b/packages/frontend-core/node_modules/lodash/fp/rest.js deleted file mode 100644 index c1f3d64bdc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/rest.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('rest', require('../rest')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/restFrom.js b/packages/frontend-core/node_modules/lodash/fp/restFrom.js deleted file mode 100644 index 714e42b5d6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/restFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('restFrom', require('../rest')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/result.js b/packages/frontend-core/node_modules/lodash/fp/result.js deleted file mode 100644 index f86ce07126..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/result.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('result', require('../result')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/reverse.js b/packages/frontend-core/node_modules/lodash/fp/reverse.js deleted file mode 100644 index 07c9f5e493..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/reverse.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('reverse', require('../reverse')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/round.js b/packages/frontend-core/node_modules/lodash/fp/round.js deleted file mode 100644 index 4c0e5c8299..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/round.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('round', require('../round')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sample.js b/packages/frontend-core/node_modules/lodash/fp/sample.js deleted file mode 100644 index 6bea1254de..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sample.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sample', require('../sample'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sampleSize.js b/packages/frontend-core/node_modules/lodash/fp/sampleSize.js deleted file mode 100644 index 359ed6fcda..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sampleSize.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sampleSize', require('../sampleSize')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/seq.js b/packages/frontend-core/node_modules/lodash/fp/seq.js deleted file mode 100644 index d8f42b0a4d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/seq.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../seq')); diff --git a/packages/frontend-core/node_modules/lodash/fp/set.js b/packages/frontend-core/node_modules/lodash/fp/set.js deleted file mode 100644 index 0b56a56c8a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/set.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('set', require('../set')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/setWith.js b/packages/frontend-core/node_modules/lodash/fp/setWith.js deleted file mode 100644 index 0b584952b6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/setWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('setWith', require('../setWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/shuffle.js b/packages/frontend-core/node_modules/lodash/fp/shuffle.js deleted file mode 100644 index aa3a1ca5be..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/shuffle.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('shuffle', require('../shuffle'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/size.js b/packages/frontend-core/node_modules/lodash/fp/size.js deleted file mode 100644 index 7490136e1c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/size.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('size', require('../size'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/slice.js b/packages/frontend-core/node_modules/lodash/fp/slice.js deleted file mode 100644 index 15945d321f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/slice.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('slice', require('../slice')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/snakeCase.js b/packages/frontend-core/node_modules/lodash/fp/snakeCase.js deleted file mode 100644 index a0ff7808eb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/snakeCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('snakeCase', require('../snakeCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/some.js b/packages/frontend-core/node_modules/lodash/fp/some.js deleted file mode 100644 index a4fa2d0060..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/some.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('some', require('../some')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortBy.js b/packages/frontend-core/node_modules/lodash/fp/sortBy.js deleted file mode 100644 index e0790ad5b7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortBy', require('../sortBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedIndex.js b/packages/frontend-core/node_modules/lodash/fp/sortedIndex.js deleted file mode 100644 index 364a05435e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedIndex.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedIndex', require('../sortedIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedIndexBy.js b/packages/frontend-core/node_modules/lodash/fp/sortedIndexBy.js deleted file mode 100644 index 9593dbd13d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedIndexBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedIndexBy', require('../sortedIndexBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedIndexOf.js b/packages/frontend-core/node_modules/lodash/fp/sortedIndexOf.js deleted file mode 100644 index c9084cab6a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedIndexOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedIndexOf', require('../sortedIndexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndex.js b/packages/frontend-core/node_modules/lodash/fp/sortedLastIndex.js deleted file mode 100644 index 47fe241af7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndex.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedLastIndex', require('../sortedLastIndex')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexBy.js b/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexBy.js deleted file mode 100644 index 0f9a347326..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedLastIndexBy', require('../sortedLastIndexBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexOf.js b/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexOf.js deleted file mode 100644 index 0d4d93278f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedLastIndexOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedLastIndexOf', require('../sortedLastIndexOf')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedUniq.js b/packages/frontend-core/node_modules/lodash/fp/sortedUniq.js deleted file mode 100644 index 882d283702..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedUniq.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedUniq', require('../sortedUniq'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sortedUniqBy.js b/packages/frontend-core/node_modules/lodash/fp/sortedUniqBy.js deleted file mode 100644 index 033db91ca9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sortedUniqBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sortedUniqBy', require('../sortedUniqBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/split.js b/packages/frontend-core/node_modules/lodash/fp/split.js deleted file mode 100644 index 14de1a7efd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/split.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('split', require('../split')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/spread.js b/packages/frontend-core/node_modules/lodash/fp/spread.js deleted file mode 100644 index 2d11b70722..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/spread.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('spread', require('../spread')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/spreadFrom.js b/packages/frontend-core/node_modules/lodash/fp/spreadFrom.js deleted file mode 100644 index 0b630df1b3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/spreadFrom.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('spreadFrom', require('../spread')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/startCase.js b/packages/frontend-core/node_modules/lodash/fp/startCase.js deleted file mode 100644 index ada98c943d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/startCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('startCase', require('../startCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/startsWith.js b/packages/frontend-core/node_modules/lodash/fp/startsWith.js deleted file mode 100644 index 985e2f2948..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/startsWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('startsWith', require('../startsWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/string.js b/packages/frontend-core/node_modules/lodash/fp/string.js deleted file mode 100644 index 773b037048..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/string.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../string')); diff --git a/packages/frontend-core/node_modules/lodash/fp/stubArray.js b/packages/frontend-core/node_modules/lodash/fp/stubArray.js deleted file mode 100644 index cd604cb493..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/stubArray.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('stubArray', require('../stubArray'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/stubFalse.js b/packages/frontend-core/node_modules/lodash/fp/stubFalse.js deleted file mode 100644 index 3296664544..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/stubFalse.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('stubFalse', require('../stubFalse'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/stubObject.js b/packages/frontend-core/node_modules/lodash/fp/stubObject.js deleted file mode 100644 index c6c8ec472c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/stubObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('stubObject', require('../stubObject'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/stubString.js b/packages/frontend-core/node_modules/lodash/fp/stubString.js deleted file mode 100644 index 701051e8b3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/stubString.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('stubString', require('../stubString'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/stubTrue.js b/packages/frontend-core/node_modules/lodash/fp/stubTrue.js deleted file mode 100644 index 9249082ce9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/stubTrue.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('stubTrue', require('../stubTrue'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/subtract.js b/packages/frontend-core/node_modules/lodash/fp/subtract.js deleted file mode 100644 index d32b16d479..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/subtract.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('subtract', require('../subtract')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sum.js b/packages/frontend-core/node_modules/lodash/fp/sum.js deleted file mode 100644 index 5cce12b325..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sum.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sum', require('../sum'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/sumBy.js b/packages/frontend-core/node_modules/lodash/fp/sumBy.js deleted file mode 100644 index c8826565f9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/sumBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('sumBy', require('../sumBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/symmetricDifference.js b/packages/frontend-core/node_modules/lodash/fp/symmetricDifference.js deleted file mode 100644 index 78c16add62..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/symmetricDifference.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./xor'); diff --git a/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceBy.js b/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceBy.js deleted file mode 100644 index 298fc7ff68..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceBy.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./xorBy'); diff --git a/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceWith.js b/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceWith.js deleted file mode 100644 index 70bc6faf28..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/symmetricDifferenceWith.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./xorWith'); diff --git a/packages/frontend-core/node_modules/lodash/fp/tail.js b/packages/frontend-core/node_modules/lodash/fp/tail.js deleted file mode 100644 index f122f0ac34..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/tail.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('tail', require('../tail'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/take.js b/packages/frontend-core/node_modules/lodash/fp/take.js deleted file mode 100644 index 9af98a7bdb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/take.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('take', require('../take')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/takeLast.js b/packages/frontend-core/node_modules/lodash/fp/takeLast.js deleted file mode 100644 index e98c84a162..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/takeLast.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./takeRight'); diff --git a/packages/frontend-core/node_modules/lodash/fp/takeLastWhile.js b/packages/frontend-core/node_modules/lodash/fp/takeLastWhile.js deleted file mode 100644 index 5367968a3d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/takeLastWhile.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./takeRightWhile'); diff --git a/packages/frontend-core/node_modules/lodash/fp/takeRight.js b/packages/frontend-core/node_modules/lodash/fp/takeRight.js deleted file mode 100644 index b82950a696..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/takeRight.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('takeRight', require('../takeRight')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/takeRightWhile.js b/packages/frontend-core/node_modules/lodash/fp/takeRightWhile.js deleted file mode 100644 index 8ffb0a2857..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/takeRightWhile.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('takeRightWhile', require('../takeRightWhile')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/takeWhile.js b/packages/frontend-core/node_modules/lodash/fp/takeWhile.js deleted file mode 100644 index 28136644fe..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/takeWhile.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('takeWhile', require('../takeWhile')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/tap.js b/packages/frontend-core/node_modules/lodash/fp/tap.js deleted file mode 100644 index d33ad6ec1e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/tap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('tap', require('../tap')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/template.js b/packages/frontend-core/node_modules/lodash/fp/template.js deleted file mode 100644 index 74857e1c84..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/template.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('template', require('../template')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/templateSettings.js b/packages/frontend-core/node_modules/lodash/fp/templateSettings.js deleted file mode 100644 index 7bcc0a82b9..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/templateSettings.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('templateSettings', require('../templateSettings'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/throttle.js b/packages/frontend-core/node_modules/lodash/fp/throttle.js deleted file mode 100644 index 77fff14284..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/throttle.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('throttle', require('../throttle')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/thru.js b/packages/frontend-core/node_modules/lodash/fp/thru.js deleted file mode 100644 index d42b3b1d84..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/thru.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('thru', require('../thru')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/times.js b/packages/frontend-core/node_modules/lodash/fp/times.js deleted file mode 100644 index 0dab06dad1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/times.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('times', require('../times')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toArray.js b/packages/frontend-core/node_modules/lodash/fp/toArray.js deleted file mode 100644 index f0c360aca3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toArray.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toArray', require('../toArray'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toFinite.js b/packages/frontend-core/node_modules/lodash/fp/toFinite.js deleted file mode 100644 index 3a47687d6b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toFinite.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toFinite', require('../toFinite'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toInteger.js b/packages/frontend-core/node_modules/lodash/fp/toInteger.js deleted file mode 100644 index e0af6a750e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toInteger.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toInteger', require('../toInteger'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toIterator.js b/packages/frontend-core/node_modules/lodash/fp/toIterator.js deleted file mode 100644 index 65e6baa9dd..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toIterator.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toIterator', require('../toIterator'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toJSON.js b/packages/frontend-core/node_modules/lodash/fp/toJSON.js deleted file mode 100644 index 2d718d0bc1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toJSON.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toJSON', require('../toJSON'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toLength.js b/packages/frontend-core/node_modules/lodash/fp/toLength.js deleted file mode 100644 index b97cdd9351..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toLength.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toLength', require('../toLength'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toLower.js b/packages/frontend-core/node_modules/lodash/fp/toLower.js deleted file mode 100644 index 616ef36ada..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toLower.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toLower', require('../toLower'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toNumber.js b/packages/frontend-core/node_modules/lodash/fp/toNumber.js deleted file mode 100644 index d0c6f4d3d6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toNumber.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toNumber', require('../toNumber'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toPairs.js b/packages/frontend-core/node_modules/lodash/fp/toPairs.js deleted file mode 100644 index af783786ee..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toPairs.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toPairs', require('../toPairs'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toPairsIn.js b/packages/frontend-core/node_modules/lodash/fp/toPairsIn.js deleted file mode 100644 index 66504abf1f..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toPairsIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toPairsIn', require('../toPairsIn'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toPath.js b/packages/frontend-core/node_modules/lodash/fp/toPath.js deleted file mode 100644 index b4d5e50fb7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toPath.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toPath', require('../toPath'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toPlainObject.js b/packages/frontend-core/node_modules/lodash/fp/toPlainObject.js deleted file mode 100644 index 278bb86398..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toPlainObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toPlainObject', require('../toPlainObject'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toSafeInteger.js b/packages/frontend-core/node_modules/lodash/fp/toSafeInteger.js deleted file mode 100644 index 367a26fddc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toSafeInteger.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toSafeInteger', require('../toSafeInteger'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toString.js b/packages/frontend-core/node_modules/lodash/fp/toString.js deleted file mode 100644 index cec4f8e223..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toString.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toString', require('../toString'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/toUpper.js b/packages/frontend-core/node_modules/lodash/fp/toUpper.js deleted file mode 100644 index 54f9a56058..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/toUpper.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('toUpper', require('../toUpper'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/transform.js b/packages/frontend-core/node_modules/lodash/fp/transform.js deleted file mode 100644 index 759d088f1a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/transform.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('transform', require('../transform')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trim.js b/packages/frontend-core/node_modules/lodash/fp/trim.js deleted file mode 100644 index e6319a741c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trim.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trim', require('../trim')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trimChars.js b/packages/frontend-core/node_modules/lodash/fp/trimChars.js deleted file mode 100644 index c9294de48c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trimChars.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trimChars', require('../trim')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trimCharsEnd.js b/packages/frontend-core/node_modules/lodash/fp/trimCharsEnd.js deleted file mode 100644 index 284bc2f813..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trimCharsEnd.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trimCharsEnd', require('../trimEnd')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trimCharsStart.js b/packages/frontend-core/node_modules/lodash/fp/trimCharsStart.js deleted file mode 100644 index ff0ee65dfb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trimCharsStart.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trimCharsStart', require('../trimStart')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trimEnd.js b/packages/frontend-core/node_modules/lodash/fp/trimEnd.js deleted file mode 100644 index 71908805fc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trimEnd.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trimEnd', require('../trimEnd')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/trimStart.js b/packages/frontend-core/node_modules/lodash/fp/trimStart.js deleted file mode 100644 index fda902c389..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/trimStart.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('trimStart', require('../trimStart')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/truncate.js b/packages/frontend-core/node_modules/lodash/fp/truncate.js deleted file mode 100644 index d265c1decb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/truncate.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('truncate', require('../truncate')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unapply.js b/packages/frontend-core/node_modules/lodash/fp/unapply.js deleted file mode 100644 index c5dfe779d6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unapply.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./rest'); diff --git a/packages/frontend-core/node_modules/lodash/fp/unary.js b/packages/frontend-core/node_modules/lodash/fp/unary.js deleted file mode 100644 index 286c945fb6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unary.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unary', require('../unary'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unescape.js b/packages/frontend-core/node_modules/lodash/fp/unescape.js deleted file mode 100644 index fddcb46e2d..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unescape.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unescape', require('../unescape'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/union.js b/packages/frontend-core/node_modules/lodash/fp/union.js deleted file mode 100644 index ef8228d74c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/union.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('union', require('../union')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unionBy.js b/packages/frontend-core/node_modules/lodash/fp/unionBy.js deleted file mode 100644 index 603687a188..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unionBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unionBy', require('../unionBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unionWith.js b/packages/frontend-core/node_modules/lodash/fp/unionWith.js deleted file mode 100644 index 65bb3a7928..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unionWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unionWith', require('../unionWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/uniq.js b/packages/frontend-core/node_modules/lodash/fp/uniq.js deleted file mode 100644 index bc1852490b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/uniq.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('uniq', require('../uniq'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/uniqBy.js b/packages/frontend-core/node_modules/lodash/fp/uniqBy.js deleted file mode 100644 index 634c6a8bb3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/uniqBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('uniqBy', require('../uniqBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/uniqWith.js b/packages/frontend-core/node_modules/lodash/fp/uniqWith.js deleted file mode 100644 index 0ec601a910..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/uniqWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('uniqWith', require('../uniqWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/uniqueId.js b/packages/frontend-core/node_modules/lodash/fp/uniqueId.js deleted file mode 100644 index aa8fc2f739..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/uniqueId.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('uniqueId', require('../uniqueId')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unnest.js b/packages/frontend-core/node_modules/lodash/fp/unnest.js deleted file mode 100644 index 5d34060aa7..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unnest.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./flatten'); diff --git a/packages/frontend-core/node_modules/lodash/fp/unset.js b/packages/frontend-core/node_modules/lodash/fp/unset.js deleted file mode 100644 index ea203a0f39..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unset.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unset', require('../unset')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unzip.js b/packages/frontend-core/node_modules/lodash/fp/unzip.js deleted file mode 100644 index cc364b3c5a..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unzip.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unzip', require('../unzip'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/unzipWith.js b/packages/frontend-core/node_modules/lodash/fp/unzipWith.js deleted file mode 100644 index 182eaa1042..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/unzipWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('unzipWith', require('../unzipWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/update.js b/packages/frontend-core/node_modules/lodash/fp/update.js deleted file mode 100644 index b8ce2cc9e1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/update.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('update', require('../update')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/updateWith.js b/packages/frontend-core/node_modules/lodash/fp/updateWith.js deleted file mode 100644 index d5e8282d94..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/updateWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('updateWith', require('../updateWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/upperCase.js b/packages/frontend-core/node_modules/lodash/fp/upperCase.js deleted file mode 100644 index c886f20216..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/upperCase.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('upperCase', require('../upperCase'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/upperFirst.js b/packages/frontend-core/node_modules/lodash/fp/upperFirst.js deleted file mode 100644 index d8c04df54b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/upperFirst.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('upperFirst', require('../upperFirst'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/useWith.js b/packages/frontend-core/node_modules/lodash/fp/useWith.js deleted file mode 100644 index d8b3df5a4e..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/useWith.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./overArgs'); diff --git a/packages/frontend-core/node_modules/lodash/fp/util.js b/packages/frontend-core/node_modules/lodash/fp/util.js deleted file mode 100644 index 18c00baed4..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/util.js +++ /dev/null @@ -1,2 +0,0 @@ -var convert = require('./convert'); -module.exports = convert(require('../util')); diff --git a/packages/frontend-core/node_modules/lodash/fp/value.js b/packages/frontend-core/node_modules/lodash/fp/value.js deleted file mode 100644 index 555eec7a38..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/value.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('value', require('../value'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/valueOf.js b/packages/frontend-core/node_modules/lodash/fp/valueOf.js deleted file mode 100644 index f968807d70..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/valueOf.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('valueOf', require('../valueOf'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/values.js b/packages/frontend-core/node_modules/lodash/fp/values.js deleted file mode 100644 index 2dfc56136b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/values.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('values', require('../values'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/valuesIn.js b/packages/frontend-core/node_modules/lodash/fp/valuesIn.js deleted file mode 100644 index a1b2bb8725..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/valuesIn.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('valuesIn', require('../valuesIn'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/where.js b/packages/frontend-core/node_modules/lodash/fp/where.js deleted file mode 100644 index 3247f64a8c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/where.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./conformsTo'); diff --git a/packages/frontend-core/node_modules/lodash/fp/whereEq.js b/packages/frontend-core/node_modules/lodash/fp/whereEq.js deleted file mode 100644 index 29d1e1e4f1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/whereEq.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./isMatch'); diff --git a/packages/frontend-core/node_modules/lodash/fp/without.js b/packages/frontend-core/node_modules/lodash/fp/without.js deleted file mode 100644 index bad9e125bc..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/without.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('without', require('../without')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/words.js b/packages/frontend-core/node_modules/lodash/fp/words.js deleted file mode 100644 index 4a901414b8..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/words.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('words', require('../words')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrap.js b/packages/frontend-core/node_modules/lodash/fp/wrap.js deleted file mode 100644 index e93bd8a1de..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrap.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrap', require('../wrap')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrapperAt.js b/packages/frontend-core/node_modules/lodash/fp/wrapperAt.js deleted file mode 100644 index 8f0a310fea..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrapperAt.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrapperAt', require('../wrapperAt'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrapperChain.js b/packages/frontend-core/node_modules/lodash/fp/wrapperChain.js deleted file mode 100644 index 2a48ea2b5b..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrapperChain.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrapperChain', require('../wrapperChain'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrapperLodash.js b/packages/frontend-core/node_modules/lodash/fp/wrapperLodash.js deleted file mode 100644 index a7162d084c..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrapperLodash.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrapperLodash', require('../wrapperLodash'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrapperReverse.js b/packages/frontend-core/node_modules/lodash/fp/wrapperReverse.js deleted file mode 100644 index e1481aab91..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrapperReverse.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrapperReverse', require('../wrapperReverse'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/wrapperValue.js b/packages/frontend-core/node_modules/lodash/fp/wrapperValue.js deleted file mode 100644 index 8eb9112f61..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/wrapperValue.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('wrapperValue', require('../wrapperValue'), require('./_falseOptions')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/xor.js b/packages/frontend-core/node_modules/lodash/fp/xor.js deleted file mode 100644 index 29e2819489..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/xor.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('xor', require('../xor')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/xorBy.js b/packages/frontend-core/node_modules/lodash/fp/xorBy.js deleted file mode 100644 index b355686db6..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/xorBy.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('xorBy', require('../xorBy')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/xorWith.js b/packages/frontend-core/node_modules/lodash/fp/xorWith.js deleted file mode 100644 index 8e05739ad3..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/xorWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('xorWith', require('../xorWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/zip.js b/packages/frontend-core/node_modules/lodash/fp/zip.js deleted file mode 100644 index 69e147a441..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zip.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('zip', require('../zip')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/zipAll.js b/packages/frontend-core/node_modules/lodash/fp/zipAll.js deleted file mode 100644 index efa8ccbfbb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zipAll.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('zipAll', require('../zip')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/zipObj.js b/packages/frontend-core/node_modules/lodash/fp/zipObj.js deleted file mode 100644 index f4a34531b1..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zipObj.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./zipObject'); diff --git a/packages/frontend-core/node_modules/lodash/fp/zipObject.js b/packages/frontend-core/node_modules/lodash/fp/zipObject.js deleted file mode 100644 index 462dbb68cb..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zipObject.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('zipObject', require('../zipObject')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/zipObjectDeep.js b/packages/frontend-core/node_modules/lodash/fp/zipObjectDeep.js deleted file mode 100644 index 53a5d33807..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zipObjectDeep.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('zipObjectDeep', require('../zipObjectDeep')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fp/zipWith.js b/packages/frontend-core/node_modules/lodash/fp/zipWith.js deleted file mode 100644 index c5cf9e2128..0000000000 --- a/packages/frontend-core/node_modules/lodash/fp/zipWith.js +++ /dev/null @@ -1,5 +0,0 @@ -var convert = require('./convert'), - func = convert('zipWith', require('../zipWith')); - -func.placeholder = require('./placeholder'); -module.exports = func; diff --git a/packages/frontend-core/node_modules/lodash/fromPairs.js b/packages/frontend-core/node_modules/lodash/fromPairs.js deleted file mode 100644 index ee7940d240..0000000000 --- a/packages/frontend-core/node_modules/lodash/fromPairs.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * The inverse of `_.toPairs`; this method returns an object composed - * from key-value `pairs`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} pairs The key-value pairs. - * @returns {Object} Returns the new object. - * @example - * - * _.fromPairs([['a', 1], ['b', 2]]); - * // => { 'a': 1, 'b': 2 } - */ -function fromPairs(pairs) { - var index = -1, - length = pairs == null ? 0 : pairs.length, - result = {}; - - while (++index < length) { - var pair = pairs[index]; - result[pair[0]] = pair[1]; - } - return result; -} - -module.exports = fromPairs; diff --git a/packages/frontend-core/node_modules/lodash/function.js b/packages/frontend-core/node_modules/lodash/function.js deleted file mode 100644 index b0fc6d93e3..0000000000 --- a/packages/frontend-core/node_modules/lodash/function.js +++ /dev/null @@ -1,25 +0,0 @@ -module.exports = { - 'after': require('./after'), - 'ary': require('./ary'), - 'before': require('./before'), - 'bind': require('./bind'), - 'bindKey': require('./bindKey'), - 'curry': require('./curry'), - 'curryRight': require('./curryRight'), - 'debounce': require('./debounce'), - 'defer': require('./defer'), - 'delay': require('./delay'), - 'flip': require('./flip'), - 'memoize': require('./memoize'), - 'negate': require('./negate'), - 'once': require('./once'), - 'overArgs': require('./overArgs'), - 'partial': require('./partial'), - 'partialRight': require('./partialRight'), - 'rearg': require('./rearg'), - 'rest': require('./rest'), - 'spread': require('./spread'), - 'throttle': require('./throttle'), - 'unary': require('./unary'), - 'wrap': require('./wrap') -}; diff --git a/packages/frontend-core/node_modules/lodash/functions.js b/packages/frontend-core/node_modules/lodash/functions.js deleted file mode 100644 index 9722928f50..0000000000 --- a/packages/frontend-core/node_modules/lodash/functions.js +++ /dev/null @@ -1,31 +0,0 @@ -var baseFunctions = require('./_baseFunctions'), - keys = require('./keys'); - -/** - * Creates an array of function property names from own enumerable properties - * of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functionsIn - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functions(new Foo); - * // => ['a', 'b'] - */ -function functions(object) { - return object == null ? [] : baseFunctions(object, keys(object)); -} - -module.exports = functions; diff --git a/packages/frontend-core/node_modules/lodash/functionsIn.js b/packages/frontend-core/node_modules/lodash/functionsIn.js deleted file mode 100644 index f00345d066..0000000000 --- a/packages/frontend-core/node_modules/lodash/functionsIn.js +++ /dev/null @@ -1,31 +0,0 @@ -var baseFunctions = require('./_baseFunctions'), - keysIn = require('./keysIn'); - -/** - * Creates an array of function property names from own and inherited - * enumerable properties of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functions - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functionsIn(new Foo); - * // => ['a', 'b', 'c'] - */ -function functionsIn(object) { - return object == null ? [] : baseFunctions(object, keysIn(object)); -} - -module.exports = functionsIn; diff --git a/packages/frontend-core/node_modules/lodash/get.js b/packages/frontend-core/node_modules/lodash/get.js deleted file mode 100644 index 8805ff92c1..0000000000 --- a/packages/frontend-core/node_modules/lodash/get.js +++ /dev/null @@ -1,33 +0,0 @@ -var baseGet = require('./_baseGet'); - -/** - * Gets the value at `path` of `object`. If the resolved value is - * `undefined`, the `defaultValue` is returned in its place. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.get(object, 'a[0].b.c'); - * // => 3 - * - * _.get(object, ['a', '0', 'b', 'c']); - * // => 3 - * - * _.get(object, 'a.b.c', 'default'); - * // => 'default' - */ -function get(object, path, defaultValue) { - var result = object == null ? undefined : baseGet(object, path); - return result === undefined ? defaultValue : result; -} - -module.exports = get; diff --git a/packages/frontend-core/node_modules/lodash/groupBy.js b/packages/frontend-core/node_modules/lodash/groupBy.js deleted file mode 100644 index babf4f6baa..0000000000 --- a/packages/frontend-core/node_modules/lodash/groupBy.js +++ /dev/null @@ -1,41 +0,0 @@ -var baseAssignValue = require('./_baseAssignValue'), - createAggregator = require('./_createAggregator'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The order of grouped values - * is determined by the order they occur in `collection`. The corresponding - * value of each key is an array of elements responsible for generating the - * key. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * _.groupBy([6.1, 4.2, 6.3], Math.floor); - * // => { '4': [4.2], '6': [6.1, 6.3] } - * - * // The `_.property` iteratee shorthand. - * _.groupBy(['one', 'two', 'three'], 'length'); - * // => { '3': ['one', 'two'], '5': ['three'] } - */ -var groupBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - result[key].push(value); - } else { - baseAssignValue(result, key, [value]); - } -}); - -module.exports = groupBy; diff --git a/packages/frontend-core/node_modules/lodash/gt.js b/packages/frontend-core/node_modules/lodash/gt.js deleted file mode 100644 index 3a66282880..0000000000 --- a/packages/frontend-core/node_modules/lodash/gt.js +++ /dev/null @@ -1,29 +0,0 @@ -var baseGt = require('./_baseGt'), - createRelationalOperation = require('./_createRelationalOperation'); - -/** - * Checks if `value` is greater than `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - * @see _.lt - * @example - * - * _.gt(3, 1); - * // => true - * - * _.gt(3, 3); - * // => false - * - * _.gt(1, 3); - * // => false - */ -var gt = createRelationalOperation(baseGt); - -module.exports = gt; diff --git a/packages/frontend-core/node_modules/lodash/gte.js b/packages/frontend-core/node_modules/lodash/gte.js deleted file mode 100644 index 4180a687d7..0000000000 --- a/packages/frontend-core/node_modules/lodash/gte.js +++ /dev/null @@ -1,30 +0,0 @@ -var createRelationalOperation = require('./_createRelationalOperation'); - -/** - * Checks if `value` is greater than or equal to `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than or equal to - * `other`, else `false`. - * @see _.lte - * @example - * - * _.gte(3, 1); - * // => true - * - * _.gte(3, 3); - * // => true - * - * _.gte(1, 3); - * // => false - */ -var gte = createRelationalOperation(function(value, other) { - return value >= other; -}); - -module.exports = gte; diff --git a/packages/frontend-core/node_modules/lodash/has.js b/packages/frontend-core/node_modules/lodash/has.js deleted file mode 100644 index 34df55e8e2..0000000000 --- a/packages/frontend-core/node_modules/lodash/has.js +++ /dev/null @@ -1,35 +0,0 @@ -var baseHas = require('./_baseHas'), - hasPath = require('./_hasPath'); - -/** - * Checks if `path` is a direct property of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = { 'a': { 'b': 2 } }; - * var other = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.has(object, 'a'); - * // => true - * - * _.has(object, 'a.b'); - * // => true - * - * _.has(object, ['a', 'b']); - * // => true - * - * _.has(other, 'a'); - * // => false - */ -function has(object, path) { - return object != null && hasPath(object, path, baseHas); -} - -module.exports = has; diff --git a/packages/frontend-core/node_modules/lodash/hasIn.js b/packages/frontend-core/node_modules/lodash/hasIn.js deleted file mode 100644 index 06a3686542..0000000000 --- a/packages/frontend-core/node_modules/lodash/hasIn.js +++ /dev/null @@ -1,34 +0,0 @@ -var baseHasIn = require('./_baseHasIn'), - hasPath = require('./_hasPath'); - -/** - * Checks if `path` is a direct or inherited property of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.hasIn(object, 'a'); - * // => true - * - * _.hasIn(object, 'a.b'); - * // => true - * - * _.hasIn(object, ['a', 'b']); - * // => true - * - * _.hasIn(object, 'b'); - * // => false - */ -function hasIn(object, path) { - return object != null && hasPath(object, path, baseHasIn); -} - -module.exports = hasIn; diff --git a/packages/frontend-core/node_modules/lodash/head.js b/packages/frontend-core/node_modules/lodash/head.js deleted file mode 100644 index dee9d1f1e7..0000000000 --- a/packages/frontend-core/node_modules/lodash/head.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Gets the first element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias first - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the first element of `array`. - * @example - * - * _.head([1, 2, 3]); - * // => 1 - * - * _.head([]); - * // => undefined - */ -function head(array) { - return (array && array.length) ? array[0] : undefined; -} - -module.exports = head; diff --git a/packages/frontend-core/node_modules/lodash/identity.js b/packages/frontend-core/node_modules/lodash/identity.js deleted file mode 100644 index 2d5d963cd2..0000000000 --- a/packages/frontend-core/node_modules/lodash/identity.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * This method returns the first argument it receives. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {*} value Any value. - * @returns {*} Returns `value`. - * @example - * - * var object = { 'a': 1 }; - * - * console.log(_.identity(object) === object); - * // => true - */ -function identity(value) { - return value; -} - -module.exports = identity; diff --git a/packages/frontend-core/node_modules/lodash/inRange.js b/packages/frontend-core/node_modules/lodash/inRange.js deleted file mode 100644 index f20728d920..0000000000 --- a/packages/frontend-core/node_modules/lodash/inRange.js +++ /dev/null @@ -1,55 +0,0 @@ -var baseInRange = require('./_baseInRange'), - toFinite = require('./toFinite'), - toNumber = require('./toNumber'); - -/** - * Checks if `n` is between `start` and up to, but not including, `end`. If - * `end` is not specified, it's set to `start` with `start` then set to `0`. - * If `start` is greater than `end` the params are swapped to support - * negative ranges. - * - * @static - * @memberOf _ - * @since 3.3.0 - * @category Number - * @param {number} number The number to check. - * @param {number} [start=0] The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - * @see _.range, _.rangeRight - * @example - * - * _.inRange(3, 2, 4); - * // => true - * - * _.inRange(4, 8); - * // => true - * - * _.inRange(4, 2); - * // => false - * - * _.inRange(2, 2); - * // => false - * - * _.inRange(1.2, 2); - * // => true - * - * _.inRange(5.2, 4); - * // => false - * - * _.inRange(-3, -2, -6); - * // => true - */ -function inRange(number, start, end) { - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - number = toNumber(number); - return baseInRange(number, start, end); -} - -module.exports = inRange; diff --git a/packages/frontend-core/node_modules/lodash/includes.js b/packages/frontend-core/node_modules/lodash/includes.js deleted file mode 100644 index ae0deedc90..0000000000 --- a/packages/frontend-core/node_modules/lodash/includes.js +++ /dev/null @@ -1,53 +0,0 @@ -var baseIndexOf = require('./_baseIndexOf'), - isArrayLike = require('./isArrayLike'), - isString = require('./isString'), - toInteger = require('./toInteger'), - values = require('./values'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * Checks if `value` is in `collection`. If `collection` is a string, it's - * checked for a substring of `value`, otherwise - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * is used for equality comparisons. If `fromIndex` is negative, it's used as - * the offset from the end of `collection`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. - * @returns {boolean} Returns `true` if `value` is found, else `false`. - * @example - * - * _.includes([1, 2, 3], 1); - * // => true - * - * _.includes([1, 2, 3], 1, 2); - * // => false - * - * _.includes({ 'a': 1, 'b': 2 }, 1); - * // => true - * - * _.includes('abcd', 'bc'); - * // => true - */ -function includes(collection, value, fromIndex, guard) { - collection = isArrayLike(collection) ? collection : values(collection); - fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; - - var length = collection.length; - if (fromIndex < 0) { - fromIndex = nativeMax(length + fromIndex, 0); - } - return isString(collection) - ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) - : (!!length && baseIndexOf(collection, value, fromIndex) > -1); -} - -module.exports = includes; diff --git a/packages/frontend-core/node_modules/lodash/index.js b/packages/frontend-core/node_modules/lodash/index.js deleted file mode 100644 index 5d063e21f3..0000000000 --- a/packages/frontend-core/node_modules/lodash/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./lodash'); \ No newline at end of file diff --git a/packages/frontend-core/node_modules/lodash/indexOf.js b/packages/frontend-core/node_modules/lodash/indexOf.js deleted file mode 100644 index 3c644af2ef..0000000000 --- a/packages/frontend-core/node_modules/lodash/indexOf.js +++ /dev/null @@ -1,42 +0,0 @@ -var baseIndexOf = require('./_baseIndexOf'), - toInteger = require('./toInteger'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max; - -/** - * Gets the index at which the first occurrence of `value` is found in `array` - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. If `fromIndex` is negative, it's used as the - * offset from the end of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.indexOf([1, 2, 1, 2], 2); - * // => 1 - * - * // Search from the `fromIndex`. - * _.indexOf([1, 2, 1, 2], 2, 2); - * // => 3 - */ -function indexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseIndexOf(array, value, index); -} - -module.exports = indexOf; diff --git a/packages/frontend-core/node_modules/lodash/initial.js b/packages/frontend-core/node_modules/lodash/initial.js deleted file mode 100644 index f47fc50928..0000000000 --- a/packages/frontend-core/node_modules/lodash/initial.js +++ /dev/null @@ -1,22 +0,0 @@ -var baseSlice = require('./_baseSlice'); - -/** - * Gets all but the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.initial([1, 2, 3]); - * // => [1, 2] - */ -function initial(array) { - var length = array == null ? 0 : array.length; - return length ? baseSlice(array, 0, -1) : []; -} - -module.exports = initial; diff --git a/packages/frontend-core/node_modules/lodash/intersection.js b/packages/frontend-core/node_modules/lodash/intersection.js deleted file mode 100644 index a94c13512a..0000000000 --- a/packages/frontend-core/node_modules/lodash/intersection.js +++ /dev/null @@ -1,30 +0,0 @@ -var arrayMap = require('./_arrayMap'), - baseIntersection = require('./_baseIntersection'), - baseRest = require('./_baseRest'), - castArrayLikeObject = require('./_castArrayLikeObject'); - -/** - * Creates an array of unique values that are included in all given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersection([2, 1], [2, 3]); - * // => [2] - */ -var intersection = baseRest(function(arrays) { - var mapped = arrayMap(arrays, castArrayLikeObject); - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped) - : []; -}); - -module.exports = intersection; diff --git a/packages/frontend-core/node_modules/lodash/intersectionBy.js b/packages/frontend-core/node_modules/lodash/intersectionBy.js deleted file mode 100644 index 31461aae53..0000000000 --- a/packages/frontend-core/node_modules/lodash/intersectionBy.js +++ /dev/null @@ -1,45 +0,0 @@ -var arrayMap = require('./_arrayMap'), - baseIntersection = require('./_baseIntersection'), - baseIteratee = require('./_baseIteratee'), - baseRest = require('./_baseRest'), - castArrayLikeObject = require('./_castArrayLikeObject'), - last = require('./last'); - -/** - * This method is like `_.intersection` except that it accepts `iteratee` - * which is invoked for each element of each `arrays` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [2.1] - * - * // The `_.property` iteratee shorthand. - * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }] - */ -var intersectionBy = baseRest(function(arrays) { - var iteratee = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - if (iteratee === last(mapped)) { - iteratee = undefined; - } else { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, baseIteratee(iteratee, 2)) - : []; -}); - -module.exports = intersectionBy; diff --git a/packages/frontend-core/node_modules/lodash/intersectionWith.js b/packages/frontend-core/node_modules/lodash/intersectionWith.js deleted file mode 100644 index 63cabfaa40..0000000000 --- a/packages/frontend-core/node_modules/lodash/intersectionWith.js +++ /dev/null @@ -1,41 +0,0 @@ -var arrayMap = require('./_arrayMap'), - baseIntersection = require('./_baseIntersection'), - baseRest = require('./_baseRest'), - castArrayLikeObject = require('./_castArrayLikeObject'), - last = require('./last'); - -/** - * This method is like `_.intersection` except that it accepts `comparator` - * which is invoked to compare elements of `arrays`. The order and references - * of result values are determined by the first array. The comparator is - * invoked with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.intersectionWith(objects, others, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }] - */ -var intersectionWith = baseRest(function(arrays) { - var comparator = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - comparator = typeof comparator == 'function' ? comparator : undefined; - if (comparator) { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, undefined, comparator) - : []; -}); - -module.exports = intersectionWith; diff --git a/packages/frontend-core/node_modules/lodash/invert.js b/packages/frontend-core/node_modules/lodash/invert.js deleted file mode 100644 index 8c4795097b..0000000000 --- a/packages/frontend-core/node_modules/lodash/invert.js +++ /dev/null @@ -1,42 +0,0 @@ -var constant = require('./constant'), - createInverter = require('./_createInverter'), - identity = require('./identity'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** - * Creates an object composed of the inverted keys and values of `object`. - * If `object` contains duplicate values, subsequent values overwrite - * property assignments of previous values. - * - * @static - * @memberOf _ - * @since 0.7.0 - * @category Object - * @param {Object} object The object to invert. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invert(object); - * // => { '1': 'c', '2': 'b' } - */ -var invert = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - result[value] = key; -}, constant(identity)); - -module.exports = invert; diff --git a/packages/frontend-core/node_modules/lodash/invertBy.js b/packages/frontend-core/node_modules/lodash/invertBy.js deleted file mode 100644 index 3f4f7e532c..0000000000 --- a/packages/frontend-core/node_modules/lodash/invertBy.js +++ /dev/null @@ -1,56 +0,0 @@ -var baseIteratee = require('./_baseIteratee'), - createInverter = require('./_createInverter'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** - * This method is like `_.invert` except that the inverted object is generated - * from the results of running each element of `object` thru `iteratee`. The - * corresponding inverted value of each inverted key is an array of keys - * responsible for generating the inverted value. The iteratee is invoked - * with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.1.0 - * @category Object - * @param {Object} object The object to invert. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invertBy(object); - * // => { '1': ['a', 'c'], '2': ['b'] } - * - * _.invertBy(object, function(value) { - * return 'group' + value; - * }); - * // => { 'group1': ['a', 'c'], 'group2': ['b'] } - */ -var invertBy = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - if (hasOwnProperty.call(result, value)) { - result[value].push(key); - } else { - result[value] = [key]; - } -}, baseIteratee); - -module.exports = invertBy; diff --git a/packages/frontend-core/node_modules/lodash/invoke.js b/packages/frontend-core/node_modules/lodash/invoke.js deleted file mode 100644 index 97d51eb5bc..0000000000 --- a/packages/frontend-core/node_modules/lodash/invoke.js +++ /dev/null @@ -1,24 +0,0 @@ -var baseInvoke = require('./_baseInvoke'), - baseRest = require('./_baseRest'); - -/** - * Invokes the method at `path` of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {...*} [args] The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - * @example - * - * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; - * - * _.invoke(object, 'a[0].b.c.slice', 1, 3); - * // => [2, 3] - */ -var invoke = baseRest(baseInvoke); - -module.exports = invoke; diff --git a/packages/frontend-core/node_modules/lodash/invokeMap.js b/packages/frontend-core/node_modules/lodash/invokeMap.js deleted file mode 100644 index 8da5126c61..0000000000 --- a/packages/frontend-core/node_modules/lodash/invokeMap.js +++ /dev/null @@ -1,41 +0,0 @@ -var apply = require('./_apply'), - baseEach = require('./_baseEach'), - baseInvoke = require('./_baseInvoke'), - baseRest = require('./_baseRest'), - isArrayLike = require('./isArrayLike'); - -/** - * Invokes the method at `path` of each element in `collection`, returning - * an array of the results of each invoked method. Any additional arguments - * are provided to each invoked method. If `path` is a function, it's invoked - * for, and `this` bound to, each element in `collection`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Array|Function|string} path The path of the method to invoke or - * the function invoked per iteration. - * @param {...*} [args] The arguments to invoke each method with. - * @returns {Array} Returns the array of results. - * @example - * - * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); - * // => [[1, 5, 7], [1, 2, 3]] - * - * _.invokeMap([123, 456], String.prototype.split, ''); - * // => [['1', '2', '3'], ['4', '5', '6']] - */ -var invokeMap = baseRest(function(collection, path, args) { - var index = -1, - isFunc = typeof path == 'function', - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value) { - result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); - }); - return result; -}); - -module.exports = invokeMap; diff --git a/packages/frontend-core/node_modules/lodash/isArguments.js b/packages/frontend-core/node_modules/lodash/isArguments.js deleted file mode 100644 index 8b9ed66cdd..0000000000 --- a/packages/frontend-core/node_modules/lodash/isArguments.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseIsArguments = require('./_baseIsArguments'), - isObjectLike = require('./isObjectLike'); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Built-in value references. */ -var propertyIsEnumerable = objectProto.propertyIsEnumerable; - -/** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ -var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); -}; - -module.exports = isArguments; diff --git a/packages/frontend-core/node_modules/lodash/isArray.js b/packages/frontend-core/node_modules/lodash/isArray.js deleted file mode 100644 index 88ab55fd0a..0000000000 --- a/packages/frontend-core/node_modules/lodash/isArray.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ -var isArray = Array.isArray; - -module.exports = isArray; diff --git a/packages/frontend-core/node_modules/lodash/isArrayBuffer.js b/packages/frontend-core/node_modules/lodash/isArrayBuffer.js deleted file mode 100644 index 12904a64b4..0000000000 --- a/packages/frontend-core/node_modules/lodash/isArrayBuffer.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsArrayBuffer = require('./_baseIsArrayBuffer'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer; - -/** - * Checks if `value` is classified as an `ArrayBuffer` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - * @example - * - * _.isArrayBuffer(new ArrayBuffer(2)); - * // => true - * - * _.isArrayBuffer(new Array(2)); - * // => false - */ -var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; - -module.exports = isArrayBuffer; diff --git a/packages/frontend-core/node_modules/lodash/isArrayLike.js b/packages/frontend-core/node_modules/lodash/isArrayLike.js deleted file mode 100644 index 0f9668056e..0000000000 --- a/packages/frontend-core/node_modules/lodash/isArrayLike.js +++ /dev/null @@ -1,33 +0,0 @@ -var isFunction = require('./isFunction'), - isLength = require('./isLength'); - -/** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ -function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); -} - -module.exports = isArrayLike; diff --git a/packages/frontend-core/node_modules/lodash/isArrayLikeObject.js b/packages/frontend-core/node_modules/lodash/isArrayLikeObject.js deleted file mode 100644 index 6c4812a8d8..0000000000 --- a/packages/frontend-core/node_modules/lodash/isArrayLikeObject.js +++ /dev/null @@ -1,33 +0,0 @@ -var isArrayLike = require('./isArrayLike'), - isObjectLike = require('./isObjectLike'); - -/** - * This method is like `_.isArrayLike` except that it also checks if `value` - * is an object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array-like object, - * else `false`. - * @example - * - * _.isArrayLikeObject([1, 2, 3]); - * // => true - * - * _.isArrayLikeObject(document.body.children); - * // => true - * - * _.isArrayLikeObject('abc'); - * // => false - * - * _.isArrayLikeObject(_.noop); - * // => false - */ -function isArrayLikeObject(value) { - return isObjectLike(value) && isArrayLike(value); -} - -module.exports = isArrayLikeObject; diff --git a/packages/frontend-core/node_modules/lodash/isBoolean.js b/packages/frontend-core/node_modules/lodash/isBoolean.js deleted file mode 100644 index a43ed4b8fc..0000000000 --- a/packages/frontend-core/node_modules/lodash/isBoolean.js +++ /dev/null @@ -1,29 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var boolTag = '[object Boolean]'; - -/** - * Checks if `value` is classified as a boolean primitive or object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. - * @example - * - * _.isBoolean(false); - * // => true - * - * _.isBoolean(null); - * // => false - */ -function isBoolean(value) { - return value === true || value === false || - (isObjectLike(value) && baseGetTag(value) == boolTag); -} - -module.exports = isBoolean; diff --git a/packages/frontend-core/node_modules/lodash/isBuffer.js b/packages/frontend-core/node_modules/lodash/isBuffer.js deleted file mode 100644 index c103cc74e7..0000000000 --- a/packages/frontend-core/node_modules/lodash/isBuffer.js +++ /dev/null @@ -1,38 +0,0 @@ -var root = require('./_root'), - stubFalse = require('./stubFalse'); - -/** Detect free variable `exports`. */ -var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Built-in value references. */ -var Buffer = moduleExports ? root.Buffer : undefined; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined; - -/** - * Checks if `value` is a buffer. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. - * @example - * - * _.isBuffer(new Buffer(2)); - * // => true - * - * _.isBuffer(new Uint8Array(2)); - * // => false - */ -var isBuffer = nativeIsBuffer || stubFalse; - -module.exports = isBuffer; diff --git a/packages/frontend-core/node_modules/lodash/isDate.js b/packages/frontend-core/node_modules/lodash/isDate.js deleted file mode 100644 index 7f0209fca7..0000000000 --- a/packages/frontend-core/node_modules/lodash/isDate.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsDate = require('./_baseIsDate'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsDate = nodeUtil && nodeUtil.isDate; - -/** - * Checks if `value` is classified as a `Date` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - * @example - * - * _.isDate(new Date); - * // => true - * - * _.isDate('Mon April 23 2012'); - * // => false - */ -var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; - -module.exports = isDate; diff --git a/packages/frontend-core/node_modules/lodash/isElement.js b/packages/frontend-core/node_modules/lodash/isElement.js deleted file mode 100644 index 76ae29c3bf..0000000000 --- a/packages/frontend-core/node_modules/lodash/isElement.js +++ /dev/null @@ -1,25 +0,0 @@ -var isObjectLike = require('./isObjectLike'), - isPlainObject = require('./isPlainObject'); - -/** - * Checks if `value` is likely a DOM element. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. - * @example - * - * _.isElement(document.body); - * // => true - * - * _.isElement(''); - * // => false - */ -function isElement(value) { - return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); -} - -module.exports = isElement; diff --git a/packages/frontend-core/node_modules/lodash/isEmpty.js b/packages/frontend-core/node_modules/lodash/isEmpty.js deleted file mode 100644 index 3597294a47..0000000000 --- a/packages/frontend-core/node_modules/lodash/isEmpty.js +++ /dev/null @@ -1,77 +0,0 @@ -var baseKeys = require('./_baseKeys'), - getTag = require('./_getTag'), - isArguments = require('./isArguments'), - isArray = require('./isArray'), - isArrayLike = require('./isArrayLike'), - isBuffer = require('./isBuffer'), - isPrototype = require('./_isPrototype'), - isTypedArray = require('./isTypedArray'); - -/** `Object#toString` result references. */ -var mapTag = '[object Map]', - setTag = '[object Set]'; - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Checks if `value` is an empty object, collection, map, or set. - * - * Objects are considered empty if they have no own enumerable string keyed - * properties. - * - * Array-like values such as `arguments` objects, arrays, buffers, strings, or - * jQuery-like collections are considered empty if they have a `length` of `0`. - * Similarly, maps and sets are considered empty if they have a `size` of `0`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is empty, else `false`. - * @example - * - * _.isEmpty(null); - * // => true - * - * _.isEmpty(true); - * // => true - * - * _.isEmpty(1); - * // => true - * - * _.isEmpty([1, 2, 3]); - * // => false - * - * _.isEmpty({ 'a': 1 }); - * // => false - */ -function isEmpty(value) { - if (value == null) { - return true; - } - if (isArrayLike(value) && - (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || - isBuffer(value) || isTypedArray(value) || isArguments(value))) { - return !value.length; - } - var tag = getTag(value); - if (tag == mapTag || tag == setTag) { - return !value.size; - } - if (isPrototype(value)) { - return !baseKeys(value).length; - } - for (var key in value) { - if (hasOwnProperty.call(value, key)) { - return false; - } - } - return true; -} - -module.exports = isEmpty; diff --git a/packages/frontend-core/node_modules/lodash/isEqual.js b/packages/frontend-core/node_modules/lodash/isEqual.js deleted file mode 100644 index 5e23e76c94..0000000000 --- a/packages/frontend-core/node_modules/lodash/isEqual.js +++ /dev/null @@ -1,35 +0,0 @@ -var baseIsEqual = require('./_baseIsEqual'); - -/** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ -function isEqual(value, other) { - return baseIsEqual(value, other); -} - -module.exports = isEqual; diff --git a/packages/frontend-core/node_modules/lodash/isEqualWith.js b/packages/frontend-core/node_modules/lodash/isEqualWith.js deleted file mode 100644 index 21bdc7ffe3..0000000000 --- a/packages/frontend-core/node_modules/lodash/isEqualWith.js +++ /dev/null @@ -1,41 +0,0 @@ -var baseIsEqual = require('./_baseIsEqual'); - -/** - * This method is like `_.isEqual` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with up to - * six arguments: (objValue, othValue [, index|key, object, other, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, othValue) { - * if (isGreeting(objValue) && isGreeting(othValue)) { - * return true; - * } - * } - * - * var array = ['hello', 'goodbye']; - * var other = ['hi', 'goodbye']; - * - * _.isEqualWith(array, other, customizer); - * // => true - */ -function isEqualWith(value, other, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - var result = customizer ? customizer(value, other) : undefined; - return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; -} - -module.exports = isEqualWith; diff --git a/packages/frontend-core/node_modules/lodash/isError.js b/packages/frontend-core/node_modules/lodash/isError.js deleted file mode 100644 index b4f41e000d..0000000000 --- a/packages/frontend-core/node_modules/lodash/isError.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'), - isPlainObject = require('./isPlainObject'); - -/** `Object#toString` result references. */ -var domExcTag = '[object DOMException]', - errorTag = '[object Error]'; - -/** - * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, - * `SyntaxError`, `TypeError`, or `URIError` object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an error object, else `false`. - * @example - * - * _.isError(new Error); - * // => true - * - * _.isError(Error); - * // => false - */ -function isError(value) { - if (!isObjectLike(value)) { - return false; - } - var tag = baseGetTag(value); - return tag == errorTag || tag == domExcTag || - (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); -} - -module.exports = isError; diff --git a/packages/frontend-core/node_modules/lodash/isFinite.js b/packages/frontend-core/node_modules/lodash/isFinite.js deleted file mode 100644 index 601842bc40..0000000000 --- a/packages/frontend-core/node_modules/lodash/isFinite.js +++ /dev/null @@ -1,36 +0,0 @@ -var root = require('./_root'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeIsFinite = root.isFinite; - -/** - * Checks if `value` is a finite primitive number. - * - * **Note:** This method is based on - * [`Number.isFinite`](https://mdn.io/Number/isFinite). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. - * @example - * - * _.isFinite(3); - * // => true - * - * _.isFinite(Number.MIN_VALUE); - * // => true - * - * _.isFinite(Infinity); - * // => false - * - * _.isFinite('3'); - * // => false - */ -function isFinite(value) { - return typeof value == 'number' && nativeIsFinite(value); -} - -module.exports = isFinite; diff --git a/packages/frontend-core/node_modules/lodash/isFunction.js b/packages/frontend-core/node_modules/lodash/isFunction.js deleted file mode 100644 index 907a8cd8bf..0000000000 --- a/packages/frontend-core/node_modules/lodash/isFunction.js +++ /dev/null @@ -1,37 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObject = require('./isObject'); - -/** `Object#toString` result references. */ -var asyncTag = '[object AsyncFunction]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - proxyTag = '[object Proxy]'; - -/** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ -function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; -} - -module.exports = isFunction; diff --git a/packages/frontend-core/node_modules/lodash/isInteger.js b/packages/frontend-core/node_modules/lodash/isInteger.js deleted file mode 100644 index 66aa87d573..0000000000 --- a/packages/frontend-core/node_modules/lodash/isInteger.js +++ /dev/null @@ -1,33 +0,0 @@ -var toInteger = require('./toInteger'); - -/** - * Checks if `value` is an integer. - * - * **Note:** This method is based on - * [`Number.isInteger`](https://mdn.io/Number/isInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an integer, else `false`. - * @example - * - * _.isInteger(3); - * // => true - * - * _.isInteger(Number.MIN_VALUE); - * // => false - * - * _.isInteger(Infinity); - * // => false - * - * _.isInteger('3'); - * // => false - */ -function isInteger(value) { - return typeof value == 'number' && value == toInteger(value); -} - -module.exports = isInteger; diff --git a/packages/frontend-core/node_modules/lodash/isLength.js b/packages/frontend-core/node_modules/lodash/isLength.js deleted file mode 100644 index 3a95caa962..0000000000 --- a/packages/frontend-core/node_modules/lodash/isLength.js +++ /dev/null @@ -1,35 +0,0 @@ -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ -function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; -} - -module.exports = isLength; diff --git a/packages/frontend-core/node_modules/lodash/isMap.js b/packages/frontend-core/node_modules/lodash/isMap.js deleted file mode 100644 index 44f8517eee..0000000000 --- a/packages/frontend-core/node_modules/lodash/isMap.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsMap = require('./_baseIsMap'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsMap = nodeUtil && nodeUtil.isMap; - -/** - * Checks if `value` is classified as a `Map` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - * @example - * - * _.isMap(new Map); - * // => true - * - * _.isMap(new WeakMap); - * // => false - */ -var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; - -module.exports = isMap; diff --git a/packages/frontend-core/node_modules/lodash/isMatch.js b/packages/frontend-core/node_modules/lodash/isMatch.js deleted file mode 100644 index 9773a18cd7..0000000000 --- a/packages/frontend-core/node_modules/lodash/isMatch.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseIsMatch = require('./_baseIsMatch'), - getMatchData = require('./_getMatchData'); - -/** - * Performs a partial deep comparison between `object` and `source` to - * determine if `object` contains equivalent property values. - * - * **Note:** This method is equivalent to `_.matches` when `source` is - * partially applied. - * - * Partial comparisons will match empty array and empty object `source` - * values against any array or object value, respectively. See `_.isEqual` - * for a list of supported value comparisons. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.isMatch(object, { 'b': 2 }); - * // => true - * - * _.isMatch(object, { 'b': 1 }); - * // => false - */ -function isMatch(object, source) { - return object === source || baseIsMatch(object, source, getMatchData(source)); -} - -module.exports = isMatch; diff --git a/packages/frontend-core/node_modules/lodash/isMatchWith.js b/packages/frontend-core/node_modules/lodash/isMatchWith.js deleted file mode 100644 index 187b6a61de..0000000000 --- a/packages/frontend-core/node_modules/lodash/isMatchWith.js +++ /dev/null @@ -1,41 +0,0 @@ -var baseIsMatch = require('./_baseIsMatch'), - getMatchData = require('./_getMatchData'); - -/** - * This method is like `_.isMatch` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with five - * arguments: (objValue, srcValue, index|key, object, source). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, srcValue) { - * if (isGreeting(objValue) && isGreeting(srcValue)) { - * return true; - * } - * } - * - * var object = { 'greeting': 'hello' }; - * var source = { 'greeting': 'hi' }; - * - * _.isMatchWith(object, source, customizer); - * // => true - */ -function isMatchWith(object, source, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseIsMatch(object, source, getMatchData(source), customizer); -} - -module.exports = isMatchWith; diff --git a/packages/frontend-core/node_modules/lodash/isNaN.js b/packages/frontend-core/node_modules/lodash/isNaN.js deleted file mode 100644 index 7d0d783bad..0000000000 --- a/packages/frontend-core/node_modules/lodash/isNaN.js +++ /dev/null @@ -1,38 +0,0 @@ -var isNumber = require('./isNumber'); - -/** - * Checks if `value` is `NaN`. - * - * **Note:** This method is based on - * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as - * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for - * `undefined` and other non-number values. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - * @example - * - * _.isNaN(NaN); - * // => true - * - * _.isNaN(new Number(NaN)); - * // => true - * - * isNaN(undefined); - * // => true - * - * _.isNaN(undefined); - * // => false - */ -function isNaN(value) { - // An `NaN` primitive is the only value that is not equal to itself. - // Perform the `toStringTag` check first to avoid errors with some - // ActiveX objects in IE. - return isNumber(value) && value != +value; -} - -module.exports = isNaN; diff --git a/packages/frontend-core/node_modules/lodash/isNative.js b/packages/frontend-core/node_modules/lodash/isNative.js deleted file mode 100644 index f0cb8d5800..0000000000 --- a/packages/frontend-core/node_modules/lodash/isNative.js +++ /dev/null @@ -1,40 +0,0 @@ -var baseIsNative = require('./_baseIsNative'), - isMaskable = require('./_isMaskable'); - -/** Error message constants. */ -var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.'; - -/** - * Checks if `value` is a pristine native function. - * - * **Note:** This method can't reliably detect native functions in the presence - * of the core-js package because core-js circumvents this kind of detection. - * Despite multiple requests, the core-js maintainer has made it clear: any - * attempt to fix the detection will be obstructed. As a result, we're left - * with little choice but to throw an error. Unfortunately, this also affects - * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), - * which rely on core-js. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - * @example - * - * _.isNative(Array.prototype.push); - * // => true - * - * _.isNative(_); - * // => false - */ -function isNative(value) { - if (isMaskable(value)) { - throw new Error(CORE_ERROR_TEXT); - } - return baseIsNative(value); -} - -module.exports = isNative; diff --git a/packages/frontend-core/node_modules/lodash/isNil.js b/packages/frontend-core/node_modules/lodash/isNil.js deleted file mode 100644 index 79f05052c5..0000000000 --- a/packages/frontend-core/node_modules/lodash/isNil.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Checks if `value` is `null` or `undefined`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is nullish, else `false`. - * @example - * - * _.isNil(null); - * // => true - * - * _.isNil(void 0); - * // => true - * - * _.isNil(NaN); - * // => false - */ -function isNil(value) { - return value == null; -} - -module.exports = isNil; diff --git a/packages/frontend-core/node_modules/lodash/isNull.js b/packages/frontend-core/node_modules/lodash/isNull.js deleted file mode 100644 index c0a374d7dc..0000000000 --- a/packages/frontend-core/node_modules/lodash/isNull.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Checks if `value` is `null`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `null`, else `false`. - * @example - * - * _.isNull(null); - * // => true - * - * _.isNull(void 0); - * // => false - */ -function isNull(value) { - return value === null; -} - -module.exports = isNull; diff --git a/packages/frontend-core/node_modules/lodash/isNumber.js b/packages/frontend-core/node_modules/lodash/isNumber.js deleted file mode 100644 index cd34ee4641..0000000000 --- a/packages/frontend-core/node_modules/lodash/isNumber.js +++ /dev/null @@ -1,38 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var numberTag = '[object Number]'; - -/** - * Checks if `value` is classified as a `Number` primitive or object. - * - * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are - * classified as numbers, use the `_.isFinite` method. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a number, else `false`. - * @example - * - * _.isNumber(3); - * // => true - * - * _.isNumber(Number.MIN_VALUE); - * // => true - * - * _.isNumber(Infinity); - * // => true - * - * _.isNumber('3'); - * // => false - */ -function isNumber(value) { - return typeof value == 'number' || - (isObjectLike(value) && baseGetTag(value) == numberTag); -} - -module.exports = isNumber; diff --git a/packages/frontend-core/node_modules/lodash/isObject.js b/packages/frontend-core/node_modules/lodash/isObject.js deleted file mode 100644 index 1dc893918b..0000000000 --- a/packages/frontend-core/node_modules/lodash/isObject.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ -function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); -} - -module.exports = isObject; diff --git a/packages/frontend-core/node_modules/lodash/isObjectLike.js b/packages/frontend-core/node_modules/lodash/isObjectLike.js deleted file mode 100644 index 301716b5a5..0000000000 --- a/packages/frontend-core/node_modules/lodash/isObjectLike.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ -function isObjectLike(value) { - return value != null && typeof value == 'object'; -} - -module.exports = isObjectLike; diff --git a/packages/frontend-core/node_modules/lodash/isPlainObject.js b/packages/frontend-core/node_modules/lodash/isPlainObject.js deleted file mode 100644 index 238737313f..0000000000 --- a/packages/frontend-core/node_modules/lodash/isPlainObject.js +++ /dev/null @@ -1,62 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - getPrototype = require('./_getPrototype'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var objectTag = '[object Object]'; - -/** Used for built-in method references. */ -var funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Used to infer the `Object` constructor. */ -var objectCtorString = funcToString.call(Object); - -/** - * Checks if `value` is a plain object, that is, an object created by the - * `Object` constructor or one with a `[[Prototype]]` of `null`. - * - * @static - * @memberOf _ - * @since 0.8.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * _.isPlainObject(new Foo); - * // => false - * - * _.isPlainObject([1, 2, 3]); - * // => false - * - * _.isPlainObject({ 'x': 0, 'y': 0 }); - * // => true - * - * _.isPlainObject(Object.create(null)); - * // => true - */ -function isPlainObject(value) { - if (!isObjectLike(value) || baseGetTag(value) != objectTag) { - return false; - } - var proto = getPrototype(value); - if (proto === null) { - return true; - } - var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; - return typeof Ctor == 'function' && Ctor instanceof Ctor && - funcToString.call(Ctor) == objectCtorString; -} - -module.exports = isPlainObject; diff --git a/packages/frontend-core/node_modules/lodash/isRegExp.js b/packages/frontend-core/node_modules/lodash/isRegExp.js deleted file mode 100644 index 76c9b6e9c3..0000000000 --- a/packages/frontend-core/node_modules/lodash/isRegExp.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsRegExp = require('./_baseIsRegExp'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp; - -/** - * Checks if `value` is classified as a `RegExp` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - * @example - * - * _.isRegExp(/abc/); - * // => true - * - * _.isRegExp('/abc/'); - * // => false - */ -var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; - -module.exports = isRegExp; diff --git a/packages/frontend-core/node_modules/lodash/isSafeInteger.js b/packages/frontend-core/node_modules/lodash/isSafeInteger.js deleted file mode 100644 index 2a48526e10..0000000000 --- a/packages/frontend-core/node_modules/lodash/isSafeInteger.js +++ /dev/null @@ -1,37 +0,0 @@ -var isInteger = require('./isInteger'); - -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** - * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 - * double precision number which isn't the result of a rounded unsafe integer. - * - * **Note:** This method is based on - * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. - * @example - * - * _.isSafeInteger(3); - * // => true - * - * _.isSafeInteger(Number.MIN_VALUE); - * // => false - * - * _.isSafeInteger(Infinity); - * // => false - * - * _.isSafeInteger('3'); - * // => false - */ -function isSafeInteger(value) { - return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; -} - -module.exports = isSafeInteger; diff --git a/packages/frontend-core/node_modules/lodash/isSet.js b/packages/frontend-core/node_modules/lodash/isSet.js deleted file mode 100644 index ab88bdf81a..0000000000 --- a/packages/frontend-core/node_modules/lodash/isSet.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsSet = require('./_baseIsSet'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsSet = nodeUtil && nodeUtil.isSet; - -/** - * Checks if `value` is classified as a `Set` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - * @example - * - * _.isSet(new Set); - * // => true - * - * _.isSet(new WeakSet); - * // => false - */ -var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; - -module.exports = isSet; diff --git a/packages/frontend-core/node_modules/lodash/isString.js b/packages/frontend-core/node_modules/lodash/isString.js deleted file mode 100644 index 627eb9c384..0000000000 --- a/packages/frontend-core/node_modules/lodash/isString.js +++ /dev/null @@ -1,30 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isArray = require('./isArray'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var stringTag = '[object String]'; - -/** - * Checks if `value` is classified as a `String` primitive or object. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a string, else `false`. - * @example - * - * _.isString('abc'); - * // => true - * - * _.isString(1); - * // => false - */ -function isString(value) { - return typeof value == 'string' || - (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); -} - -module.exports = isString; diff --git a/packages/frontend-core/node_modules/lodash/isSymbol.js b/packages/frontend-core/node_modules/lodash/isSymbol.js deleted file mode 100644 index dfb60b97f6..0000000000 --- a/packages/frontend-core/node_modules/lodash/isSymbol.js +++ /dev/null @@ -1,29 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var symbolTag = '[object Symbol]'; - -/** - * Checks if `value` is classified as a `Symbol` primitive or object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. - * @example - * - * _.isSymbol(Symbol.iterator); - * // => true - * - * _.isSymbol('abc'); - * // => false - */ -function isSymbol(value) { - return typeof value == 'symbol' || - (isObjectLike(value) && baseGetTag(value) == symbolTag); -} - -module.exports = isSymbol; diff --git a/packages/frontend-core/node_modules/lodash/isTypedArray.js b/packages/frontend-core/node_modules/lodash/isTypedArray.js deleted file mode 100644 index da3f8dd198..0000000000 --- a/packages/frontend-core/node_modules/lodash/isTypedArray.js +++ /dev/null @@ -1,27 +0,0 @@ -var baseIsTypedArray = require('./_baseIsTypedArray'), - baseUnary = require('./_baseUnary'), - nodeUtil = require('./_nodeUtil'); - -/* Node.js helper references. */ -var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - -/** - * Checks if `value` is classified as a typed array. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - * @example - * - * _.isTypedArray(new Uint8Array); - * // => true - * - * _.isTypedArray([]); - * // => false - */ -var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - -module.exports = isTypedArray; diff --git a/packages/frontend-core/node_modules/lodash/isUndefined.js b/packages/frontend-core/node_modules/lodash/isUndefined.js deleted file mode 100644 index 377d121ab8..0000000000 --- a/packages/frontend-core/node_modules/lodash/isUndefined.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Checks if `value` is `undefined`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. - * @example - * - * _.isUndefined(void 0); - * // => true - * - * _.isUndefined(null); - * // => false - */ -function isUndefined(value) { - return value === undefined; -} - -module.exports = isUndefined; diff --git a/packages/frontend-core/node_modules/lodash/isWeakMap.js b/packages/frontend-core/node_modules/lodash/isWeakMap.js deleted file mode 100644 index 8d36f6638f..0000000000 --- a/packages/frontend-core/node_modules/lodash/isWeakMap.js +++ /dev/null @@ -1,28 +0,0 @@ -var getTag = require('./_getTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var weakMapTag = '[object WeakMap]'; - -/** - * Checks if `value` is classified as a `WeakMap` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. - * @example - * - * _.isWeakMap(new WeakMap); - * // => true - * - * _.isWeakMap(new Map); - * // => false - */ -function isWeakMap(value) { - return isObjectLike(value) && getTag(value) == weakMapTag; -} - -module.exports = isWeakMap; diff --git a/packages/frontend-core/node_modules/lodash/isWeakSet.js b/packages/frontend-core/node_modules/lodash/isWeakSet.js deleted file mode 100644 index e628b261cf..0000000000 --- a/packages/frontend-core/node_modules/lodash/isWeakSet.js +++ /dev/null @@ -1,28 +0,0 @@ -var baseGetTag = require('./_baseGetTag'), - isObjectLike = require('./isObjectLike'); - -/** `Object#toString` result references. */ -var weakSetTag = '[object WeakSet]'; - -/** - * Checks if `value` is classified as a `WeakSet` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. - * @example - * - * _.isWeakSet(new WeakSet); - * // => true - * - * _.isWeakSet(new Set); - * // => false - */ -function isWeakSet(value) { - return isObjectLike(value) && baseGetTag(value) == weakSetTag; -} - -module.exports = isWeakSet; diff --git a/packages/frontend-core/node_modules/lodash/iteratee.js b/packages/frontend-core/node_modules/lodash/iteratee.js deleted file mode 100644 index 61b73a8c05..0000000000 --- a/packages/frontend-core/node_modules/lodash/iteratee.js +++ /dev/null @@ -1,53 +0,0 @@ -var baseClone = require('./_baseClone'), - baseIteratee = require('./_baseIteratee'); - -/** Used to compose bitmasks for cloning. */ -var CLONE_DEEP_FLAG = 1; - -/** - * Creates a function that invokes `func` with the arguments of the created - * function. If `func` is a property name, the created function returns the - * property value for a given element. If `func` is an array or object, the - * created function returns `true` for elements that contain the equivalent - * source properties, otherwise it returns `false`. - * - * @static - * @since 4.0.0 - * @memberOf _ - * @category Util - * @param {*} [func=_.identity] The value to convert to a callback. - * @returns {Function} Returns the callback. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true })); - * // => [{ 'user': 'barney', 'age': 36, 'active': true }] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, _.iteratee(['user', 'fred'])); - * // => [{ 'user': 'fred', 'age': 40 }] - * - * // The `_.property` iteratee shorthand. - * _.map(users, _.iteratee('user')); - * // => ['barney', 'fred'] - * - * // Create custom iteratee shorthands. - * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) { - * return !_.isRegExp(func) ? iteratee(func) : function(string) { - * return func.test(string); - * }; - * }); - * - * _.filter(['abc', 'def'], /ef/); - * // => ['def'] - */ -function iteratee(func) { - return baseIteratee(typeof func == 'function' ? func : baseClone(func, CLONE_DEEP_FLAG)); -} - -module.exports = iteratee; diff --git a/packages/frontend-core/node_modules/lodash/join.js b/packages/frontend-core/node_modules/lodash/join.js deleted file mode 100644 index 45de079ff2..0000000000 --- a/packages/frontend-core/node_modules/lodash/join.js +++ /dev/null @@ -1,26 +0,0 @@ -/** Used for built-in method references. */ -var arrayProto = Array.prototype; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeJoin = arrayProto.join; - -/** - * Converts all elements in `array` into a string separated by `separator`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to convert. - * @param {string} [separator=','] The element separator. - * @returns {string} Returns the joined string. - * @example - * - * _.join(['a', 'b', 'c'], '~'); - * // => 'a~b~c' - */ -function join(array, separator) { - return array == null ? '' : nativeJoin.call(array, separator); -} - -module.exports = join; diff --git a/packages/frontend-core/node_modules/lodash/kebabCase.js b/packages/frontend-core/node_modules/lodash/kebabCase.js deleted file mode 100644 index 8a52be6455..0000000000 --- a/packages/frontend-core/node_modules/lodash/kebabCase.js +++ /dev/null @@ -1,28 +0,0 @@ -var createCompounder = require('./_createCompounder'); - -/** - * Converts `string` to - * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the kebab cased string. - * @example - * - * _.kebabCase('Foo Bar'); - * // => 'foo-bar' - * - * _.kebabCase('fooBar'); - * // => 'foo-bar' - * - * _.kebabCase('__FOO_BAR__'); - * // => 'foo-bar' - */ -var kebabCase = createCompounder(function(result, word, index) { - return result + (index ? '-' : '') + word.toLowerCase(); -}); - -module.exports = kebabCase; diff --git a/packages/frontend-core/node_modules/lodash/keyBy.js b/packages/frontend-core/node_modules/lodash/keyBy.js deleted file mode 100644 index acc007a0ab..0000000000 --- a/packages/frontend-core/node_modules/lodash/keyBy.js +++ /dev/null @@ -1,36 +0,0 @@ -var baseAssignValue = require('./_baseAssignValue'), - createAggregator = require('./_createAggregator'); - -/** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The corresponding value of - * each key is the last element responsible for generating the key. The - * iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * var array = [ - * { 'dir': 'left', 'code': 97 }, - * { 'dir': 'right', 'code': 100 } - * ]; - * - * _.keyBy(array, function(o) { - * return String.fromCharCode(o.code); - * }); - * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } - * - * _.keyBy(array, 'dir'); - * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } - */ -var keyBy = createAggregator(function(result, value, key) { - baseAssignValue(result, key, value); -}); - -module.exports = keyBy; diff --git a/packages/frontend-core/node_modules/lodash/keys.js b/packages/frontend-core/node_modules/lodash/keys.js deleted file mode 100644 index d143c7186f..0000000000 --- a/packages/frontend-core/node_modules/lodash/keys.js +++ /dev/null @@ -1,37 +0,0 @@ -var arrayLikeKeys = require('./_arrayLikeKeys'), - baseKeys = require('./_baseKeys'), - isArrayLike = require('./isArrayLike'); - -/** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ -function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); -} - -module.exports = keys; diff --git a/packages/frontend-core/node_modules/lodash/keysIn.js b/packages/frontend-core/node_modules/lodash/keysIn.js deleted file mode 100644 index a62308f2c5..0000000000 --- a/packages/frontend-core/node_modules/lodash/keysIn.js +++ /dev/null @@ -1,32 +0,0 @@ -var arrayLikeKeys = require('./_arrayLikeKeys'), - baseKeysIn = require('./_baseKeysIn'), - isArrayLike = require('./isArrayLike'); - -/** - * Creates an array of the own and inherited enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keysIn(new Foo); - * // => ['a', 'b', 'c'] (iteration order is not guaranteed) - */ -function keysIn(object) { - return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); -} - -module.exports = keysIn; diff --git a/packages/frontend-core/node_modules/lodash/lang.js b/packages/frontend-core/node_modules/lodash/lang.js deleted file mode 100644 index a3962169ab..0000000000 --- a/packages/frontend-core/node_modules/lodash/lang.js +++ /dev/null @@ -1,58 +0,0 @@ -module.exports = { - 'castArray': require('./castArray'), - 'clone': require('./clone'), - 'cloneDeep': require('./cloneDeep'), - 'cloneDeepWith': require('./cloneDeepWith'), - 'cloneWith': require('./cloneWith'), - 'conformsTo': require('./conformsTo'), - 'eq': require('./eq'), - 'gt': require('./gt'), - 'gte': require('./gte'), - 'isArguments': require('./isArguments'), - 'isArray': require('./isArray'), - 'isArrayBuffer': require('./isArrayBuffer'), - 'isArrayLike': require('./isArrayLike'), - 'isArrayLikeObject': require('./isArrayLikeObject'), - 'isBoolean': require('./isBoolean'), - 'isBuffer': require('./isBuffer'), - 'isDate': require('./isDate'), - 'isElement': require('./isElement'), - 'isEmpty': require('./isEmpty'), - 'isEqual': require('./isEqual'), - 'isEqualWith': require('./isEqualWith'), - 'isError': require('./isError'), - 'isFinite': require('./isFinite'), - 'isFunction': require('./isFunction'), - 'isInteger': require('./isInteger'), - 'isLength': require('./isLength'), - 'isMap': require('./isMap'), - 'isMatch': require('./isMatch'), - 'isMatchWith': require('./isMatchWith'), - 'isNaN': require('./isNaN'), - 'isNative': require('./isNative'), - 'isNil': require('./isNil'), - 'isNull': require('./isNull'), - 'isNumber': require('./isNumber'), - 'isObject': require('./isObject'), - 'isObjectLike': require('./isObjectLike'), - 'isPlainObject': require('./isPlainObject'), - 'isRegExp': require('./isRegExp'), - 'isSafeInteger': require('./isSafeInteger'), - 'isSet': require('./isSet'), - 'isString': require('./isString'), - 'isSymbol': require('./isSymbol'), - 'isTypedArray': require('./isTypedArray'), - 'isUndefined': require('./isUndefined'), - 'isWeakMap': require('./isWeakMap'), - 'isWeakSet': require('./isWeakSet'), - 'lt': require('./lt'), - 'lte': require('./lte'), - 'toArray': require('./toArray'), - 'toFinite': require('./toFinite'), - 'toInteger': require('./toInteger'), - 'toLength': require('./toLength'), - 'toNumber': require('./toNumber'), - 'toPlainObject': require('./toPlainObject'), - 'toSafeInteger': require('./toSafeInteger'), - 'toString': require('./toString') -}; diff --git a/packages/frontend-core/node_modules/lodash/last.js b/packages/frontend-core/node_modules/lodash/last.js deleted file mode 100644 index cad1eafafa..0000000000 --- a/packages/frontend-core/node_modules/lodash/last.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Gets the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the last element of `array`. - * @example - * - * _.last([1, 2, 3]); - * // => 3 - */ -function last(array) { - var length = array == null ? 0 : array.length; - return length ? array[length - 1] : undefined; -} - -module.exports = last; diff --git a/packages/frontend-core/node_modules/lodash/lastIndexOf.js b/packages/frontend-core/node_modules/lodash/lastIndexOf.js deleted file mode 100644 index dabfb613a5..0000000000 --- a/packages/frontend-core/node_modules/lodash/lastIndexOf.js +++ /dev/null @@ -1,46 +0,0 @@ -var baseFindIndex = require('./_baseFindIndex'), - baseIsNaN = require('./_baseIsNaN'), - strictLastIndexOf = require('./_strictLastIndexOf'), - toInteger = require('./toInteger'); - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMax = Math.max, - nativeMin = Math.min; - -/** - * This method is like `_.indexOf` except that it iterates over elements of - * `array` from right to left. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.lastIndexOf([1, 2, 1, 2], 2); - * // => 3 - * - * // Search from the `fromIndex`. - * _.lastIndexOf([1, 2, 1, 2], 2, 2); - * // => 1 - */ -function lastIndexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); - } - return value === value - ? strictLastIndexOf(array, value, index) - : baseFindIndex(array, baseIsNaN, index, true); -} - -module.exports = lastIndexOf; diff --git a/packages/frontend-core/node_modules/lodash/lodash.js b/packages/frontend-core/node_modules/lodash/lodash.js deleted file mode 100644 index 4131e936cd..0000000000 --- a/packages/frontend-core/node_modules/lodash/lodash.js +++ /dev/null @@ -1,17209 +0,0 @@ -/** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */ -;(function() { - - /** Used as a safe reference for `undefined` in pre-ES5 environments. */ - var undefined; - - /** Used as the semantic version number. */ - var VERSION = '4.17.21'; - - /** Used as the size to enable large array optimizations. */ - var LARGE_ARRAY_SIZE = 200; - - /** Error message constants. */ - var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.', - FUNC_ERROR_TEXT = 'Expected a function', - INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`'; - - /** Used to stand-in for `undefined` hash values. */ - var HASH_UNDEFINED = '__lodash_hash_undefined__'; - - /** Used as the maximum memoize cache size. */ - var MAX_MEMOIZE_SIZE = 500; - - /** Used as the internal argument placeholder. */ - var PLACEHOLDER = '__lodash_placeholder__'; - - /** Used to compose bitmasks for cloning. */ - var CLONE_DEEP_FLAG = 1, - CLONE_FLAT_FLAG = 2, - CLONE_SYMBOLS_FLAG = 4; - - /** Used to compose bitmasks for value comparisons. */ - var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - - /** Used to compose bitmasks for function metadata. */ - var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_BOUND_FLAG = 4, - WRAP_CURRY_FLAG = 8, - WRAP_CURRY_RIGHT_FLAG = 16, - WRAP_PARTIAL_FLAG = 32, - WRAP_PARTIAL_RIGHT_FLAG = 64, - WRAP_ARY_FLAG = 128, - WRAP_REARG_FLAG = 256, - WRAP_FLIP_FLAG = 512; - - /** Used as default options for `_.truncate`. */ - var DEFAULT_TRUNC_LENGTH = 30, - DEFAULT_TRUNC_OMISSION = '...'; - - /** Used to detect hot functions by number of calls within a span of milliseconds. */ - var HOT_COUNT = 800, - HOT_SPAN = 16; - - /** Used to indicate the type of lazy iteratees. */ - var LAZY_FILTER_FLAG = 1, - LAZY_MAP_FLAG = 2, - LAZY_WHILE_FLAG = 3; - - /** Used as references for various `Number` constants. */ - var INFINITY = 1 / 0, - MAX_SAFE_INTEGER = 9007199254740991, - MAX_INTEGER = 1.7976931348623157e+308, - NAN = 0 / 0; - - /** Used as references for the maximum length and index of an array. */ - var MAX_ARRAY_LENGTH = 4294967295, - MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, - HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; - - /** Used to associate wrap methods with their bit flags. */ - var wrapFlags = [ - ['ary', WRAP_ARY_FLAG], - ['bind', WRAP_BIND_FLAG], - ['bindKey', WRAP_BIND_KEY_FLAG], - ['curry', WRAP_CURRY_FLAG], - ['curryRight', WRAP_CURRY_RIGHT_FLAG], - ['flip', WRAP_FLIP_FLAG], - ['partial', WRAP_PARTIAL_FLAG], - ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], - ['rearg', WRAP_REARG_FLAG] - ]; - - /** `Object#toString` result references. */ - var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - asyncTag = '[object AsyncFunction]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - domExcTag = '[object DOMException]', - errorTag = '[object Error]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - mapTag = '[object Map]', - numberTag = '[object Number]', - nullTag = '[object Null]', - objectTag = '[object Object]', - promiseTag = '[object Promise]', - proxyTag = '[object Proxy]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]', - undefinedTag = '[object Undefined]', - weakMapTag = '[object WeakMap]', - weakSetTag = '[object WeakSet]'; - - var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - - /** Used to match empty string literals in compiled template source. */ - var reEmptyStringLeading = /\b__p \+= '';/g, - reEmptyStringMiddle = /\b(__p \+=) '' \+/g, - reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; - - /** Used to match HTML entities and HTML characters. */ - var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, - reUnescapedHtml = /[&<>"']/g, - reHasEscapedHtml = RegExp(reEscapedHtml.source), - reHasUnescapedHtml = RegExp(reUnescapedHtml.source); - - /** Used to match template delimiters. */ - var reEscape = /<%-([\s\S]+?)%>/g, - reEvaluate = /<%([\s\S]+?)%>/g, - reInterpolate = /<%=([\s\S]+?)%>/g; - - /** Used to match property names within property paths. */ - var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, - reIsPlainProp = /^\w*$/, - rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; - - /** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ - var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, - reHasRegExpChar = RegExp(reRegExpChar.source); - - /** Used to match leading whitespace. */ - var reTrimStart = /^\s+/; - - /** Used to match a single whitespace character. */ - var reWhitespace = /\s/; - - /** Used to match wrap detail comments. */ - var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, - reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, - reSplitDetails = /,? & /; - - /** Used to match words composed of alphanumeric characters. */ - var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; - - /** - * Used to validate the `validate` option in `_.template` variable. - * - * Forbids characters which could potentially change the meaning of the function argument definition: - * - "()," (modification of function parameters) - * - "=" (default value) - * - "[]{}" (destructuring of function parameters) - * - "/" (beginning of a comment) - * - whitespace - */ - var reForbiddenIdentifierChars = /[()=,{}\[\]\/\s]/; - - /** Used to match backslashes in property paths. */ - var reEscapeChar = /\\(\\)?/g; - - /** - * Used to match - * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components). - */ - var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; - - /** Used to match `RegExp` flags from their coerced string values. */ - var reFlags = /\w*$/; - - /** Used to detect bad signed hexadecimal string values. */ - var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; - - /** Used to detect binary string values. */ - var reIsBinary = /^0b[01]+$/i; - - /** Used to detect host constructors (Safari). */ - var reIsHostCtor = /^\[object .+?Constructor\]$/; - - /** Used to detect octal string values. */ - var reIsOctal = /^0o[0-7]+$/i; - - /** Used to detect unsigned integer values. */ - var reIsUint = /^(?:0|[1-9]\d*)$/; - - /** Used to match Latin Unicode letters (excluding mathematical operators). */ - var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; - - /** Used to ensure capturing order of template delimiters. */ - var reNoMatch = /($^)/; - - /** Used to match unescaped characters in compiled string literals. */ - var reUnescapedString = /['\n\r\u2028\u2029\\]/g; - - /** Used to compose unicode character classes. */ - var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsDingbatRange = '\\u2700-\\u27bf', - rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', - rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', - rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', - rsPunctuationRange = '\\u2000-\\u206f', - rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', - rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', - rsVarRange = '\\ufe0e\\ufe0f', - rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; - - /** Used to compose unicode capture groups. */ - var rsApos = "['\u2019]", - rsAstral = '[' + rsAstralRange + ']', - rsBreak = '[' + rsBreakRange + ']', - rsCombo = '[' + rsComboRange + ']', - rsDigits = '\\d+', - rsDingbat = '[' + rsDingbatRange + ']', - rsLower = '[' + rsLowerRange + ']', - rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', - rsFitz = '\\ud83c[\\udffb-\\udfff]', - rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', - rsNonAstral = '[^' + rsAstralRange + ']', - rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', - rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', - rsUpper = '[' + rsUpperRange + ']', - rsZWJ = '\\u200d'; - - /** Used to compose unicode regexes. */ - var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', - rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', - rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', - rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', - reOptMod = rsModifier + '?', - rsOptVar = '[' + rsVarRange + ']?', - rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', - rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', - rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', - rsSeq = rsOptVar + reOptMod + rsOptJoin, - rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq, - rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; - - /** Used to match apostrophes. */ - var reApos = RegExp(rsApos, 'g'); - - /** - * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and - * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). - */ - var reComboMark = RegExp(rsCombo, 'g'); - - /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ - var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); - - /** Used to match complex or compound words. */ - var reUnicodeWord = RegExp([ - rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', - rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', - rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, - rsUpper + '+' + rsOptContrUpper, - rsOrdUpper, - rsOrdLower, - rsDigits, - rsEmoji - ].join('|'), 'g'); - - /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ - var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); - - /** Used to detect strings that need a more robust regexp to match words. */ - var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; - - /** Used to assign default `context` object properties. */ - var contextProps = [ - 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array', - 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object', - 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array', - 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap', - '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout' - ]; - - /** Used to make template sourceURLs easier to identify. */ - var templateCounter = -1; - - /** Used to identify `toStringTag` values of typed arrays. */ - var typedArrayTags = {}; - typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = - typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = - typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = - typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = - typedArrayTags[uint32Tag] = true; - typedArrayTags[argsTag] = typedArrayTags[arrayTag] = - typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = - typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = - typedArrayTags[errorTag] = typedArrayTags[funcTag] = - typedArrayTags[mapTag] = typedArrayTags[numberTag] = - typedArrayTags[objectTag] = typedArrayTags[regexpTag] = - typedArrayTags[setTag] = typedArrayTags[stringTag] = - typedArrayTags[weakMapTag] = false; - - /** Used to identify `toStringTag` values supported by `_.clone`. */ - var cloneableTags = {}; - cloneableTags[argsTag] = cloneableTags[arrayTag] = - cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = - cloneableTags[boolTag] = cloneableTags[dateTag] = - cloneableTags[float32Tag] = cloneableTags[float64Tag] = - cloneableTags[int8Tag] = cloneableTags[int16Tag] = - cloneableTags[int32Tag] = cloneableTags[mapTag] = - cloneableTags[numberTag] = cloneableTags[objectTag] = - cloneableTags[regexpTag] = cloneableTags[setTag] = - cloneableTags[stringTag] = cloneableTags[symbolTag] = - cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = - cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; - cloneableTags[errorTag] = cloneableTags[funcTag] = - cloneableTags[weakMapTag] = false; - - /** Used to map Latin Unicode letters to basic Latin letters. */ - var deburredLetters = { - // Latin-1 Supplement block. - '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', - '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', - '\xc7': 'C', '\xe7': 'c', - '\xd0': 'D', '\xf0': 'd', - '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', - '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', - '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', - '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', - '\xd1': 'N', '\xf1': 'n', - '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', - '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', - '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', - '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', - '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', - '\xc6': 'Ae', '\xe6': 'ae', - '\xde': 'Th', '\xfe': 'th', - '\xdf': 'ss', - // Latin Extended-A block. - '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', - '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', - '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', - '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', - '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', - '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', - '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', - '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', - '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', - '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', - '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', - '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', - '\u0134': 'J', '\u0135': 'j', - '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', - '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', - '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', - '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', - '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', - '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', - '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', - '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', - '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', - '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', - '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', - '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', - '\u0163': 't', '\u0165': 't', '\u0167': 't', - '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', - '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', - '\u0174': 'W', '\u0175': 'w', - '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', - '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', - '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', - '\u0132': 'IJ', '\u0133': 'ij', - '\u0152': 'Oe', '\u0153': 'oe', - '\u0149': "'n", '\u017f': 's' - }; - - /** Used to map characters to HTML entities. */ - var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' - }; - - /** Used to map HTML entities to characters. */ - var htmlUnescapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" - }; - - /** Used to escape characters for inclusion in compiled string literals. */ - var stringEscapes = { - '\\': '\\', - "'": "'", - '\n': 'n', - '\r': 'r', - '\u2028': 'u2028', - '\u2029': 'u2029' - }; - - /** Built-in method references without a dependency on `root`. */ - var freeParseFloat = parseFloat, - freeParseInt = parseInt; - - /** Detect free variable `global` from Node.js. */ - var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - - /** Detect free variable `self`. */ - var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - - /** Used as a reference to the global object. */ - var root = freeGlobal || freeSelf || Function('return this')(); - - /** Detect free variable `exports`. */ - var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - - /** Detect free variable `module`. */ - var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - - /** Detect the popular CommonJS extension `module.exports`. */ - var moduleExports = freeModule && freeModule.exports === freeExports; - - /** Detect free variable `process` from Node.js. */ - var freeProcess = moduleExports && freeGlobal.process; - - /** Used to access faster Node.js helpers. */ - var nodeUtil = (function() { - try { - // Use `util.types` for Node.js 10+. - var types = freeModule && freeModule.require && freeModule.require('util').types; - - if (types) { - return types; - } - - // Legacy `process.binding('util')` for Node.js < 10. - return freeProcess && freeProcess.binding && freeProcess.binding('util'); - } catch (e) {} - }()); - - /* Node.js helper references. */ - var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, - nodeIsDate = nodeUtil && nodeUtil.isDate, - nodeIsMap = nodeUtil && nodeUtil.isMap, - nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, - nodeIsSet = nodeUtil && nodeUtil.isSet, - nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - - /*--------------------------------------------------------------------------*/ - - /** - * A faster alternative to `Function#apply`, this function invokes `func` - * with the `this` binding of `thisArg` and the arguments of `args`. - * - * @private - * @param {Function} func The function to invoke. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} args The arguments to invoke `func` with. - * @returns {*} Returns the result of `func`. - */ - function apply(func, thisArg, args) { - switch (args.length) { - case 0: return func.call(thisArg); - case 1: return func.call(thisArg, args[0]); - case 2: return func.call(thisArg, args[0], args[1]); - case 3: return func.call(thisArg, args[0], args[1], args[2]); - } - return func.apply(thisArg, args); - } - - /** - * A specialized version of `baseAggregator` for arrays. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ - function arrayAggregator(array, setter, iteratee, accumulator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - var value = array[index]; - setter(accumulator, value, iteratee(value), array); - } - return accumulator; - } - - /** - * A specialized version of `_.forEach` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ - function arrayEach(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (iteratee(array[index], index, array) === false) { - break; - } - } - return array; - } - - /** - * A specialized version of `_.forEachRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ - function arrayEachRight(array, iteratee) { - var length = array == null ? 0 : array.length; - - while (length--) { - if (iteratee(array[length], length, array) === false) { - break; - } - } - return array; - } - - /** - * A specialized version of `_.every` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - */ - function arrayEvery(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (!predicate(array[index], index, array)) { - return false; - } - } - return true; - } - - /** - * A specialized version of `_.filter` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ - function arrayFilter(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; - } - } - return result; - } - - /** - * A specialized version of `_.includes` for arrays without support for - * specifying an index to search from. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ - function arrayIncludes(array, value) { - var length = array == null ? 0 : array.length; - return !!length && baseIndexOf(array, value, 0) > -1; - } - - /** - * This function is like `arrayIncludes` except that it accepts a comparator. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @param {Function} comparator The comparator invoked per element. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ - function arrayIncludesWith(array, value, comparator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (comparator(value, array[index])) { - return true; - } - } - return false; - } - - /** - * A specialized version of `_.map` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ - function arrayMap(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length, - result = Array(length); - - while (++index < length) { - result[index] = iteratee(array[index], index, array); - } - return result; - } - - /** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ - function arrayPush(array, values) { - var index = -1, - length = values.length, - offset = array.length; - - while (++index < length) { - array[offset + index] = values[index]; - } - return array; - } - - /** - * A specialized version of `_.reduce` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the first element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ - function arrayReduce(array, iteratee, accumulator, initAccum) { - var index = -1, - length = array == null ? 0 : array.length; - - if (initAccum && length) { - accumulator = array[++index]; - } - while (++index < length) { - accumulator = iteratee(accumulator, array[index], index, array); - } - return accumulator; - } - - /** - * A specialized version of `_.reduceRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the last element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ - function arrayReduceRight(array, iteratee, accumulator, initAccum) { - var length = array == null ? 0 : array.length; - if (initAccum && length) { - accumulator = array[--length]; - } - while (length--) { - accumulator = iteratee(accumulator, array[length], length, array); - } - return accumulator; - } - - /** - * A specialized version of `_.some` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ - function arraySome(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; - } - } - return false; - } - - /** - * Gets the size of an ASCII `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ - var asciiSize = baseProperty('length'); - - /** - * Converts an ASCII `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function asciiToArray(string) { - return string.split(''); - } - - /** - * Splits an ASCII `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ - function asciiWords(string) { - return string.match(reAsciiWord) || []; - } - - /** - * The base implementation of methods like `_.findKey` and `_.findLastKey`, - * without support for iteratee shorthands, which iterates over `collection` - * using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the found element or its key, else `undefined`. - */ - function baseFindKey(collection, predicate, eachFunc) { - var result; - eachFunc(collection, function(value, key, collection) { - if (predicate(value, key, collection)) { - result = key; - return false; - } - }); - return result; - } - - /** - * The base implementation of `_.findIndex` and `_.findLastIndex` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {number} fromIndex The index to search from. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseFindIndex(array, predicate, fromIndex, fromRight) { - var length = array.length, - index = fromIndex + (fromRight ? 1 : -1); - - while ((fromRight ? index-- : ++index < length)) { - if (predicate(array[index], index, array)) { - return index; - } - } - return -1; - } - - /** - * The base implementation of `_.indexOf` without `fromIndex` bounds checks. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseIndexOf(array, value, fromIndex) { - return value === value - ? strictIndexOf(array, value, fromIndex) - : baseFindIndex(array, baseIsNaN, fromIndex); - } - - /** - * This function is like `baseIndexOf` except that it accepts a comparator. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @param {Function} comparator The comparator invoked per element. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseIndexOfWith(array, value, fromIndex, comparator) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (comparator(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * The base implementation of `_.isNaN` without support for number objects. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - */ - function baseIsNaN(value) { - return value !== value; - } - - /** - * The base implementation of `_.mean` and `_.meanBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the mean. - */ - function baseMean(array, iteratee) { - var length = array == null ? 0 : array.length; - return length ? (baseSum(array, iteratee) / length) : NAN; - } - - /** - * The base implementation of `_.property` without support for deep paths. - * - * @private - * @param {string} key The key of the property to get. - * @returns {Function} Returns the new accessor function. - */ - function baseProperty(key) { - return function(object) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.propertyOf` without support for deep paths. - * - * @private - * @param {Object} object The object to query. - * @returns {Function} Returns the new accessor function. - */ - function basePropertyOf(object) { - return function(key) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.reduce` and `_.reduceRight`, without support - * for iteratee shorthands, which iterates over `collection` using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} accumulator The initial value. - * @param {boolean} initAccum Specify using the first or last element of - * `collection` as the initial value. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the accumulated value. - */ - function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { - eachFunc(collection, function(value, index, collection) { - accumulator = initAccum - ? (initAccum = false, value) - : iteratee(accumulator, value, index, collection); - }); - return accumulator; - } - - /** - * The base implementation of `_.sortBy` which uses `comparer` to define the - * sort order of `array` and replaces criteria objects with their corresponding - * values. - * - * @private - * @param {Array} array The array to sort. - * @param {Function} comparer The function to define sort order. - * @returns {Array} Returns `array`. - */ - function baseSortBy(array, comparer) { - var length = array.length; - - array.sort(comparer); - while (length--) { - array[length] = array[length].value; - } - return array; - } - - /** - * The base implementation of `_.sum` and `_.sumBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the sum. - */ - function baseSum(array, iteratee) { - var result, - index = -1, - length = array.length; - - while (++index < length) { - var current = iteratee(array[index]); - if (current !== undefined) { - result = result === undefined ? current : (result + current); - } - } - return result; - } - - /** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ - function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; - } - - /** - * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array - * of key-value pairs for `object` corresponding to the property names of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the key-value pairs. - */ - function baseToPairs(object, props) { - return arrayMap(props, function(key) { - return [key, object[key]]; - }); - } - - /** - * The base implementation of `_.trim`. - * - * @private - * @param {string} string The string to trim. - * @returns {string} Returns the trimmed string. - */ - function baseTrim(string) { - return string - ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') - : string; - } - - /** - * The base implementation of `_.unary` without support for storing metadata. - * - * @private - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - */ - function baseUnary(func) { - return function(value) { - return func(value); - }; - } - - /** - * The base implementation of `_.values` and `_.valuesIn` which creates an - * array of `object` property values corresponding to the property names - * of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the array of property values. - */ - function baseValues(object, props) { - return arrayMap(props, function(key) { - return object[key]; - }); - } - - /** - * Checks if a `cache` value for `key` exists. - * - * @private - * @param {Object} cache The cache to query. - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function cacheHas(cache, key) { - return cache.has(key); - } - - /** - * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the first unmatched string symbol. - */ - function charsStartIndex(strSymbols, chrSymbols) { - var index = -1, - length = strSymbols.length; - - while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; - } - - /** - * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the last unmatched string symbol. - */ - function charsEndIndex(strSymbols, chrSymbols) { - var index = strSymbols.length; - - while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; - } - - /** - * Gets the number of `placeholder` occurrences in `array`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} placeholder The placeholder to search for. - * @returns {number} Returns the placeholder count. - */ - function countHolders(array, placeholder) { - var length = array.length, - result = 0; - - while (length--) { - if (array[length] === placeholder) { - ++result; - } - } - return result; - } - - /** - * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A - * letters to basic Latin letters. - * - * @private - * @param {string} letter The matched letter to deburr. - * @returns {string} Returns the deburred letter. - */ - var deburrLetter = basePropertyOf(deburredLetters); - - /** - * Used by `_.escape` to convert characters to HTML entities. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ - var escapeHtmlChar = basePropertyOf(htmlEscapes); - - /** - * Used by `_.template` to escape characters for inclusion in compiled string literals. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ - function escapeStringChar(chr) { - return '\\' + stringEscapes[chr]; - } - - /** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ - function getValue(object, key) { - return object == null ? undefined : object[key]; - } - - /** - * Checks if `string` contains Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a symbol is found, else `false`. - */ - function hasUnicode(string) { - return reHasUnicode.test(string); - } - - /** - * Checks if `string` contains a word composed of Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a word is found, else `false`. - */ - function hasUnicodeWord(string) { - return reHasUnicodeWord.test(string); - } - - /** - * Converts `iterator` to an array. - * - * @private - * @param {Object} iterator The iterator to convert. - * @returns {Array} Returns the converted array. - */ - function iteratorToArray(iterator) { - var data, - result = []; - - while (!(data = iterator.next()).done) { - result.push(data.value); - } - return result; - } - - /** - * Converts `map` to its key-value pairs. - * - * @private - * @param {Object} map The map to convert. - * @returns {Array} Returns the key-value pairs. - */ - function mapToArray(map) { - var index = -1, - result = Array(map.size); - - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; - } - - /** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ - function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; - } - - /** - * Replaces all `placeholder` elements in `array` with an internal placeholder - * and returns an array of their indexes. - * - * @private - * @param {Array} array The array to modify. - * @param {*} placeholder The placeholder to replace. - * @returns {Array} Returns the new array of placeholder indexes. - */ - function replaceHolders(array, placeholder) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value === placeholder || value === PLACEHOLDER) { - array[index] = PLACEHOLDER; - result[resIndex++] = index; - } - } - return result; - } - - /** - * Converts `set` to an array of its values. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the values. - */ - function setToArray(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = value; - }); - return result; - } - - /** - * Converts `set` to its value-value pairs. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the value-value pairs. - */ - function setToPairs(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = [value, value]; - }); - return result; - } - - /** - * A specialized version of `_.indexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function strictIndexOf(array, value, fromIndex) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (array[index] === value) { - return index; - } - } - return -1; - } - - /** - * A specialized version of `_.lastIndexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function strictLastIndexOf(array, value, fromIndex) { - var index = fromIndex + 1; - while (index--) { - if (array[index] === value) { - return index; - } - } - return index; - } - - /** - * Gets the number of symbols in `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the string size. - */ - function stringSize(string) { - return hasUnicode(string) - ? unicodeSize(string) - : asciiSize(string); - } - - /** - * Converts `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function stringToArray(string) { - return hasUnicode(string) - ? unicodeToArray(string) - : asciiToArray(string); - } - - /** - * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace - * character of `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the index of the last non-whitespace character. - */ - function trimmedEndIndex(string) { - var index = string.length; - - while (index-- && reWhitespace.test(string.charAt(index))) {} - return index; - } - - /** - * Used by `_.unescape` to convert HTML entities to characters. - * - * @private - * @param {string} chr The matched character to unescape. - * @returns {string} Returns the unescaped character. - */ - var unescapeHtmlChar = basePropertyOf(htmlUnescapes); - - /** - * Gets the size of a Unicode `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ - function unicodeSize(string) { - var result = reUnicode.lastIndex = 0; - while (reUnicode.test(string)) { - ++result; - } - return result; - } - - /** - * Converts a Unicode `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function unicodeToArray(string) { - return string.match(reUnicode) || []; - } - - /** - * Splits a Unicode `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ - function unicodeWords(string) { - return string.match(reUnicodeWord) || []; - } - - /*--------------------------------------------------------------------------*/ - - /** - * Create a new pristine `lodash` function using the `context` object. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Util - * @param {Object} [context=root] The context object. - * @returns {Function} Returns a new `lodash` function. - * @example - * - * _.mixin({ 'foo': _.constant('foo') }); - * - * var lodash = _.runInContext(); - * lodash.mixin({ 'bar': lodash.constant('bar') }); - * - * _.isFunction(_.foo); - * // => true - * _.isFunction(_.bar); - * // => false - * - * lodash.isFunction(lodash.foo); - * // => false - * lodash.isFunction(lodash.bar); - * // => true - * - * // Create a suped-up `defer` in Node.js. - * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer; - */ - var runInContext = (function runInContext(context) { - context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps)); - - /** Built-in constructor references. */ - var Array = context.Array, - Date = context.Date, - Error = context.Error, - Function = context.Function, - Math = context.Math, - Object = context.Object, - RegExp = context.RegExp, - String = context.String, - TypeError = context.TypeError; - - /** Used for built-in method references. */ - var arrayProto = Array.prototype, - funcProto = Function.prototype, - objectProto = Object.prototype; - - /** Used to detect overreaching core-js shims. */ - var coreJsData = context['__core-js_shared__']; - - /** Used to resolve the decompiled source of functions. */ - var funcToString = funcProto.toString; - - /** Used to check objects for own properties. */ - var hasOwnProperty = objectProto.hasOwnProperty; - - /** Used to generate unique IDs. */ - var idCounter = 0; - - /** Used to detect methods masquerading as native. */ - var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; - }()); - - /** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ - var nativeObjectToString = objectProto.toString; - - /** Used to infer the `Object` constructor. */ - var objectCtorString = funcToString.call(Object); - - /** Used to restore the original `_` reference in `_.noConflict`. */ - var oldDash = root._; - - /** Used to detect if a method is native. */ - var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' - ); - - /** Built-in value references. */ - var Buffer = moduleExports ? context.Buffer : undefined, - Symbol = context.Symbol, - Uint8Array = context.Uint8Array, - allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined, - getPrototype = overArg(Object.getPrototypeOf, Object), - objectCreate = Object.create, - propertyIsEnumerable = objectProto.propertyIsEnumerable, - splice = arrayProto.splice, - spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined, - symIterator = Symbol ? Symbol.iterator : undefined, - symToStringTag = Symbol ? Symbol.toStringTag : undefined; - - var defineProperty = (function() { - try { - var func = getNative(Object, 'defineProperty'); - func({}, '', {}); - return func; - } catch (e) {} - }()); - - /** Mocked built-ins. */ - var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, - ctxNow = Date && Date.now !== root.Date.now && Date.now, - ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; - - /* Built-in method references for those with the same name as other `lodash` methods. */ - var nativeCeil = Math.ceil, - nativeFloor = Math.floor, - nativeGetSymbols = Object.getOwnPropertySymbols, - nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, - nativeIsFinite = context.isFinite, - nativeJoin = arrayProto.join, - nativeKeys = overArg(Object.keys, Object), - nativeMax = Math.max, - nativeMin = Math.min, - nativeNow = Date.now, - nativeParseInt = context.parseInt, - nativeRandom = Math.random, - nativeReverse = arrayProto.reverse; - - /* Built-in method references that are verified to be native. */ - var DataView = getNative(context, 'DataView'), - Map = getNative(context, 'Map'), - Promise = getNative(context, 'Promise'), - Set = getNative(context, 'Set'), - WeakMap = getNative(context, 'WeakMap'), - nativeCreate = getNative(Object, 'create'); - - /** Used to store function metadata. */ - var metaMap = WeakMap && new WeakMap; - - /** Used to lookup unminified function names. */ - var realNames = {}; - - /** Used to detect maps, sets, and weakmaps. */ - var dataViewCtorString = toSource(DataView), - mapCtorString = toSource(Map), - promiseCtorString = toSource(Promise), - setCtorString = toSource(Set), - weakMapCtorString = toSource(WeakMap); - - /** Used to convert symbols to primitives and strings. */ - var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, - symbolToString = symbolProto ? symbolProto.toString : undefined; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` object which wraps `value` to enable implicit method - * chain sequences. Methods that operate on and return arrays, collections, - * and functions can be chained together. Methods that retrieve a single value - * or may return a primitive value will automatically end the chain sequence - * and return the unwrapped value. Otherwise, the value must be unwrapped - * with `_#value`. - * - * Explicit chain sequences, which must be unwrapped with `_#value`, may be - * enabled using `_.chain`. - * - * The execution of chained methods is lazy, that is, it's deferred until - * `_#value` is implicitly or explicitly called. - * - * Lazy evaluation allows several methods to support shortcut fusion. - * Shortcut fusion is an optimization to merge iteratee calls; this avoids - * the creation of intermediate arrays and can greatly reduce the number of - * iteratee executions. Sections of a chain sequence qualify for shortcut - * fusion if the section is applied to an array and iteratees accept only - * one argument. The heuristic for whether a section qualifies for shortcut - * fusion is subject to change. - * - * Chaining is supported in custom builds as long as the `_#value` method is - * directly or indirectly included in the build. - * - * In addition to lodash methods, wrappers have `Array` and `String` methods. - * - * The wrapper `Array` methods are: - * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` - * - * The wrapper `String` methods are: - * `replace` and `split` - * - * The wrapper methods that support shortcut fusion are: - * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, - * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, - * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` - * - * The chainable wrapper methods are: - * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, - * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, - * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, - * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, - * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, - * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, - * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, - * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, - * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, - * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, - * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, - * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, - * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, - * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, - * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, - * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, - * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, - * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, - * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, - * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, - * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, - * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, - * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, - * `zipObject`, `zipObjectDeep`, and `zipWith` - * - * The wrapper methods that are **not** chainable by default are: - * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, - * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, - * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, - * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, - * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, - * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, - * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, - * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, - * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, - * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, - * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, - * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, - * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, - * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, - * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, - * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, - * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, - * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, - * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, - * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, - * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, - * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, - * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, - * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, - * `upperFirst`, `value`, and `words` - * - * @name _ - * @constructor - * @category Seq - * @param {*} value The value to wrap in a `lodash` instance. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * function square(n) { - * return n * n; - * } - * - * var wrapped = _([1, 2, 3]); - * - * // Returns an unwrapped value. - * wrapped.reduce(_.add); - * // => 6 - * - * // Returns a wrapped value. - * var squares = wrapped.map(square); - * - * _.isArray(squares); - * // => false - * - * _.isArray(squares.value()); - * // => true - */ - function lodash(value) { - if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { - if (value instanceof LodashWrapper) { - return value; - } - if (hasOwnProperty.call(value, '__wrapped__')) { - return wrapperClone(value); - } - } - return new LodashWrapper(value); - } - - /** - * The base implementation of `_.create` without support for assigning - * properties to the created object. - * - * @private - * @param {Object} proto The object to inherit from. - * @returns {Object} Returns the new object. - */ - var baseCreate = (function() { - function object() {} - return function(proto) { - if (!isObject(proto)) { - return {}; - } - if (objectCreate) { - return objectCreate(proto); - } - object.prototype = proto; - var result = new object; - object.prototype = undefined; - return result; - }; - }()); - - /** - * The function whose prototype chain sequence wrappers inherit from. - * - * @private - */ - function baseLodash() { - // No operation performed. - } - - /** - * The base constructor for creating `lodash` wrapper objects. - * - * @private - * @param {*} value The value to wrap. - * @param {boolean} [chainAll] Enable explicit method chain sequences. - */ - function LodashWrapper(value, chainAll) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__chain__ = !!chainAll; - this.__index__ = 0; - this.__values__ = undefined; - } - - /** - * By default, the template delimiters used by lodash are like those in - * embedded Ruby (ERB) as well as ES2015 template strings. Change the - * following template settings to use alternative delimiters. - * - * @static - * @memberOf _ - * @type {Object} - */ - lodash.templateSettings = { - - /** - * Used to detect `data` property values to be HTML-escaped. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'escape': reEscape, - - /** - * Used to detect code to be evaluated. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'evaluate': reEvaluate, - - /** - * Used to detect `data` property values to inject. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'interpolate': reInterpolate, - - /** - * Used to reference the data object in the template text. - * - * @memberOf _.templateSettings - * @type {string} - */ - 'variable': '', - - /** - * Used to import variables into the compiled template. - * - * @memberOf _.templateSettings - * @type {Object} - */ - 'imports': { - - /** - * A reference to the `lodash` function. - * - * @memberOf _.templateSettings.imports - * @type {Function} - */ - '_': lodash - } - }; - - // Ensure wrappers are instances of `baseLodash`. - lodash.prototype = baseLodash.prototype; - lodash.prototype.constructor = lodash; - - LodashWrapper.prototype = baseCreate(baseLodash.prototype); - LodashWrapper.prototype.constructor = LodashWrapper; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. - * - * @private - * @constructor - * @param {*} value The value to wrap. - */ - function LazyWrapper(value) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__dir__ = 1; - this.__filtered__ = false; - this.__iteratees__ = []; - this.__takeCount__ = MAX_ARRAY_LENGTH; - this.__views__ = []; - } - - /** - * Creates a clone of the lazy wrapper object. - * - * @private - * @name clone - * @memberOf LazyWrapper - * @returns {Object} Returns the cloned `LazyWrapper` object. - */ - function lazyClone() { - var result = new LazyWrapper(this.__wrapped__); - result.__actions__ = copyArray(this.__actions__); - result.__dir__ = this.__dir__; - result.__filtered__ = this.__filtered__; - result.__iteratees__ = copyArray(this.__iteratees__); - result.__takeCount__ = this.__takeCount__; - result.__views__ = copyArray(this.__views__); - return result; - } - - /** - * Reverses the direction of lazy iteration. - * - * @private - * @name reverse - * @memberOf LazyWrapper - * @returns {Object} Returns the new reversed `LazyWrapper` object. - */ - function lazyReverse() { - if (this.__filtered__) { - var result = new LazyWrapper(this); - result.__dir__ = -1; - result.__filtered__ = true; - } else { - result = this.clone(); - result.__dir__ *= -1; - } - return result; - } - - /** - * Extracts the unwrapped value from its lazy wrapper. - * - * @private - * @name value - * @memberOf LazyWrapper - * @returns {*} Returns the unwrapped value. - */ - function lazyValue() { - var array = this.__wrapped__.value(), - dir = this.__dir__, - isArr = isArray(array), - isRight = dir < 0, - arrLength = isArr ? array.length : 0, - view = getView(0, arrLength, this.__views__), - start = view.start, - end = view.end, - length = end - start, - index = isRight ? end : (start - 1), - iteratees = this.__iteratees__, - iterLength = iteratees.length, - resIndex = 0, - takeCount = nativeMin(length, this.__takeCount__); - - if (!isArr || (!isRight && arrLength == length && takeCount == length)) { - return baseWrapperValue(array, this.__actions__); - } - var result = []; - - outer: - while (length-- && resIndex < takeCount) { - index += dir; - - var iterIndex = -1, - value = array[index]; - - while (++iterIndex < iterLength) { - var data = iteratees[iterIndex], - iteratee = data.iteratee, - type = data.type, - computed = iteratee(value); - - if (type == LAZY_MAP_FLAG) { - value = computed; - } else if (!computed) { - if (type == LAZY_FILTER_FLAG) { - continue outer; - } else { - break outer; - } - } - } - result[resIndex++] = value; - } - return result; - } - - // Ensure `LazyWrapper` is an instance of `baseLodash`. - LazyWrapper.prototype = baseCreate(baseLodash.prototype); - LazyWrapper.prototype.constructor = LazyWrapper; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function Hash(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ - function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; - } - - /** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; - } - - /** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; - } - - /** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function hashHas(key) { - var data = this.__data__; - return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); - } - - /** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ - function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; - } - - // Add methods to `Hash`. - Hash.prototype.clear = hashClear; - Hash.prototype['delete'] = hashDelete; - Hash.prototype.get = hashGet; - Hash.prototype.has = hashHas; - Hash.prototype.set = hashSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function ListCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ - function listCacheClear() { - this.__data__ = []; - this.size = 0; - } - - /** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - --this.size; - return true; - } - - /** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; - } - - /** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; - } - - /** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ - function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; - } - - // Add methods to `ListCache`. - ListCache.prototype.clear = listCacheClear; - ListCache.prototype['delete'] = listCacheDelete; - ListCache.prototype.get = listCacheGet; - ListCache.prototype.has = listCacheHas; - ListCache.prototype.set = listCacheSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function MapCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ - function mapCacheClear() { - this.size = 0; - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; - } - - /** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function mapCacheDelete(key) { - var result = getMapData(this, key)['delete'](key); - this.size -= result ? 1 : 0; - return result; - } - - /** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function mapCacheGet(key) { - return getMapData(this, key).get(key); - } - - /** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function mapCacheHas(key) { - return getMapData(this, key).has(key); - } - - /** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ - function mapCacheSet(key, value) { - var data = getMapData(this, key), - size = data.size; - - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; - } - - // Add methods to `MapCache`. - MapCache.prototype.clear = mapCacheClear; - MapCache.prototype['delete'] = mapCacheDelete; - MapCache.prototype.get = mapCacheGet; - MapCache.prototype.has = mapCacheHas; - MapCache.prototype.set = mapCacheSet; - - /*------------------------------------------------------------------------*/ - - /** - * - * Creates an array cache object to store unique values. - * - * @private - * @constructor - * @param {Array} [values] The values to cache. - */ - function SetCache(values) { - var index = -1, - length = values == null ? 0 : values.length; - - this.__data__ = new MapCache; - while (++index < length) { - this.add(values[index]); - } - } - - /** - * Adds `value` to the array cache. - * - * @private - * @name add - * @memberOf SetCache - * @alias push - * @param {*} value The value to cache. - * @returns {Object} Returns the cache instance. - */ - function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; - } - - /** - * Checks if `value` is in the array cache. - * - * @private - * @name has - * @memberOf SetCache - * @param {*} value The value to search for. - * @returns {number} Returns `true` if `value` is found, else `false`. - */ - function setCacheHas(value) { - return this.__data__.has(value); - } - - // Add methods to `SetCache`. - SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; - SetCache.prototype.has = setCacheHas; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a stack cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; - } - - /** - * Removes all key-value entries from the stack. - * - * @private - * @name clear - * @memberOf Stack - */ - function stackClear() { - this.__data__ = new ListCache; - this.size = 0; - } - - /** - * Removes `key` and its value from the stack. - * - * @private - * @name delete - * @memberOf Stack - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function stackDelete(key) { - var data = this.__data__, - result = data['delete'](key); - - this.size = data.size; - return result; - } - - /** - * Gets the stack value for `key`. - * - * @private - * @name get - * @memberOf Stack - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function stackGet(key) { - return this.__data__.get(key); - } - - /** - * Checks if a stack value for `key` exists. - * - * @private - * @name has - * @memberOf Stack - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function stackHas(key) { - return this.__data__.has(key); - } - - /** - * Sets the stack `key` to `value`. - * - * @private - * @name set - * @memberOf Stack - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the stack cache instance. - */ - function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { - pairs.push([key, value]); - this.size = ++data.size; - return this; - } - data = this.__data__ = new MapCache(pairs); - } - data.set(key, value); - this.size = data.size; - return this; - } - - // Add methods to `Stack`. - Stack.prototype.clear = stackClear; - Stack.prototype['delete'] = stackDelete; - Stack.prototype.get = stackGet; - Stack.prototype.has = stackHas; - Stack.prototype.set = stackSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates an array of the enumerable property names of the array-like `value`. - * - * @private - * @param {*} value The value to query. - * @param {boolean} inherited Specify returning inherited property names. - * @returns {Array} Returns the array of property names. - */ - function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), - isArg = !isArr && isArguments(value), - isBuff = !isArr && !isArg && isBuffer(value), - isType = !isArr && !isArg && !isBuff && isTypedArray(value), - skipIndexes = isArr || isArg || isBuff || isType, - result = skipIndexes ? baseTimes(value.length, String) : [], - length = result.length; - - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && - !(skipIndexes && ( - // Safari 9 has enumerable `arguments.length` in strict mode. - key == 'length' || - // Node.js 0.10 has enumerable non-index properties on buffers. - (isBuff && (key == 'offset' || key == 'parent')) || - // PhantomJS 2 has enumerable non-index properties on typed arrays. - (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || - // Skip index properties. - isIndex(key, length) - ))) { - result.push(key); - } - } - return result; - } - - /** - * A specialized version of `_.sample` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @returns {*} Returns the random element. - */ - function arraySample(array) { - var length = array.length; - return length ? array[baseRandom(0, length - 1)] : undefined; - } - - /** - * A specialized version of `_.sampleSize` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ - function arraySampleSize(array, n) { - return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); - } - - /** - * A specialized version of `_.shuffle` for arrays. - * - * @private - * @param {Array} array The array to shuffle. - * @returns {Array} Returns the new shuffled array. - */ - function arrayShuffle(array) { - return shuffleSelf(copyArray(array)); - } - - /** - * This function is like `assignValue` except that it doesn't assign - * `undefined` values. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function assignMergeValue(object, key, value) { - if ((value !== undefined && !eq(object[key], value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } - } - - /** - * Assigns `value` to `key` of `object` if the existing value is not equivalent - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } - } - - /** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; - } - - /** - * Aggregates elements of `collection` on `accumulator` with keys transformed - * by `iteratee` and values set by `setter`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ - function baseAggregator(collection, setter, iteratee, accumulator) { - baseEach(collection, function(value, key, collection) { - setter(accumulator, value, iteratee(value), collection); - }); - return accumulator; - } - - /** - * The base implementation of `_.assign` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ - function baseAssign(object, source) { - return object && copyObject(source, keys(source), object); - } - - /** - * The base implementation of `_.assignIn` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ - function baseAssignIn(object, source) { - return object && copyObject(source, keysIn(source), object); - } - - /** - * The base implementation of `assignValue` and `assignMergeValue` without - * value checks. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function baseAssignValue(object, key, value) { - if (key == '__proto__' && defineProperty) { - defineProperty(object, key, { - 'configurable': true, - 'enumerable': true, - 'value': value, - 'writable': true - }); - } else { - object[key] = value; - } - } - - /** - * The base implementation of `_.at` without support for individual paths. - * - * @private - * @param {Object} object The object to iterate over. - * @param {string[]} paths The property paths to pick. - * @returns {Array} Returns the picked elements. - */ - function baseAt(object, paths) { - var index = -1, - length = paths.length, - result = Array(length), - skip = object == null; - - while (++index < length) { - result[index] = skip ? undefined : get(object, paths[index]); - } - return result; - } - - /** - * The base implementation of `_.clamp` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - */ - function baseClamp(number, lower, upper) { - if (number === number) { - if (upper !== undefined) { - number = number <= upper ? number : upper; - } - if (lower !== undefined) { - number = number >= lower ? number : lower; - } - } - return number; - } - - /** - * The base implementation of `_.clone` and `_.cloneDeep` which tracks - * traversed objects. - * - * @private - * @param {*} value The value to clone. - * @param {boolean} bitmask The bitmask flags. - * 1 - Deep clone - * 2 - Flatten inherited properties - * 4 - Clone symbols - * @param {Function} [customizer] The function to customize cloning. - * @param {string} [key] The key of `value`. - * @param {Object} [object] The parent object of `value`. - * @param {Object} [stack] Tracks traversed objects and their clone counterparts. - * @returns {*} Returns the cloned value. - */ - function baseClone(value, bitmask, customizer, key, object, stack) { - var result, - isDeep = bitmask & CLONE_DEEP_FLAG, - isFlat = bitmask & CLONE_FLAT_FLAG, - isFull = bitmask & CLONE_SYMBOLS_FLAG; - - if (customizer) { - result = object ? customizer(value, key, object, stack) : customizer(value); - } - if (result !== undefined) { - return result; - } - if (!isObject(value)) { - return value; - } - var isArr = isArray(value); - if (isArr) { - result = initCloneArray(value); - if (!isDeep) { - return copyArray(value, result); - } - } else { - var tag = getTag(value), - isFunc = tag == funcTag || tag == genTag; - - if (isBuffer(value)) { - return cloneBuffer(value, isDeep); - } - if (tag == objectTag || tag == argsTag || (isFunc && !object)) { - result = (isFlat || isFunc) ? {} : initCloneObject(value); - if (!isDeep) { - return isFlat - ? copySymbolsIn(value, baseAssignIn(result, value)) - : copySymbols(value, baseAssign(result, value)); - } - } else { - if (!cloneableTags[tag]) { - return object ? value : {}; - } - result = initCloneByTag(value, tag, isDeep); - } - } - // Check for circular references and return its corresponding clone. - stack || (stack = new Stack); - var stacked = stack.get(value); - if (stacked) { - return stacked; - } - stack.set(value, result); - - if (isSet(value)) { - value.forEach(function(subValue) { - result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); - }); - } else if (isMap(value)) { - value.forEach(function(subValue, key) { - result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - } - - var keysFunc = isFull - ? (isFlat ? getAllKeysIn : getAllKeys) - : (isFlat ? keysIn : keys); - - var props = isArr ? undefined : keysFunc(value); - arrayEach(props || value, function(subValue, key) { - if (props) { - key = subValue; - subValue = value[key]; - } - // Recursively populate clone (susceptible to call stack limits). - assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - return result; - } - - /** - * The base implementation of `_.conforms` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property predicates to conform to. - * @returns {Function} Returns the new spec function. - */ - function baseConforms(source) { - var props = keys(source); - return function(object) { - return baseConformsTo(object, source, props); - }; - } - - /** - * The base implementation of `_.conformsTo` which accepts `props` to check. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - */ - function baseConformsTo(object, source, props) { - var length = props.length; - if (object == null) { - return !length; - } - object = Object(object); - while (length--) { - var key = props[length], - predicate = source[key], - value = object[key]; - - if ((value === undefined && !(key in object)) || !predicate(value)) { - return false; - } - } - return true; - } - - /** - * The base implementation of `_.delay` and `_.defer` which accepts `args` - * to provide to `func`. - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {Array} args The arguments to provide to `func`. - * @returns {number|Object} Returns the timer id or timeout object. - */ - function baseDelay(func, wait, args) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return setTimeout(function() { func.apply(undefined, args); }, wait); - } - - /** - * The base implementation of methods like `_.difference` without support - * for excluding multiple arrays or iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Array} values The values to exclude. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - */ - function baseDifference(array, values, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - isCommon = true, - length = array.length, - result = [], - valuesLength = values.length; - - if (!length) { - return result; - } - if (iteratee) { - values = arrayMap(values, baseUnary(iteratee)); - } - if (comparator) { - includes = arrayIncludesWith; - isCommon = false; - } - else if (values.length >= LARGE_ARRAY_SIZE) { - includes = cacheHas; - isCommon = false; - values = new SetCache(values); - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee == null ? value : iteratee(value); - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var valuesIndex = valuesLength; - while (valuesIndex--) { - if (values[valuesIndex] === computed) { - continue outer; - } - } - result.push(value); - } - else if (!includes(values, computed, comparator)) { - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.forEach` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ - var baseEach = createBaseEach(baseForOwn); - - /** - * The base implementation of `_.forEachRight` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ - var baseEachRight = createBaseEach(baseForOwnRight, true); - - /** - * The base implementation of `_.every` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false` - */ - function baseEvery(collection, predicate) { - var result = true; - baseEach(collection, function(value, index, collection) { - result = !!predicate(value, index, collection); - return result; - }); - return result; - } - - /** - * The base implementation of methods like `_.max` and `_.min` which accepts a - * `comparator` to determine the extremum value. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The iteratee invoked per iteration. - * @param {Function} comparator The comparator used to compare values. - * @returns {*} Returns the extremum value. - */ - function baseExtremum(array, iteratee, comparator) { - var index = -1, - length = array.length; - - while (++index < length) { - var value = array[index], - current = iteratee(value); - - if (current != null && (computed === undefined - ? (current === current && !isSymbol(current)) - : comparator(current, computed) - )) { - var computed = current, - result = value; - } - } - return result; - } - - /** - * The base implementation of `_.fill` without an iteratee call guard. - * - * @private - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - */ - function baseFill(array, value, start, end) { - var length = array.length; - - start = toInteger(start); - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = (end === undefined || end > length) ? length : toInteger(end); - if (end < 0) { - end += length; - } - end = start > end ? 0 : toLength(end); - while (start < end) { - array[start++] = value; - } - return array; - } - - /** - * The base implementation of `_.filter` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ - function baseFilter(collection, predicate) { - var result = []; - baseEach(collection, function(value, index, collection) { - if (predicate(value, index, collection)) { - result.push(value); - } - }); - return result; - } - - /** - * The base implementation of `_.flatten` with support for restricting flattening. - * - * @private - * @param {Array} array The array to flatten. - * @param {number} depth The maximum recursion depth. - * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. - * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. - * @param {Array} [result=[]] The initial result value. - * @returns {Array} Returns the new flattened array. - */ - function baseFlatten(array, depth, predicate, isStrict, result) { - var index = -1, - length = array.length; - - predicate || (predicate = isFlattenable); - result || (result = []); - - while (++index < length) { - var value = array[index]; - if (depth > 0 && predicate(value)) { - if (depth > 1) { - // Recursively flatten arrays (susceptible to call stack limits). - baseFlatten(value, depth - 1, predicate, isStrict, result); - } else { - arrayPush(result, value); - } - } else if (!isStrict) { - result[result.length] = value; - } - } - return result; - } - - /** - * The base implementation of `baseForOwn` which iterates over `object` - * properties returned by `keysFunc` and invokes `iteratee` for each property. - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ - var baseFor = createBaseFor(); - - /** - * This function is like `baseFor` except that it iterates over properties - * in the opposite order. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ - var baseForRight = createBaseFor(true); - - /** - * The base implementation of `_.forOwn` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ - function baseForOwn(object, iteratee) { - return object && baseFor(object, iteratee, keys); - } - - /** - * The base implementation of `_.forOwnRight` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ - function baseForOwnRight(object, iteratee) { - return object && baseForRight(object, iteratee, keys); - } - - /** - * The base implementation of `_.functions` which creates an array of - * `object` function property names filtered from `props`. - * - * @private - * @param {Object} object The object to inspect. - * @param {Array} props The property names to filter. - * @returns {Array} Returns the function names. - */ - function baseFunctions(object, props) { - return arrayFilter(props, function(key) { - return isFunction(object[key]); - }); - } - - /** - * The base implementation of `_.get` without support for default values. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @returns {*} Returns the resolved value. - */ - function baseGet(object, path) { - path = castPath(path, object); - - var index = 0, - length = path.length; - - while (object != null && index < length) { - object = object[toKey(path[index++])]; - } - return (index && index == length) ? object : undefined; - } - - /** - * The base implementation of `getAllKeys` and `getAllKeysIn` which uses - * `keysFunc` and `symbolsFunc` to get the enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Function} keysFunc The function to get the keys of `object`. - * @param {Function} symbolsFunc The function to get the symbols of `object`. - * @returns {Array} Returns the array of property names and symbols. - */ - function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); - } - - /** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ - function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); - } - - /** - * The base implementation of `_.gt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - */ - function baseGt(value, other) { - return value > other; - } - - /** - * The base implementation of `_.has` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ - function baseHas(object, key) { - return object != null && hasOwnProperty.call(object, key); - } - - /** - * The base implementation of `_.hasIn` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ - function baseHasIn(object, key) { - return object != null && key in Object(object); - } - - /** - * The base implementation of `_.inRange` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to check. - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - */ - function baseInRange(number, start, end) { - return number >= nativeMin(start, end) && number < nativeMax(start, end); - } - - /** - * The base implementation of methods like `_.intersection`, without support - * for iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of shared values. - */ - function baseIntersection(arrays, iteratee, comparator) { - var includes = comparator ? arrayIncludesWith : arrayIncludes, - length = arrays[0].length, - othLength = arrays.length, - othIndex = othLength, - caches = Array(othLength), - maxLength = Infinity, - result = []; - - while (othIndex--) { - var array = arrays[othIndex]; - if (othIndex && iteratee) { - array = arrayMap(array, baseUnary(iteratee)); - } - maxLength = nativeMin(array.length, maxLength); - caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) - ? new SetCache(othIndex && array) - : undefined; - } - array = arrays[0]; - - var index = -1, - seen = caches[0]; - - outer: - while (++index < length && result.length < maxLength) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (!(seen - ? cacheHas(seen, computed) - : includes(result, computed, comparator) - )) { - othIndex = othLength; - while (--othIndex) { - var cache = caches[othIndex]; - if (!(cache - ? cacheHas(cache, computed) - : includes(arrays[othIndex], computed, comparator)) - ) { - continue outer; - } - } - if (seen) { - seen.push(computed); - } - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.invert` and `_.invertBy` which inverts - * `object` with values transformed by `iteratee` and set by `setter`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform values. - * @param {Object} accumulator The initial inverted object. - * @returns {Function} Returns `accumulator`. - */ - function baseInverter(object, setter, iteratee, accumulator) { - baseForOwn(object, function(value, key, object) { - setter(accumulator, iteratee(value), key, object); - }); - return accumulator; - } - - /** - * The base implementation of `_.invoke` without support for individual - * method arguments. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {Array} args The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - */ - function baseInvoke(object, path, args) { - path = castPath(path, object); - object = parent(object, path); - var func = object == null ? object : object[toKey(last(path))]; - return func == null ? undefined : apply(func, object, args); - } - - /** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ - function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; - } - - /** - * The base implementation of `_.isArrayBuffer` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - */ - function baseIsArrayBuffer(value) { - return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; - } - - /** - * The base implementation of `_.isDate` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - */ - function baseIsDate(value) { - return isObjectLike(value) && baseGetTag(value) == dateTag; - } - - /** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ - function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); - } - - /** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : getTag(object), - othTag = othIsArr ? arrayTag : getTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; - } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack || (stack = new Stack); - return (objIsArr || isTypedArray(object)) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - stack || (stack = new Stack); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - } - } - if (!isSameTag) { - return false; - } - stack || (stack = new Stack); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack); - } - - /** - * The base implementation of `_.isMap` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - */ - function baseIsMap(value) { - return isObjectLike(value) && getTag(value) == mapTag; - } - - /** - * The base implementation of `_.isMatch` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Array} matchData The property names, values, and compare flags to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - */ - function baseIsMatch(object, source, matchData, customizer) { - var index = matchData.length, - length = index, - noCustomizer = !customizer; - - if (object == null) { - return !length; - } - object = Object(object); - while (index--) { - var data = matchData[index]; - if ((noCustomizer && data[2]) - ? data[1] !== object[data[0]] - : !(data[0] in object) - ) { - return false; - } - } - while (++index < length) { - data = matchData[index]; - var key = data[0], - objValue = object[key], - srcValue = data[1]; - - if (noCustomizer && data[2]) { - if (objValue === undefined && !(key in object)) { - return false; - } - } else { - var stack = new Stack; - if (customizer) { - var result = customizer(objValue, srcValue, key, object, source, stack); - } - if (!(result === undefined - ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) - : result - )) { - return false; - } - } - } - return true; - } - - /** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ - function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); - } - - /** - * The base implementation of `_.isRegExp` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - */ - function baseIsRegExp(value) { - return isObjectLike(value) && baseGetTag(value) == regexpTag; - } - - /** - * The base implementation of `_.isSet` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - */ - function baseIsSet(value) { - return isObjectLike(value) && getTag(value) == setTag; - } - - /** - * The base implementation of `_.isTypedArray` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - */ - function baseIsTypedArray(value) { - return isObjectLike(value) && - isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; - } - - /** - * The base implementation of `_.iteratee`. - * - * @private - * @param {*} [value=_.identity] The value to convert to an iteratee. - * @returns {Function} Returns the iteratee. - */ - function baseIteratee(value) { - // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. - // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. - if (typeof value == 'function') { - return value; - } - if (value == null) { - return identity; - } - if (typeof value == 'object') { - return isArray(value) - ? baseMatchesProperty(value[0], value[1]) - : baseMatches(value); - } - return property(value); - } - - /** - * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != 'constructor') { - result.push(key); - } - } - return result; - } - - /** - * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function baseKeysIn(object) { - if (!isObject(object)) { - return nativeKeysIn(object); - } - var isProto = isPrototype(object), - result = []; - - for (var key in object) { - if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { - result.push(key); - } - } - return result; - } - - /** - * The base implementation of `_.lt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - */ - function baseLt(value, other) { - return value < other; - } - - /** - * The base implementation of `_.map` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ - function baseMap(collection, iteratee) { - var index = -1, - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value, key, collection) { - result[++index] = iteratee(value, key, collection); - }); - return result; - } - - /** - * The base implementation of `_.matches` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property values to match. - * @returns {Function} Returns the new spec function. - */ - function baseMatches(source) { - var matchData = getMatchData(source); - if (matchData.length == 1 && matchData[0][2]) { - return matchesStrictComparable(matchData[0][0], matchData[0][1]); - } - return function(object) { - return object === source || baseIsMatch(object, source, matchData); - }; - } - - /** - * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. - * - * @private - * @param {string} path The path of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ - function baseMatchesProperty(path, srcValue) { - if (isKey(path) && isStrictComparable(srcValue)) { - return matchesStrictComparable(toKey(path), srcValue); - } - return function(object) { - var objValue = get(object, path); - return (objValue === undefined && objValue === srcValue) - ? hasIn(object, path) - : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); - }; - } - - /** - * The base implementation of `_.merge` without support for multiple sources. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {number} srcIndex The index of `source`. - * @param {Function} [customizer] The function to customize merged values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ - function baseMerge(object, source, srcIndex, customizer, stack) { - if (object === source) { - return; - } - baseFor(source, function(srcValue, key) { - stack || (stack = new Stack); - if (isObject(srcValue)) { - baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); - } - else { - var newValue = customizer - ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) - : undefined; - - if (newValue === undefined) { - newValue = srcValue; - } - assignMergeValue(object, key, newValue); - } - }, keysIn); - } - - /** - * A specialized version of `baseMerge` for arrays and objects which performs - * deep merges and tracks traversed objects enabling objects with circular - * references to be merged. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {string} key The key of the value to merge. - * @param {number} srcIndex The index of `source`. - * @param {Function} mergeFunc The function to merge values. - * @param {Function} [customizer] The function to customize assigned values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ - function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { - var objValue = safeGet(object, key), - srcValue = safeGet(source, key), - stacked = stack.get(srcValue); - - if (stacked) { - assignMergeValue(object, key, stacked); - return; - } - var newValue = customizer - ? customizer(objValue, srcValue, (key + ''), object, source, stack) - : undefined; - - var isCommon = newValue === undefined; - - if (isCommon) { - var isArr = isArray(srcValue), - isBuff = !isArr && isBuffer(srcValue), - isTyped = !isArr && !isBuff && isTypedArray(srcValue); - - newValue = srcValue; - if (isArr || isBuff || isTyped) { - if (isArray(objValue)) { - newValue = objValue; - } - else if (isArrayLikeObject(objValue)) { - newValue = copyArray(objValue); - } - else if (isBuff) { - isCommon = false; - newValue = cloneBuffer(srcValue, true); - } - else if (isTyped) { - isCommon = false; - newValue = cloneTypedArray(srcValue, true); - } - else { - newValue = []; - } - } - else if (isPlainObject(srcValue) || isArguments(srcValue)) { - newValue = objValue; - if (isArguments(objValue)) { - newValue = toPlainObject(objValue); - } - else if (!isObject(objValue) || isFunction(objValue)) { - newValue = initCloneObject(srcValue); - } - } - else { - isCommon = false; - } - } - if (isCommon) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, newValue); - mergeFunc(newValue, srcValue, srcIndex, customizer, stack); - stack['delete'](srcValue); - } - assignMergeValue(object, key, newValue); - } - - /** - * The base implementation of `_.nth` which doesn't coerce arguments. - * - * @private - * @param {Array} array The array to query. - * @param {number} n The index of the element to return. - * @returns {*} Returns the nth element of `array`. - */ - function baseNth(array, n) { - var length = array.length; - if (!length) { - return; - } - n += n < 0 ? length : 0; - return isIndex(n, length) ? array[n] : undefined; - } - - /** - * The base implementation of `_.orderBy` without param guards. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. - * @param {string[]} orders The sort orders of `iteratees`. - * @returns {Array} Returns the new sorted array. - */ - function baseOrderBy(collection, iteratees, orders) { - if (iteratees.length) { - iteratees = arrayMap(iteratees, function(iteratee) { - if (isArray(iteratee)) { - return function(value) { - return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee); - } - } - return iteratee; - }); - } else { - iteratees = [identity]; - } - - var index = -1; - iteratees = arrayMap(iteratees, baseUnary(getIteratee())); - - var result = baseMap(collection, function(value, key, collection) { - var criteria = arrayMap(iteratees, function(iteratee) { - return iteratee(value); - }); - return { 'criteria': criteria, 'index': ++index, 'value': value }; - }); - - return baseSortBy(result, function(object, other) { - return compareMultiple(object, other, orders); - }); - } - - /** - * The base implementation of `_.pick` without support for individual - * property identifiers. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @returns {Object} Returns the new object. - */ - function basePick(object, paths) { - return basePickBy(object, paths, function(value, path) { - return hasIn(object, path); - }); - } - - /** - * The base implementation of `_.pickBy` without support for iteratee shorthands. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @param {Function} predicate The function invoked per property. - * @returns {Object} Returns the new object. - */ - function basePickBy(object, paths, predicate) { - var index = -1, - length = paths.length, - result = {}; - - while (++index < length) { - var path = paths[index], - value = baseGet(object, path); - - if (predicate(value, path)) { - baseSet(result, castPath(path, object), value); - } - } - return result; - } - - /** - * A specialized version of `baseProperty` which supports deep paths. - * - * @private - * @param {Array|string} path The path of the property to get. - * @returns {Function} Returns the new accessor function. - */ - function basePropertyDeep(path) { - return function(object) { - return baseGet(object, path); - }; - } - - /** - * The base implementation of `_.pullAllBy` without support for iteratee - * shorthands. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns `array`. - */ - function basePullAll(array, values, iteratee, comparator) { - var indexOf = comparator ? baseIndexOfWith : baseIndexOf, - index = -1, - length = values.length, - seen = array; - - if (array === values) { - values = copyArray(values); - } - if (iteratee) { - seen = arrayMap(array, baseUnary(iteratee)); - } - while (++index < length) { - var fromIndex = 0, - value = values[index], - computed = iteratee ? iteratee(value) : value; - - while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { - if (seen !== array) { - splice.call(seen, fromIndex, 1); - } - splice.call(array, fromIndex, 1); - } - } - return array; - } - - /** - * The base implementation of `_.pullAt` without support for individual - * indexes or capturing the removed elements. - * - * @private - * @param {Array} array The array to modify. - * @param {number[]} indexes The indexes of elements to remove. - * @returns {Array} Returns `array`. - */ - function basePullAt(array, indexes) { - var length = array ? indexes.length : 0, - lastIndex = length - 1; - - while (length--) { - var index = indexes[length]; - if (length == lastIndex || index !== previous) { - var previous = index; - if (isIndex(index)) { - splice.call(array, index, 1); - } else { - baseUnset(array, index); - } - } - } - return array; - } - - /** - * The base implementation of `_.random` without support for returning - * floating-point numbers. - * - * @private - * @param {number} lower The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the random number. - */ - function baseRandom(lower, upper) { - return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); - } - - /** - * The base implementation of `_.range` and `_.rangeRight` which doesn't - * coerce arguments. - * - * @private - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @param {number} step The value to increment or decrement by. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the range of numbers. - */ - function baseRange(start, end, step, fromRight) { - var index = -1, - length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), - result = Array(length); - - while (length--) { - result[fromRight ? length : ++index] = start; - start += step; - } - return result; - } - - /** - * The base implementation of `_.repeat` which doesn't coerce arguments. - * - * @private - * @param {string} string The string to repeat. - * @param {number} n The number of times to repeat the string. - * @returns {string} Returns the repeated string. - */ - function baseRepeat(string, n) { - var result = ''; - if (!string || n < 1 || n > MAX_SAFE_INTEGER) { - return result; - } - // Leverage the exponentiation by squaring algorithm for a faster repeat. - // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. - do { - if (n % 2) { - result += string; - } - n = nativeFloor(n / 2); - if (n) { - string += string; - } - } while (n); - - return result; - } - - /** - * The base implementation of `_.rest` which doesn't validate or coerce arguments. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - */ - function baseRest(func, start) { - return setToString(overRest(func, start, identity), func + ''); - } - - /** - * The base implementation of `_.sample`. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @returns {*} Returns the random element. - */ - function baseSample(collection) { - return arraySample(values(collection)); - } - - /** - * The base implementation of `_.sampleSize` without param guards. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ - function baseSampleSize(collection, n) { - var array = values(collection); - return shuffleSelf(array, baseClamp(n, 0, array.length)); - } - - /** - * The base implementation of `_.set`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ - function baseSet(object, path, value, customizer) { - if (!isObject(object)) { - return object; - } - path = castPath(path, object); - - var index = -1, - length = path.length, - lastIndex = length - 1, - nested = object; - - while (nested != null && ++index < length) { - var key = toKey(path[index]), - newValue = value; - - if (key === '__proto__' || key === 'constructor' || key === 'prototype') { - return object; - } - - if (index != lastIndex) { - var objValue = nested[key]; - newValue = customizer ? customizer(objValue, key, nested) : undefined; - if (newValue === undefined) { - newValue = isObject(objValue) - ? objValue - : (isIndex(path[index + 1]) ? [] : {}); - } - } - assignValue(nested, key, newValue); - nested = nested[key]; - } - return object; - } - - /** - * The base implementation of `setData` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ - var baseSetData = !metaMap ? identity : function(func, data) { - metaMap.set(func, data); - return func; - }; - - /** - * The base implementation of `setToString` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ - var baseSetToString = !defineProperty ? identity : function(func, string) { - return defineProperty(func, 'toString', { - 'configurable': true, - 'enumerable': false, - 'value': constant(string), - 'writable': true - }); - }; - - /** - * The base implementation of `_.shuffle`. - * - * @private - * @param {Array|Object} collection The collection to shuffle. - * @returns {Array} Returns the new shuffled array. - */ - function baseShuffle(collection) { - return shuffleSelf(values(collection)); - } - - /** - * The base implementation of `_.slice` without an iteratee call guard. - * - * @private - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function baseSlice(array, start, end) { - var index = -1, - length = array.length; - - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = end > length ? length : end; - if (end < 0) { - end += length; - } - length = start > end ? 0 : ((end - start) >>> 0); - start >>>= 0; - - var result = Array(length); - while (++index < length) { - result[index] = array[index + start]; - } - return result; - } - - /** - * The base implementation of `_.some` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ - function baseSome(collection, predicate) { - var result; - - baseEach(collection, function(value, index, collection) { - result = predicate(value, index, collection); - return !result; - }); - return !!result; - } - - /** - * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which - * performs a binary search of `array` to determine the index at which `value` - * should be inserted into `array` in order to maintain its sort order. - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ - function baseSortedIndex(array, value, retHighest) { - var low = 0, - high = array == null ? low : array.length; - - if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { - while (low < high) { - var mid = (low + high) >>> 1, - computed = array[mid]; - - if (computed !== null && !isSymbol(computed) && - (retHighest ? (computed <= value) : (computed < value))) { - low = mid + 1; - } else { - high = mid; - } - } - return high; - } - return baseSortedIndexBy(array, value, identity, retHighest); - } - - /** - * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` - * which invokes `iteratee` for `value` and each element of `array` to compute - * their sort ranking. The iteratee is invoked with one argument; (value). - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} iteratee The iteratee invoked per element. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ - function baseSortedIndexBy(array, value, iteratee, retHighest) { - var low = 0, - high = array == null ? 0 : array.length; - if (high === 0) { - return 0; - } - - value = iteratee(value); - var valIsNaN = value !== value, - valIsNull = value === null, - valIsSymbol = isSymbol(value), - valIsUndefined = value === undefined; - - while (low < high) { - var mid = nativeFloor((low + high) / 2), - computed = iteratee(array[mid]), - othIsDefined = computed !== undefined, - othIsNull = computed === null, - othIsReflexive = computed === computed, - othIsSymbol = isSymbol(computed); - - if (valIsNaN) { - var setLow = retHighest || othIsReflexive; - } else if (valIsUndefined) { - setLow = othIsReflexive && (retHighest || othIsDefined); - } else if (valIsNull) { - setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); - } else if (valIsSymbol) { - setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); - } else if (othIsNull || othIsSymbol) { - setLow = false; - } else { - setLow = retHighest ? (computed <= value) : (computed < value); - } - if (setLow) { - low = mid + 1; - } else { - high = mid; - } - } - return nativeMin(high, MAX_ARRAY_INDEX); - } - - /** - * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ - function baseSortedUniq(array, iteratee) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - if (!index || !eq(computed, seen)) { - var seen = computed; - result[resIndex++] = value === 0 ? 0 : value; - } - } - return result; - } - - /** - * The base implementation of `_.toNumber` which doesn't ensure correct - * conversions of binary, hexadecimal, or octal string values. - * - * @private - * @param {*} value The value to process. - * @returns {number} Returns the number. - */ - function baseToNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - return +value; - } - - /** - * The base implementation of `_.toString` which doesn't convert nullish - * values to empty strings. - * - * @private - * @param {*} value The value to process. - * @returns {string} Returns the string. - */ - function baseToString(value) { - // Exit early for strings to avoid a performance hit in some environments. - if (typeof value == 'string') { - return value; - } - if (isArray(value)) { - // Recursively convert values (susceptible to call stack limits). - return arrayMap(value, baseToString) + ''; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ''; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; - } - - /** - * The base implementation of `_.uniqBy` without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ - function baseUniq(array, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - length = array.length, - isCommon = true, - result = [], - seen = result; - - if (comparator) { - isCommon = false; - includes = arrayIncludesWith; - } - else if (length >= LARGE_ARRAY_SIZE) { - var set = iteratee ? null : createSet(array); - if (set) { - return setToArray(set); - } - isCommon = false; - includes = cacheHas; - seen = new SetCache; - } - else { - seen = iteratee ? [] : result; - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var seenIndex = seen.length; - while (seenIndex--) { - if (seen[seenIndex] === computed) { - continue outer; - } - } - if (iteratee) { - seen.push(computed); - } - result.push(value); - } - else if (!includes(seen, computed, comparator)) { - if (seen !== result) { - seen.push(computed); - } - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.unset`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The property path to unset. - * @returns {boolean} Returns `true` if the property is deleted, else `false`. - */ - function baseUnset(object, path) { - path = castPath(path, object); - object = parent(object, path); - return object == null || delete object[toKey(last(path))]; - } - - /** - * The base implementation of `_.update`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to update. - * @param {Function} updater The function to produce the updated value. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ - function baseUpdate(object, path, updater, customizer) { - return baseSet(object, path, updater(baseGet(object, path)), customizer); - } - - /** - * The base implementation of methods like `_.dropWhile` and `_.takeWhile` - * without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to query. - * @param {Function} predicate The function invoked per iteration. - * @param {boolean} [isDrop] Specify dropping elements instead of taking them. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the slice of `array`. - */ - function baseWhile(array, predicate, isDrop, fromRight) { - var length = array.length, - index = fromRight ? length : -1; - - while ((fromRight ? index-- : ++index < length) && - predicate(array[index], index, array)) {} - - return isDrop - ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) - : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); - } - - /** - * The base implementation of `wrapperValue` which returns the result of - * performing a sequence of actions on the unwrapped `value`, where each - * successive action is supplied the return value of the previous. - * - * @private - * @param {*} value The unwrapped value. - * @param {Array} actions Actions to perform to resolve the unwrapped value. - * @returns {*} Returns the resolved value. - */ - function baseWrapperValue(value, actions) { - var result = value; - if (result instanceof LazyWrapper) { - result = result.value(); - } - return arrayReduce(actions, function(result, action) { - return action.func.apply(action.thisArg, arrayPush([result], action.args)); - }, result); - } - - /** - * The base implementation of methods like `_.xor`, without support for - * iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of values. - */ - function baseXor(arrays, iteratee, comparator) { - var length = arrays.length; - if (length < 2) { - return length ? baseUniq(arrays[0]) : []; - } - var index = -1, - result = Array(length); - - while (++index < length) { - var array = arrays[index], - othIndex = -1; - - while (++othIndex < length) { - if (othIndex != index) { - result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); - } - } - } - return baseUniq(baseFlatten(result, 1), iteratee, comparator); - } - - /** - * This base implementation of `_.zipObject` which assigns values using `assignFunc`. - * - * @private - * @param {Array} props The property identifiers. - * @param {Array} values The property values. - * @param {Function} assignFunc The function to assign values. - * @returns {Object} Returns the new object. - */ - function baseZipObject(props, values, assignFunc) { - var index = -1, - length = props.length, - valsLength = values.length, - result = {}; - - while (++index < length) { - var value = index < valsLength ? values[index] : undefined; - assignFunc(result, props[index], value); - } - return result; - } - - /** - * Casts `value` to an empty array if it's not an array like object. - * - * @private - * @param {*} value The value to inspect. - * @returns {Array|Object} Returns the cast array-like object. - */ - function castArrayLikeObject(value) { - return isArrayLikeObject(value) ? value : []; - } - - /** - * Casts `value` to `identity` if it's not a function. - * - * @private - * @param {*} value The value to inspect. - * @returns {Function} Returns cast function. - */ - function castFunction(value) { - return typeof value == 'function' ? value : identity; - } - - /** - * Casts `value` to a path array if it's not one. - * - * @private - * @param {*} value The value to inspect. - * @param {Object} [object] The object to query keys on. - * @returns {Array} Returns the cast property path array. - */ - function castPath(value, object) { - if (isArray(value)) { - return value; - } - return isKey(value, object) ? [value] : stringToPath(toString(value)); - } - - /** - * A `baseRest` alias which can be replaced with `identity` by module - * replacement plugins. - * - * @private - * @type {Function} - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ - var castRest = baseRest; - - /** - * Casts `array` to a slice if it's needed. - * - * @private - * @param {Array} array The array to inspect. - * @param {number} start The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the cast slice. - */ - function castSlice(array, start, end) { - var length = array.length; - end = end === undefined ? length : end; - return (!start && end >= length) ? array : baseSlice(array, start, end); - } - - /** - * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout). - * - * @private - * @param {number|Object} id The timer id or timeout object of the timer to clear. - */ - var clearTimeout = ctxClearTimeout || function(id) { - return root.clearTimeout(id); - }; - - /** - * Creates a clone of `buffer`. - * - * @private - * @param {Buffer} buffer The buffer to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Buffer} Returns the cloned buffer. - */ - function cloneBuffer(buffer, isDeep) { - if (isDeep) { - return buffer.slice(); - } - var length = buffer.length, - result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); - - buffer.copy(result); - return result; - } - - /** - * Creates a clone of `arrayBuffer`. - * - * @private - * @param {ArrayBuffer} arrayBuffer The array buffer to clone. - * @returns {ArrayBuffer} Returns the cloned array buffer. - */ - function cloneArrayBuffer(arrayBuffer) { - var result = new arrayBuffer.constructor(arrayBuffer.byteLength); - new Uint8Array(result).set(new Uint8Array(arrayBuffer)); - return result; - } - - /** - * Creates a clone of `dataView`. - * - * @private - * @param {Object} dataView The data view to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned data view. - */ - function cloneDataView(dataView, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; - return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); - } - - /** - * Creates a clone of `regexp`. - * - * @private - * @param {Object} regexp The regexp to clone. - * @returns {Object} Returns the cloned regexp. - */ - function cloneRegExp(regexp) { - var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); - result.lastIndex = regexp.lastIndex; - return result; - } - - /** - * Creates a clone of the `symbol` object. - * - * @private - * @param {Object} symbol The symbol object to clone. - * @returns {Object} Returns the cloned symbol object. - */ - function cloneSymbol(symbol) { - return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; - } - - /** - * Creates a clone of `typedArray`. - * - * @private - * @param {Object} typedArray The typed array to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned typed array. - */ - function cloneTypedArray(typedArray, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; - return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); - } - - /** - * Compares values to sort them in ascending order. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {number} Returns the sort order indicator for `value`. - */ - function compareAscending(value, other) { - if (value !== other) { - var valIsDefined = value !== undefined, - valIsNull = value === null, - valIsReflexive = value === value, - valIsSymbol = isSymbol(value); - - var othIsDefined = other !== undefined, - othIsNull = other === null, - othIsReflexive = other === other, - othIsSymbol = isSymbol(other); - - if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || - (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || - (valIsNull && othIsDefined && othIsReflexive) || - (!valIsDefined && othIsReflexive) || - !valIsReflexive) { - return 1; - } - if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || - (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || - (othIsNull && valIsDefined && valIsReflexive) || - (!othIsDefined && valIsReflexive) || - !othIsReflexive) { - return -1; - } - } - return 0; - } - - /** - * Used by `_.orderBy` to compare multiple properties of a value to another - * and stable sort them. - * - * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, - * specify an order of "desc" for descending or "asc" for ascending sort order - * of corresponding values. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {boolean[]|string[]} orders The order to sort by for each property. - * @returns {number} Returns the sort order indicator for `object`. - */ - function compareMultiple(object, other, orders) { - var index = -1, - objCriteria = object.criteria, - othCriteria = other.criteria, - length = objCriteria.length, - ordersLength = orders.length; - - while (++index < length) { - var result = compareAscending(objCriteria[index], othCriteria[index]); - if (result) { - if (index >= ordersLength) { - return result; - } - var order = orders[index]; - return result * (order == 'desc' ? -1 : 1); - } - } - // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications - // that causes it, under certain circumstances, to provide the same value for - // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 - // for more details. - // - // This also ensures a stable sort in V8 and other engines. - // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. - return object.index - other.index; - } - - /** - * Creates an array that is the composition of partially applied arguments, - * placeholders, and provided arguments into a single array of arguments. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to prepend to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ - function composeArgs(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersLength = holders.length, - leftIndex = -1, - leftLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(leftLength + rangeLength), - isUncurried = !isCurried; - - while (++leftIndex < leftLength) { - result[leftIndex] = partials[leftIndex]; - } - while (++argsIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[holders[argsIndex]] = args[argsIndex]; - } - } - while (rangeLength--) { - result[leftIndex++] = args[argsIndex++]; - } - return result; - } - - /** - * This function is like `composeArgs` except that the arguments composition - * is tailored for `_.partialRight`. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to append to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ - function composeArgsRight(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersIndex = -1, - holdersLength = holders.length, - rightIndex = -1, - rightLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(rangeLength + rightLength), - isUncurried = !isCurried; - - while (++argsIndex < rangeLength) { - result[argsIndex] = args[argsIndex]; - } - var offset = argsIndex; - while (++rightIndex < rightLength) { - result[offset + rightIndex] = partials[rightIndex]; - } - while (++holdersIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[offset + holders[holdersIndex]] = args[argsIndex++]; - } - } - return result; - } - - /** - * Copies the values of `source` to `array`. - * - * @private - * @param {Array} source The array to copy values from. - * @param {Array} [array=[]] The array to copy values to. - * @returns {Array} Returns `array`. - */ - function copyArray(source, array) { - var index = -1, - length = source.length; - - array || (array = Array(length)); - while (++index < length) { - array[index] = source[index]; - } - return array; - } - - /** - * Copies properties of `source` to `object`. - * - * @private - * @param {Object} source The object to copy properties from. - * @param {Array} props The property identifiers to copy. - * @param {Object} [object={}] The object to copy properties to. - * @param {Function} [customizer] The function to customize copied values. - * @returns {Object} Returns `object`. - */ - function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - - var index = -1, - length = props.length; - - while (++index < length) { - var key = props[index]; - - var newValue = customizer - ? customizer(object[key], source[key], key, object, source) - : undefined; - - if (newValue === undefined) { - newValue = source[key]; - } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); - } - } - return object; - } - - /** - * Copies own symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ - function copySymbols(source, object) { - return copyObject(source, getSymbols(source), object); - } - - /** - * Copies own and inherited symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ - function copySymbolsIn(source, object) { - return copyObject(source, getSymbolsIn(source), object); - } - - /** - * Creates a function like `_.groupBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} [initializer] The accumulator object initializer. - * @returns {Function} Returns the new aggregator function. - */ - function createAggregator(setter, initializer) { - return function(collection, iteratee) { - var func = isArray(collection) ? arrayAggregator : baseAggregator, - accumulator = initializer ? initializer() : {}; - - return func(collection, setter, getIteratee(iteratee, 2), accumulator); - }; - } - - /** - * Creates a function like `_.assign`. - * - * @private - * @param {Function} assigner The function to assign values. - * @returns {Function} Returns the new assigner function. - */ - function createAssigner(assigner) { - return baseRest(function(object, sources) { - var index = -1, - length = sources.length, - customizer = length > 1 ? sources[length - 1] : undefined, - guard = length > 2 ? sources[2] : undefined; - - customizer = (assigner.length > 3 && typeof customizer == 'function') - ? (length--, customizer) - : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - customizer = length < 3 ? undefined : customizer; - length = 1; - } - object = Object(object); - while (++index < length) { - var source = sources[index]; - if (source) { - assigner(object, source, index, customizer); - } - } - return object; - }); - } - - /** - * Creates a `baseEach` or `baseEachRight` function. - * - * @private - * @param {Function} eachFunc The function to iterate over a collection. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseEach(eachFunc, fromRight) { - return function(collection, iteratee) { - if (collection == null) { - return collection; - } - if (!isArrayLike(collection)) { - return eachFunc(collection, iteratee); - } - var length = collection.length, - index = fromRight ? length : -1, - iterable = Object(collection); - - while ((fromRight ? index-- : ++index < length)) { - if (iteratee(iterable[index], index, iterable) === false) { - break; - } - } - return collection; - }; - } - - /** - * Creates a base function for methods like `_.forIn` and `_.forOwn`. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, - iterable = Object(object), - props = keysFunc(object), - length = props.length; - - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; - } - } - return object; - }; - } - - /** - * Creates a function that wraps `func` to invoke it with the optional `this` - * binding of `thisArg`. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createBind(func, bitmask, thisArg) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return fn.apply(isBind ? thisArg : this, arguments); - } - return wrapper; - } - - /** - * Creates a function like `_.lowerFirst`. - * - * @private - * @param {string} methodName The name of the `String` case method to use. - * @returns {Function} Returns the new case function. - */ - function createCaseFirst(methodName) { - return function(string) { - string = toString(string); - - var strSymbols = hasUnicode(string) - ? stringToArray(string) - : undefined; - - var chr = strSymbols - ? strSymbols[0] - : string.charAt(0); - - var trailing = strSymbols - ? castSlice(strSymbols, 1).join('') - : string.slice(1); - - return chr[methodName]() + trailing; - }; - } - - /** - * Creates a function like `_.camelCase`. - * - * @private - * @param {Function} callback The function to combine each word. - * @returns {Function} Returns the new compounder function. - */ - function createCompounder(callback) { - return function(string) { - return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); - }; - } - - /** - * Creates a function that produces an instance of `Ctor` regardless of - * whether it was invoked as part of a `new` expression or by `call` or `apply`. - * - * @private - * @param {Function} Ctor The constructor to wrap. - * @returns {Function} Returns the new wrapped function. - */ - function createCtor(Ctor) { - return function() { - // Use a `switch` statement to work with class constructors. See - // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist - // for more details. - var args = arguments; - switch (args.length) { - case 0: return new Ctor; - case 1: return new Ctor(args[0]); - case 2: return new Ctor(args[0], args[1]); - case 3: return new Ctor(args[0], args[1], args[2]); - case 4: return new Ctor(args[0], args[1], args[2], args[3]); - case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); - case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); - case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); - } - var thisBinding = baseCreate(Ctor.prototype), - result = Ctor.apply(thisBinding, args); - - // Mimic the constructor's `return` behavior. - // See https://es5.github.io/#x13.2.2 for more details. - return isObject(result) ? result : thisBinding; - }; - } - - /** - * Creates a function that wraps `func` to enable currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {number} arity The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createCurry(func, bitmask, arity) { - var Ctor = createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length, - placeholder = getHolder(wrapper); - - while (index--) { - args[index] = arguments[index]; - } - var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) - ? [] - : replaceHolders(args, placeholder); - - length -= holders.length; - if (length < arity) { - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, undefined, - args, holders, undefined, undefined, arity - length); - } - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return apply(fn, this, args); - } - return wrapper; - } - - /** - * Creates a `_.find` or `_.findLast` function. - * - * @private - * @param {Function} findIndexFunc The function to find the collection index. - * @returns {Function} Returns the new find function. - */ - function createFind(findIndexFunc) { - return function(collection, predicate, fromIndex) { - var iterable = Object(collection); - if (!isArrayLike(collection)) { - var iteratee = getIteratee(predicate, 3); - collection = keys(collection); - predicate = function(key) { return iteratee(iterable[key], key, iterable); }; - } - var index = findIndexFunc(collection, predicate, fromIndex); - return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; - }; - } - - /** - * Creates a `_.flow` or `_.flowRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new flow function. - */ - function createFlow(fromRight) { - return flatRest(function(funcs) { - var length = funcs.length, - index = length, - prereq = LodashWrapper.prototype.thru; - - if (fromRight) { - funcs.reverse(); - } - while (index--) { - var func = funcs[index]; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - if (prereq && !wrapper && getFuncName(func) == 'wrapper') { - var wrapper = new LodashWrapper([], true); - } - } - index = wrapper ? index : length; - while (++index < length) { - func = funcs[index]; - - var funcName = getFuncName(func), - data = funcName == 'wrapper' ? getData(func) : undefined; - - if (data && isLaziable(data[0]) && - data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && - !data[4].length && data[9] == 1 - ) { - wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); - } else { - wrapper = (func.length == 1 && isLaziable(func)) - ? wrapper[funcName]() - : wrapper.thru(func); - } - } - return function() { - var args = arguments, - value = args[0]; - - if (wrapper && args.length == 1 && isArray(value)) { - return wrapper.plant(value).value(); - } - var index = 0, - result = length ? funcs[index].apply(this, args) : value; - - while (++index < length) { - result = funcs[index].call(this, result); - } - return result; - }; - }); - } - - /** - * Creates a function that wraps `func` to invoke it with optional `this` - * binding of `thisArg`, partial application, and currying. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [partialsRight] The arguments to append to those provided - * to the new function. - * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { - var isAry = bitmask & WRAP_ARY_FLAG, - isBind = bitmask & WRAP_BIND_FLAG, - isBindKey = bitmask & WRAP_BIND_KEY_FLAG, - isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), - isFlip = bitmask & WRAP_FLIP_FLAG, - Ctor = isBindKey ? undefined : createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length; - - while (index--) { - args[index] = arguments[index]; - } - if (isCurried) { - var placeholder = getHolder(wrapper), - holdersCount = countHolders(args, placeholder); - } - if (partials) { - args = composeArgs(args, partials, holders, isCurried); - } - if (partialsRight) { - args = composeArgsRight(args, partialsRight, holdersRight, isCurried); - } - length -= holdersCount; - if (isCurried && length < arity) { - var newHolders = replaceHolders(args, placeholder); - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, thisArg, - args, newHolders, argPos, ary, arity - length - ); - } - var thisBinding = isBind ? thisArg : this, - fn = isBindKey ? thisBinding[func] : func; - - length = args.length; - if (argPos) { - args = reorder(args, argPos); - } else if (isFlip && length > 1) { - args.reverse(); - } - if (isAry && ary < length) { - args.length = ary; - } - if (this && this !== root && this instanceof wrapper) { - fn = Ctor || createCtor(fn); - } - return fn.apply(thisBinding, args); - } - return wrapper; - } - - /** - * Creates a function like `_.invertBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} toIteratee The function to resolve iteratees. - * @returns {Function} Returns the new inverter function. - */ - function createInverter(setter, toIteratee) { - return function(object, iteratee) { - return baseInverter(object, setter, toIteratee(iteratee), {}); - }; - } - - /** - * Creates a function that performs a mathematical operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @param {number} [defaultValue] The value used for `undefined` arguments. - * @returns {Function} Returns the new mathematical operation function. - */ - function createMathOperation(operator, defaultValue) { - return function(value, other) { - var result; - if (value === undefined && other === undefined) { - return defaultValue; - } - if (value !== undefined) { - result = value; - } - if (other !== undefined) { - if (result === undefined) { - return other; - } - if (typeof value == 'string' || typeof other == 'string') { - value = baseToString(value); - other = baseToString(other); - } else { - value = baseToNumber(value); - other = baseToNumber(other); - } - result = operator(value, other); - } - return result; - }; - } - - /** - * Creates a function like `_.over`. - * - * @private - * @param {Function} arrayFunc The function to iterate over iteratees. - * @returns {Function} Returns the new over function. - */ - function createOver(arrayFunc) { - return flatRest(function(iteratees) { - iteratees = arrayMap(iteratees, baseUnary(getIteratee())); - return baseRest(function(args) { - var thisArg = this; - return arrayFunc(iteratees, function(iteratee) { - return apply(iteratee, thisArg, args); - }); - }); - }); - } - - /** - * Creates the padding for `string` based on `length`. The `chars` string - * is truncated if the number of characters exceeds `length`. - * - * @private - * @param {number} length The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padding for `string`. - */ - function createPadding(length, chars) { - chars = chars === undefined ? ' ' : baseToString(chars); - - var charsLength = chars.length; - if (charsLength < 2) { - return charsLength ? baseRepeat(chars, length) : chars; - } - var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); - return hasUnicode(chars) - ? castSlice(stringToArray(result), 0, length).join('') - : result.slice(0, length); - } - - /** - * Creates a function that wraps `func` to invoke it with the `this` binding - * of `thisArg` and `partials` prepended to the arguments it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} partials The arguments to prepend to those provided to - * the new function. - * @returns {Function} Returns the new wrapped function. - */ - function createPartial(func, bitmask, thisArg, partials) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var argsIndex = -1, - argsLength = arguments.length, - leftIndex = -1, - leftLength = partials.length, - args = Array(leftLength + argsLength), - fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - - while (++leftIndex < leftLength) { - args[leftIndex] = partials[leftIndex]; - } - while (argsLength--) { - args[leftIndex++] = arguments[++argsIndex]; - } - return apply(fn, isBind ? thisArg : this, args); - } - return wrapper; - } - - /** - * Creates a `_.range` or `_.rangeRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new range function. - */ - function createRange(fromRight) { - return function(start, end, step) { - if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { - end = step = undefined; - } - // Ensure the sign of `-0` is preserved. - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); - return baseRange(start, end, step, fromRight); - }; - } - - /** - * Creates a function that performs a relational operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @returns {Function} Returns the new relational operation function. - */ - function createRelationalOperation(operator) { - return function(value, other) { - if (!(typeof value == 'string' && typeof other == 'string')) { - value = toNumber(value); - other = toNumber(other); - } - return operator(value, other); - }; - } - - /** - * Creates a function that wraps `func` to continue currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {Function} wrapFunc The function to create the `func` wrapper. - * @param {*} placeholder The placeholder value. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { - var isCurry = bitmask & WRAP_CURRY_FLAG, - newHolders = isCurry ? holders : undefined, - newHoldersRight = isCurry ? undefined : holders, - newPartials = isCurry ? partials : undefined, - newPartialsRight = isCurry ? undefined : partials; - - bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); - bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); - - if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { - bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); - } - var newData = [ - func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, - newHoldersRight, argPos, ary, arity - ]; - - var result = wrapFunc.apply(undefined, newData); - if (isLaziable(func)) { - setData(result, newData); - } - result.placeholder = placeholder; - return setWrapToString(result, func, bitmask); - } - - /** - * Creates a function like `_.round`. - * - * @private - * @param {string} methodName The name of the `Math` method to use when rounding. - * @returns {Function} Returns the new round function. - */ - function createRound(methodName) { - var func = Math[methodName]; - return function(number, precision) { - number = toNumber(number); - precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); - if (precision && nativeIsFinite(number)) { - // Shift with exponential notation to avoid floating-point issues. - // See [MDN](https://mdn.io/round#Examples) for more details. - var pair = (toString(number) + 'e').split('e'), - value = func(pair[0] + 'e' + (+pair[1] + precision)); - - pair = (toString(value) + 'e').split('e'); - return +(pair[0] + 'e' + (+pair[1] - precision)); - } - return func(number); - }; - } - - /** - * Creates a set object of `values`. - * - * @private - * @param {Array} values The values to add to the set. - * @returns {Object} Returns the new set. - */ - var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { - return new Set(values); - }; - - /** - * Creates a `_.toPairs` or `_.toPairsIn` function. - * - * @private - * @param {Function} keysFunc The function to get the keys of a given object. - * @returns {Function} Returns the new pairs function. - */ - function createToPairs(keysFunc) { - return function(object) { - var tag = getTag(object); - if (tag == mapTag) { - return mapToArray(object); - } - if (tag == setTag) { - return setToPairs(object); - } - return baseToPairs(object, keysFunc(object)); - }; - } - - /** - * Creates a function that either curries or invokes `func` with optional - * `this` binding and partially applied arguments. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. - * 1 - `_.bind` - * 2 - `_.bindKey` - * 4 - `_.curry` or `_.curryRight` of a bound function - * 8 - `_.curry` - * 16 - `_.curryRight` - * 32 - `_.partial` - * 64 - `_.partialRight` - * 128 - `_.rearg` - * 256 - `_.ary` - * 512 - `_.flip` - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to be partially applied. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { - var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; - if (!isBindKey && typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - var length = partials ? partials.length : 0; - if (!length) { - bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); - partials = holders = undefined; - } - ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); - arity = arity === undefined ? arity : toInteger(arity); - length -= holders ? holders.length : 0; - - if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { - var partialsRight = partials, - holdersRight = holders; - - partials = holders = undefined; - } - var data = isBindKey ? undefined : getData(func); - - var newData = [ - func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, - argPos, ary, arity - ]; - - if (data) { - mergeData(newData, data); - } - func = newData[0]; - bitmask = newData[1]; - thisArg = newData[2]; - partials = newData[3]; - holders = newData[4]; - arity = newData[9] = newData[9] === undefined - ? (isBindKey ? 0 : func.length) - : nativeMax(newData[9] - length, 0); - - if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { - bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); - } - if (!bitmask || bitmask == WRAP_BIND_FLAG) { - var result = createBind(func, bitmask, thisArg); - } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { - result = createCurry(func, bitmask, arity); - } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { - result = createPartial(func, bitmask, thisArg, partials); - } else { - result = createHybrid.apply(undefined, newData); - } - var setter = data ? baseSetData : setData; - return setWrapToString(setter(result, newData), func, bitmask); - } - - /** - * Used by `_.defaults` to customize its `_.assignIn` use to assign properties - * of source objects to the destination object for all destination properties - * that resolve to `undefined`. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to assign. - * @param {Object} object The parent object of `objValue`. - * @returns {*} Returns the value to assign. - */ - function customDefaultsAssignIn(objValue, srcValue, key, object) { - if (objValue === undefined || - (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { - return srcValue; - } - return objValue; - } - - /** - * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source - * objects into destination objects that are passed thru. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to merge. - * @param {Object} object The parent object of `objValue`. - * @param {Object} source The parent object of `srcValue`. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - * @returns {*} Returns the value to assign. - */ - function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { - if (isObject(objValue) && isObject(srcValue)) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, objValue); - baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); - stack['delete'](srcValue); - } - return objValue; - } - - /** - * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain - * objects. - * - * @private - * @param {*} value The value to inspect. - * @param {string} key The key of the property to inspect. - * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. - */ - function customOmitClone(value) { - return isPlainObject(value) ? undefined : value; - } - - /** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ - function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Check that cyclic values are equal. - var arrStacked = stack.get(array); - var othStacked = stack.get(other); - if (arrStacked && othStacked) { - return arrStacked == other && othStacked == array; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; - - stack.set(array, other); - stack.set(other, array); - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, arrValue, index, other, array, stack) - : customizer(arrValue, othValue, index, array, other, stack); - } - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!arraySome(other, function(othValue, othIndex) { - if (!cacheHas(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - stack['delete'](array); - stack['delete'](other); - return result; - } - - /** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - case dataViewTag: - if ((object.byteLength != other.byteLength) || - (object.byteOffset != other.byteOffset)) { - return false; - } - object = object.buffer; - other = other.buffer; - - case arrayBufferTag: - if ((object.byteLength != other.byteLength) || - !equalFunc(new Uint8Array(object), new Uint8Array(other))) { - return false; - } - return true; - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - case mapTag: - var convert = mapToArray; - - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - - if (object.size != other.size && !isPartial) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked) { - return stacked == other; - } - bitmask |= COMPARE_UNORDERED_FLAG; - - // Recursively compare objects (susceptible to call stack limits). - stack.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); - stack['delete'](object); - return result; - - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); - } - } - return false; - } - - /** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = getAllKeys(object), - objLength = objProps.length, - othProps = getAllKeys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Check that cyclic values are equal. - var objStacked = stack.get(object); - var othStacked = stack.get(other); - if (objStacked && othStacked) { - return objStacked == other && othStacked == object; - } - var result = true; - stack.set(object, other); - stack.set(other, object); - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, objValue, key, other, object, stack) - : customizer(objValue, othValue, key, object, other, stack); - } - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - stack['delete'](object); - stack['delete'](other); - return result; - } - - /** - * A specialized version of `baseRest` which flattens the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ - function flatRest(func) { - return setToString(overRest(func, undefined, flatten), func + ''); - } - - /** - * Creates an array of own enumerable property names and symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ - function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); - } - - /** - * Creates an array of own and inherited enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ - function getAllKeysIn(object) { - return baseGetAllKeys(object, keysIn, getSymbolsIn); - } - - /** - * Gets metadata for `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {*} Returns the metadata for `func`. - */ - var getData = !metaMap ? noop : function(func) { - return metaMap.get(func); - }; - - /** - * Gets the name of `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {string} Returns the function name. - */ - function getFuncName(func) { - var result = (func.name + ''), - array = realNames[result], - length = hasOwnProperty.call(realNames, result) ? array.length : 0; - - while (length--) { - var data = array[length], - otherFunc = data.func; - if (otherFunc == null || otherFunc == func) { - return data.name; - } - } - return result; - } - - /** - * Gets the argument placeholder value for `func`. - * - * @private - * @param {Function} func The function to inspect. - * @returns {*} Returns the placeholder value. - */ - function getHolder(func) { - var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func; - return object.placeholder; - } - - /** - * Gets the appropriate "iteratee" function. If `_.iteratee` is customized, - * this function returns the custom method, otherwise it returns `baseIteratee`. - * If arguments are provided, the chosen function is invoked with them and - * its result is returned. - * - * @private - * @param {*} [value] The value to convert to an iteratee. - * @param {number} [arity] The arity of the created iteratee. - * @returns {Function} Returns the chosen function or its result. - */ - function getIteratee() { - var result = lodash.iteratee || iteratee; - result = result === iteratee ? baseIteratee : result; - return arguments.length ? result(arguments[0], arguments[1]) : result; - } - - /** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ - function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; - } - - /** - * Gets the property names, values, and compare flags of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the match data of `object`. - */ - function getMatchData(object) { - var result = keys(object), - length = result.length; - - while (length--) { - var key = result[length], - value = object[key]; - - result[length] = [key, value, isStrictComparable(value)]; - } - return result; - } - - /** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ - function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; - } - - /** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ - function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; - } - - /** - * Creates an array of the own enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ - var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); - }; - - /** - * Creates an array of the own and inherited enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ - var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { - var result = []; - while (object) { - arrayPush(result, getSymbols(object)); - object = getPrototype(object); - } - return result; - }; - - /** - * Gets the `toStringTag` of `value`. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ - var getTag = baseGetTag; - - // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. - if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || - (Map && getTag(new Map) != mapTag) || - (Promise && getTag(Promise.resolve()) != promiseTag) || - (Set && getTag(new Set) != setTag) || - (WeakMap && getTag(new WeakMap) != weakMapTag)) { - getTag = function(value) { - var result = baseGetTag(value), - Ctor = result == objectTag ? value.constructor : undefined, - ctorString = Ctor ? toSource(Ctor) : ''; - - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: return dataViewTag; - case mapCtorString: return mapTag; - case promiseCtorString: return promiseTag; - case setCtorString: return setTag; - case weakMapCtorString: return weakMapTag; - } - } - return result; - }; - } - - /** - * Gets the view, applying any `transforms` to the `start` and `end` positions. - * - * @private - * @param {number} start The start of the view. - * @param {number} end The end of the view. - * @param {Array} transforms The transformations to apply to the view. - * @returns {Object} Returns an object containing the `start` and `end` - * positions of the view. - */ - function getView(start, end, transforms) { - var index = -1, - length = transforms.length; - - while (++index < length) { - var data = transforms[index], - size = data.size; - - switch (data.type) { - case 'drop': start += size; break; - case 'dropRight': end -= size; break; - case 'take': end = nativeMin(end, start + size); break; - case 'takeRight': start = nativeMax(start, end - size); break; - } - } - return { 'start': start, 'end': end }; - } - - /** - * Extracts wrapper details from the `source` body comment. - * - * @private - * @param {string} source The source to inspect. - * @returns {Array} Returns the wrapper details. - */ - function getWrapDetails(source) { - var match = source.match(reWrapDetails); - return match ? match[1].split(reSplitDetails) : []; - } - - /** - * Checks if `path` exists on `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @param {Function} hasFunc The function to check properties. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - */ - function hasPath(object, path, hasFunc) { - path = castPath(path, object); - - var index = -1, - length = path.length, - result = false; - - while (++index < length) { - var key = toKey(path[index]); - if (!(result = object != null && hasFunc(object, key))) { - break; - } - object = object[key]; - } - if (result || ++index != length) { - return result; - } - length = object == null ? 0 : object.length; - return !!length && isLength(length) && isIndex(key, length) && - (isArray(object) || isArguments(object)); - } - - /** - * Initializes an array clone. - * - * @private - * @param {Array} array The array to clone. - * @returns {Array} Returns the initialized clone. - */ - function initCloneArray(array) { - var length = array.length, - result = new array.constructor(length); - - // Add properties assigned by `RegExp#exec`. - if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { - result.index = array.index; - result.input = array.input; - } - return result; - } - - /** - * Initializes an object clone. - * - * @private - * @param {Object} object The object to clone. - * @returns {Object} Returns the initialized clone. - */ - function initCloneObject(object) { - return (typeof object.constructor == 'function' && !isPrototype(object)) - ? baseCreate(getPrototype(object)) - : {}; - } - - /** - * Initializes an object clone based on its `toStringTag`. - * - * **Note:** This function only supports cloning values with tags of - * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. - * - * @private - * @param {Object} object The object to clone. - * @param {string} tag The `toStringTag` of the object to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the initialized clone. - */ - function initCloneByTag(object, tag, isDeep) { - var Ctor = object.constructor; - switch (tag) { - case arrayBufferTag: - return cloneArrayBuffer(object); - - case boolTag: - case dateTag: - return new Ctor(+object); - - case dataViewTag: - return cloneDataView(object, isDeep); - - case float32Tag: case float64Tag: - case int8Tag: case int16Tag: case int32Tag: - case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: - return cloneTypedArray(object, isDeep); - - case mapTag: - return new Ctor; - - case numberTag: - case stringTag: - return new Ctor(object); - - case regexpTag: - return cloneRegExp(object); - - case setTag: - return new Ctor; - - case symbolTag: - return cloneSymbol(object); - } - } - - /** - * Inserts wrapper `details` in a comment at the top of the `source` body. - * - * @private - * @param {string} source The source to modify. - * @returns {Array} details The details to insert. - * @returns {string} Returns the modified source. - */ - function insertWrapDetails(source, details) { - var length = details.length; - if (!length) { - return source; - } - var lastIndex = length - 1; - details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; - details = details.join(length > 2 ? ', ' : ' '); - return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); - } - - /** - * Checks if `value` is a flattenable `arguments` object or array. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. - */ - function isFlattenable(value) { - return isArray(value) || isArguments(value) || - !!(spreadableSymbol && value && value[spreadableSymbol]); - } - - /** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ - function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - - return !!length && - (type == 'number' || - (type != 'symbol' && reIsUint.test(value))) && - (value > -1 && value % 1 == 0 && value < length); - } - - /** - * Checks if the given arguments are from an iteratee call. - * - * @private - * @param {*} value The potential iteratee value argument. - * @param {*} index The potential iteratee index or key argument. - * @param {*} object The potential iteratee object argument. - * @returns {boolean} Returns `true` if the arguments are from an iteratee call, - * else `false`. - */ - function isIterateeCall(value, index, object) { - if (!isObject(object)) { - return false; - } - var type = typeof index; - if (type == 'number' - ? (isArrayLike(object) && isIndex(index, object.length)) - : (type == 'string' && index in object) - ) { - return eq(object[index], value); - } - return false; - } - - /** - * Checks if `value` is a property name and not a property path. - * - * @private - * @param {*} value The value to check. - * @param {Object} [object] The object to query keys on. - * @returns {boolean} Returns `true` if `value` is a property name, else `false`. - */ - function isKey(value, object) { - if (isArray(value)) { - return false; - } - var type = typeof value; - if (type == 'number' || type == 'symbol' || type == 'boolean' || - value == null || isSymbol(value)) { - return true; - } - return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || - (object != null && value in Object(object)); - } - - /** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ - function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); - } - - /** - * Checks if `func` has a lazy counterpart. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` has a lazy counterpart, - * else `false`. - */ - function isLaziable(func) { - var funcName = getFuncName(func), - other = lodash[funcName]; - - if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { - return false; - } - if (func === other) { - return true; - } - var data = getData(other); - return !!data && func === data[0]; - } - - /** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ - function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); - } - - /** - * Checks if `func` is capable of being masked. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `func` is maskable, else `false`. - */ - var isMaskable = coreJsData ? isFunction : stubFalse; - - /** - * Checks if `value` is likely a prototype object. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. - */ - function isPrototype(value) { - var Ctor = value && value.constructor, - proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; - - return value === proto; - } - - /** - * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` if suitable for strict - * equality comparisons, else `false`. - */ - function isStrictComparable(value) { - return value === value && !isObject(value); - } - - /** - * A specialized version of `matchesProperty` for source values suitable - * for strict equality comparisons, i.e. `===`. - * - * @private - * @param {string} key The key of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ - function matchesStrictComparable(key, srcValue) { - return function(object) { - if (object == null) { - return false; - } - return object[key] === srcValue && - (srcValue !== undefined || (key in Object(object))); - }; - } - - /** - * A specialized version of `_.memoize` which clears the memoized function's - * cache when it exceeds `MAX_MEMOIZE_SIZE`. - * - * @private - * @param {Function} func The function to have its output memoized. - * @returns {Function} Returns the new memoized function. - */ - function memoizeCapped(func) { - var result = memoize(func, function(key) { - if (cache.size === MAX_MEMOIZE_SIZE) { - cache.clear(); - } - return key; - }); - - var cache = result.cache; - return result; - } - - /** - * Merges the function metadata of `source` into `data`. - * - * Merging metadata reduces the number of wrappers used to invoke a function. - * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` - * may be applied regardless of execution order. Methods like `_.ary` and - * `_.rearg` modify function arguments, making the order in which they are - * executed important, preventing the merging of metadata. However, we make - * an exception for a safe combined case where curried functions have `_.ary` - * and or `_.rearg` applied. - * - * @private - * @param {Array} data The destination metadata. - * @param {Array} source The source metadata. - * @returns {Array} Returns `data`. - */ - function mergeData(data, source) { - var bitmask = data[1], - srcBitmask = source[1], - newBitmask = bitmask | srcBitmask, - isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); - - var isCombo = - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || - ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); - - // Exit early if metadata can't be merged. - if (!(isCommon || isCombo)) { - return data; - } - // Use source `thisArg` if available. - if (srcBitmask & WRAP_BIND_FLAG) { - data[2] = source[2]; - // Set when currying a bound function. - newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; - } - // Compose partial arguments. - var value = source[3]; - if (value) { - var partials = data[3]; - data[3] = partials ? composeArgs(partials, value, source[4]) : value; - data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; - } - // Compose partial right arguments. - value = source[5]; - if (value) { - partials = data[5]; - data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; - data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; - } - // Use source `argPos` if available. - value = source[7]; - if (value) { - data[7] = value; - } - // Use source `ary` if it's smaller. - if (srcBitmask & WRAP_ARY_FLAG) { - data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); - } - // Use source `arity` if one is not provided. - if (data[9] == null) { - data[9] = source[9]; - } - // Use source `func` and merge bitmasks. - data[0] = source[0]; - data[1] = newBitmask; - - return data; - } - - /** - * This function is like - * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * except that it includes inherited enumerable properties. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } - } - return result; - } - - /** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ - function objectToString(value) { - return nativeObjectToString.call(value); - } - - /** - * A specialized version of `baseRest` which transforms the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @param {Function} transform The rest array transform. - * @returns {Function} Returns the new function. - */ - function overRest(func, start, transform) { - start = nativeMax(start === undefined ? (func.length - 1) : start, 0); - return function() { - var args = arguments, - index = -1, - length = nativeMax(args.length - start, 0), - array = Array(length); - - while (++index < length) { - array[index] = args[start + index]; - } - index = -1; - var otherArgs = Array(start + 1); - while (++index < start) { - otherArgs[index] = args[index]; - } - otherArgs[start] = transform(array); - return apply(func, this, otherArgs); - }; - } - - /** - * Gets the parent value at `path` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} path The path to get the parent value of. - * @returns {*} Returns the parent value. - */ - function parent(object, path) { - return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); - } - - /** - * Reorder `array` according to the specified indexes where the element at - * the first index is assigned as the first element, the element at - * the second index is assigned as the second element, and so on. - * - * @private - * @param {Array} array The array to reorder. - * @param {Array} indexes The arranged array indexes. - * @returns {Array} Returns `array`. - */ - function reorder(array, indexes) { - var arrLength = array.length, - length = nativeMin(indexes.length, arrLength), - oldArray = copyArray(array); - - while (length--) { - var index = indexes[length]; - array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; - } - return array; - } - - /** - * Gets the value at `key`, unless `key` is "__proto__" or "constructor". - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ - function safeGet(object, key) { - if (key === 'constructor' && typeof object[key] === 'function') { - return; - } - - if (key == '__proto__') { - return; - } - - return object[key]; - } - - /** - * Sets metadata for `func`. - * - * **Note:** If this function becomes hot, i.e. is invoked a lot in a short - * period of time, it will trip its breaker and transition to an identity - * function to avoid garbage collection pauses in V8. See - * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) - * for more details. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ - var setData = shortOut(baseSetData); - - /** - * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout). - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @returns {number|Object} Returns the timer id or timeout object. - */ - var setTimeout = ctxSetTimeout || function(func, wait) { - return root.setTimeout(func, wait); - }; - - /** - * Sets the `toString` method of `func` to return `string`. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ - var setToString = shortOut(baseSetToString); - - /** - * Sets the `toString` method of `wrapper` to mimic the source of `reference` - * with wrapper details in a comment at the top of the source body. - * - * @private - * @param {Function} wrapper The function to modify. - * @param {Function} reference The reference function. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Function} Returns `wrapper`. - */ - function setWrapToString(wrapper, reference, bitmask) { - var source = (reference + ''); - return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); - } - - /** - * Creates a function that'll short out and invoke `identity` instead - * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` - * milliseconds. - * - * @private - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new shortable function. - */ - function shortOut(func) { - var count = 0, - lastCalled = 0; - - return function() { - var stamp = nativeNow(), - remaining = HOT_SPAN - (stamp - lastCalled); - - lastCalled = stamp; - if (remaining > 0) { - if (++count >= HOT_COUNT) { - return arguments[0]; - } - } else { - count = 0; - } - return func.apply(undefined, arguments); - }; - } - - /** - * A specialized version of `_.shuffle` which mutates and sets the size of `array`. - * - * @private - * @param {Array} array The array to shuffle. - * @param {number} [size=array.length] The size of `array`. - * @returns {Array} Returns `array`. - */ - function shuffleSelf(array, size) { - var index = -1, - length = array.length, - lastIndex = length - 1; - - size = size === undefined ? length : size; - while (++index < size) { - var rand = baseRandom(index, lastIndex), - value = array[rand]; - - array[rand] = array[index]; - array[index] = value; - } - array.length = size; - return array; - } - - /** - * Converts `string` to a property path array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the property path array. - */ - var stringToPath = memoizeCapped(function(string) { - var result = []; - if (string.charCodeAt(0) === 46 /* . */) { - result.push(''); - } - string.replace(rePropName, function(match, number, quote, subString) { - result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); - }); - return result; - }); - - /** - * Converts `value` to a string key if it's not a string or symbol. - * - * @private - * @param {*} value The value to inspect. - * @returns {string|symbol} Returns the key. - */ - function toKey(value) { - if (typeof value == 'string' || isSymbol(value)) { - return value; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; - } - - /** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to convert. - * @returns {string} Returns the source code. - */ - function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; - } - - /** - * Updates wrapper `details` based on `bitmask` flags. - * - * @private - * @returns {Array} details The details to modify. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Array} Returns `details`. - */ - function updateWrapDetails(details, bitmask) { - arrayEach(wrapFlags, function(pair) { - var value = '_.' + pair[0]; - if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { - details.push(value); - } - }); - return details.sort(); - } - - /** - * Creates a clone of `wrapper`. - * - * @private - * @param {Object} wrapper The wrapper to clone. - * @returns {Object} Returns the cloned wrapper. - */ - function wrapperClone(wrapper) { - if (wrapper instanceof LazyWrapper) { - return wrapper.clone(); - } - var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); - result.__actions__ = copyArray(wrapper.__actions__); - result.__index__ = wrapper.__index__; - result.__values__ = wrapper.__values__; - return result; - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates an array of elements split into groups the length of `size`. - * If `array` can't be split evenly, the final chunk will be the remaining - * elements. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to process. - * @param {number} [size=1] The length of each chunk - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the new array of chunks. - * @example - * - * _.chunk(['a', 'b', 'c', 'd'], 2); - * // => [['a', 'b'], ['c', 'd']] - * - * _.chunk(['a', 'b', 'c', 'd'], 3); - * // => [['a', 'b', 'c'], ['d']] - */ - function chunk(array, size, guard) { - if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { - size = 1; - } else { - size = nativeMax(toInteger(size), 0); - } - var length = array == null ? 0 : array.length; - if (!length || size < 1) { - return []; - } - var index = 0, - resIndex = 0, - result = Array(nativeCeil(length / size)); - - while (index < length) { - result[resIndex++] = baseSlice(array, index, (index += size)); - } - return result; - } - - /** - * Creates an array with all falsey values removed. The values `false`, `null`, - * `0`, `""`, `undefined`, and `NaN` are falsey. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to compact. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.compact([0, 1, false, 2, '', 3]); - * // => [1, 2, 3] - */ - function compact(array) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value) { - result[resIndex++] = value; - } - } - return result; - } - - /** - * Creates a new array concatenating `array` with any additional arrays - * and/or values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to concatenate. - * @param {...*} [values] The values to concatenate. - * @returns {Array} Returns the new concatenated array. - * @example - * - * var array = [1]; - * var other = _.concat(array, 2, [3], [[4]]); - * - * console.log(other); - * // => [1, 2, 3, [4]] - * - * console.log(array); - * // => [1] - */ - function concat() { - var length = arguments.length; - if (!length) { - return []; - } - var args = Array(length - 1), - array = arguments[0], - index = length; - - while (index--) { - args[index - 1] = arguments[index]; - } - return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); - } - - /** - * Creates an array of `array` values not included in the other given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * **Note:** Unlike `_.pullAll`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @returns {Array} Returns the new array of filtered values. - * @see _.without, _.xor - * @example - * - * _.difference([2, 1], [2, 3]); - * // => [1] - */ - var difference = baseRest(function(array, values) { - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) - : []; - }); - - /** - * This method is like `_.difference` except that it accepts `iteratee` which - * is invoked for each element of `array` and `values` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * **Note:** Unlike `_.pullAllBy`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [1.2] - * - * // The `_.property` iteratee shorthand. - * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); - * // => [{ 'x': 2 }] - */ - var differenceBy = baseRest(function(array, values) { - var iteratee = last(values); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)) - : []; - }); - - /** - * This method is like `_.difference` except that it accepts `comparator` - * which is invoked to compare elements of `array` to `values`. The order and - * references of result values are determined by the first array. The comparator - * is invoked with two arguments: (arrVal, othVal). - * - * **Note:** Unlike `_.pullAllWith`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * - * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); - * // => [{ 'x': 2, 'y': 1 }] - */ - var differenceWith = baseRest(function(array, values) { - var comparator = last(values); - if (isArrayLikeObject(comparator)) { - comparator = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) - : []; - }); - - /** - * Creates a slice of `array` with `n` elements dropped from the beginning. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.drop([1, 2, 3]); - * // => [2, 3] - * - * _.drop([1, 2, 3], 2); - * // => [3] - * - * _.drop([1, 2, 3], 5); - * // => [] - * - * _.drop([1, 2, 3], 0); - * // => [1, 2, 3] - */ - function drop(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - return baseSlice(array, n < 0 ? 0 : n, length); - } - - /** - * Creates a slice of `array` with `n` elements dropped from the end. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.dropRight([1, 2, 3]); - * // => [1, 2] - * - * _.dropRight([1, 2, 3], 2); - * // => [1] - * - * _.dropRight([1, 2, 3], 5); - * // => [] - * - * _.dropRight([1, 2, 3], 0); - * // => [1, 2, 3] - */ - function dropRight(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - n = length - n; - return baseSlice(array, 0, n < 0 ? 0 : n); - } - - /** - * Creates a slice of `array` excluding elements dropped from the end. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.dropRightWhile(users, function(o) { return !o.active; }); - * // => objects for ['barney'] - * - * // The `_.matches` iteratee shorthand. - * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); - * // => objects for ['barney', 'fred'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropRightWhile(users, ['active', false]); - * // => objects for ['barney'] - * - * // The `_.property` iteratee shorthand. - * _.dropRightWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ - function dropRightWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), true, true) - : []; - } - - /** - * Creates a slice of `array` excluding elements dropped from the beginning. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.dropWhile(users, function(o) { return !o.active; }); - * // => objects for ['pebbles'] - * - * // The `_.matches` iteratee shorthand. - * _.dropWhile(users, { 'user': 'barney', 'active': false }); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropWhile(users, ['active', false]); - * // => objects for ['pebbles'] - * - * // The `_.property` iteratee shorthand. - * _.dropWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ - function dropWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), true) - : []; - } - - /** - * Fills elements of `array` with `value` from `start` up to, but not - * including, `end`. - * - * **Note:** This method mutates `array`. - * - * @static - * @memberOf _ - * @since 3.2.0 - * @category Array - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - * @example - * - * var array = [1, 2, 3]; - * - * _.fill(array, 'a'); - * console.log(array); - * // => ['a', 'a', 'a'] - * - * _.fill(Array(3), 2); - * // => [2, 2, 2] - * - * _.fill([4, 6, 8, 10], '*', 1, 3); - * // => [4, '*', '*', 10] - */ - function fill(array, value, start, end) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { - start = 0; - end = length; - } - return baseFill(array, value, start, end); - } - - /** - * This method is like `_.find` except that it returns the index of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.findIndex(users, function(o) { return o.user == 'barney'; }); - * // => 0 - * - * // The `_.matches` iteratee shorthand. - * _.findIndex(users, { 'user': 'fred', 'active': false }); - * // => 1 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findIndex(users, ['active', false]); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.findIndex(users, 'active'); - * // => 2 - */ - function findIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseFindIndex(array, getIteratee(predicate, 3), index); - } - - /** - * This method is like `_.findIndex` except that it iterates over elements - * of `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); - * // => 2 - * - * // The `_.matches` iteratee shorthand. - * _.findLastIndex(users, { 'user': 'barney', 'active': true }); - * // => 0 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastIndex(users, ['active', false]); - * // => 2 - * - * // The `_.property` iteratee shorthand. - * _.findLastIndex(users, 'active'); - * // => 0 - */ - function findLastIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length - 1; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = fromIndex < 0 - ? nativeMax(length + index, 0) - : nativeMin(index, length - 1); - } - return baseFindIndex(array, getIteratee(predicate, 3), index, true); - } - - /** - * Flattens `array` a single level deep. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flatten([1, [2, [3, [4]], 5]]); - * // => [1, 2, [3, [4]], 5] - */ - function flatten(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, 1) : []; - } - - /** - * Recursively flattens `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flattenDeep([1, [2, [3, [4]], 5]]); - * // => [1, 2, 3, 4, 5] - */ - function flattenDeep(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, INFINITY) : []; - } - - /** - * Recursively flatten `array` up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Array - * @param {Array} array The array to flatten. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * var array = [1, [2, [3, [4]], 5]]; - * - * _.flattenDepth(array, 1); - * // => [1, 2, [3, [4]], 5] - * - * _.flattenDepth(array, 2); - * // => [1, 2, 3, [4], 5] - */ - function flattenDepth(array, depth) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(array, depth); - } - - /** - * The inverse of `_.toPairs`; this method returns an object composed - * from key-value `pairs`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} pairs The key-value pairs. - * @returns {Object} Returns the new object. - * @example - * - * _.fromPairs([['a', 1], ['b', 2]]); - * // => { 'a': 1, 'b': 2 } - */ - function fromPairs(pairs) { - var index = -1, - length = pairs == null ? 0 : pairs.length, - result = {}; - - while (++index < length) { - var pair = pairs[index]; - result[pair[0]] = pair[1]; - } - return result; - } - - /** - * Gets the first element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias first - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the first element of `array`. - * @example - * - * _.head([1, 2, 3]); - * // => 1 - * - * _.head([]); - * // => undefined - */ - function head(array) { - return (array && array.length) ? array[0] : undefined; - } - - /** - * Gets the index at which the first occurrence of `value` is found in `array` - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. If `fromIndex` is negative, it's used as the - * offset from the end of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.indexOf([1, 2, 1, 2], 2); - * // => 1 - * - * // Search from the `fromIndex`. - * _.indexOf([1, 2, 1, 2], 2, 2); - * // => 3 - */ - function indexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseIndexOf(array, value, index); - } - - /** - * Gets all but the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.initial([1, 2, 3]); - * // => [1, 2] - */ - function initial(array) { - var length = array == null ? 0 : array.length; - return length ? baseSlice(array, 0, -1) : []; - } - - /** - * Creates an array of unique values that are included in all given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersection([2, 1], [2, 3]); - * // => [2] - */ - var intersection = baseRest(function(arrays) { - var mapped = arrayMap(arrays, castArrayLikeObject); - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped) - : []; - }); - - /** - * This method is like `_.intersection` except that it accepts `iteratee` - * which is invoked for each element of each `arrays` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [2.1] - * - * // The `_.property` iteratee shorthand. - * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }] - */ - var intersectionBy = baseRest(function(arrays) { - var iteratee = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - if (iteratee === last(mapped)) { - iteratee = undefined; - } else { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, getIteratee(iteratee, 2)) - : []; - }); - - /** - * This method is like `_.intersection` except that it accepts `comparator` - * which is invoked to compare elements of `arrays`. The order and references - * of result values are determined by the first array. The comparator is - * invoked with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.intersectionWith(objects, others, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }] - */ - var intersectionWith = baseRest(function(arrays) { - var comparator = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - comparator = typeof comparator == 'function' ? comparator : undefined; - if (comparator) { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, undefined, comparator) - : []; - }); - - /** - * Converts all elements in `array` into a string separated by `separator`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to convert. - * @param {string} [separator=','] The element separator. - * @returns {string} Returns the joined string. - * @example - * - * _.join(['a', 'b', 'c'], '~'); - * // => 'a~b~c' - */ - function join(array, separator) { - return array == null ? '' : nativeJoin.call(array, separator); - } - - /** - * Gets the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the last element of `array`. - * @example - * - * _.last([1, 2, 3]); - * // => 3 - */ - function last(array) { - var length = array == null ? 0 : array.length; - return length ? array[length - 1] : undefined; - } - - /** - * This method is like `_.indexOf` except that it iterates over elements of - * `array` from right to left. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.lastIndexOf([1, 2, 1, 2], 2); - * // => 3 - * - * // Search from the `fromIndex`. - * _.lastIndexOf([1, 2, 1, 2], 2, 2); - * // => 1 - */ - function lastIndexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); - } - return value === value - ? strictLastIndexOf(array, value, index) - : baseFindIndex(array, baseIsNaN, index, true); - } - - /** - * Gets the element at index `n` of `array`. If `n` is negative, the nth - * element from the end is returned. - * - * @static - * @memberOf _ - * @since 4.11.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=0] The index of the element to return. - * @returns {*} Returns the nth element of `array`. - * @example - * - * var array = ['a', 'b', 'c', 'd']; - * - * _.nth(array, 1); - * // => 'b' - * - * _.nth(array, -2); - * // => 'c'; - */ - function nth(array, n) { - return (array && array.length) ? baseNth(array, toInteger(n)) : undefined; - } - - /** - * Removes all given values from `array` using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove` - * to remove elements from an array by predicate. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {...*} [values] The values to remove. - * @returns {Array} Returns `array`. - * @example - * - * var array = ['a', 'b', 'c', 'a', 'b', 'c']; - * - * _.pull(array, 'a', 'c'); - * console.log(array); - * // => ['b', 'b'] - */ - var pull = baseRest(pullAll); - - /** - * This method is like `_.pull` except that it accepts an array of values to remove. - * - * **Note:** Unlike `_.difference`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @returns {Array} Returns `array`. - * @example - * - * var array = ['a', 'b', 'c', 'a', 'b', 'c']; - * - * _.pullAll(array, ['a', 'c']); - * console.log(array); - * // => ['b', 'b'] - */ - function pullAll(array, values) { - return (array && array.length && values && values.length) - ? basePullAll(array, values) - : array; - } - - /** - * This method is like `_.pullAll` except that it accepts `iteratee` which is - * invoked for each element of `array` and `values` to generate the criterion - * by which they're compared. The iteratee is invoked with one argument: (value). - * - * **Note:** Unlike `_.differenceBy`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns `array`. - * @example - * - * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }]; - * - * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x'); - * console.log(array); - * // => [{ 'x': 2 }] - */ - function pullAllBy(array, values, iteratee) { - return (array && array.length && values && values.length) - ? basePullAll(array, values, getIteratee(iteratee, 2)) - : array; - } - - /** - * This method is like `_.pullAll` except that it accepts `comparator` which - * is invoked to compare elements of `array` to `values`. The comparator is - * invoked with two arguments: (arrVal, othVal). - * - * **Note:** Unlike `_.differenceWith`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns `array`. - * @example - * - * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }]; - * - * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual); - * console.log(array); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }] - */ - function pullAllWith(array, values, comparator) { - return (array && array.length && values && values.length) - ? basePullAll(array, values, undefined, comparator) - : array; - } - - /** - * Removes elements from `array` corresponding to `indexes` and returns an - * array of removed elements. - * - * **Note:** Unlike `_.at`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {...(number|number[])} [indexes] The indexes of elements to remove. - * @returns {Array} Returns the new array of removed elements. - * @example - * - * var array = ['a', 'b', 'c', 'd']; - * var pulled = _.pullAt(array, [1, 3]); - * - * console.log(array); - * // => ['a', 'c'] - * - * console.log(pulled); - * // => ['b', 'd'] - */ - var pullAt = flatRest(function(array, indexes) { - var length = array == null ? 0 : array.length, - result = baseAt(array, indexes); - - basePullAt(array, arrayMap(indexes, function(index) { - return isIndex(index, length) ? +index : index; - }).sort(compareAscending)); - - return result; - }); - - /** - * Removes all elements from `array` that `predicate` returns truthy for - * and returns an array of the removed elements. The predicate is invoked - * with three arguments: (value, index, array). - * - * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` - * to pull elements from an array by value. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new array of removed elements. - * @example - * - * var array = [1, 2, 3, 4]; - * var evens = _.remove(array, function(n) { - * return n % 2 == 0; - * }); - * - * console.log(array); - * // => [1, 3] - * - * console.log(evens); - * // => [2, 4] - */ - function remove(array, predicate) { - var result = []; - if (!(array && array.length)) { - return result; - } - var index = -1, - indexes = [], - length = array.length; - - predicate = getIteratee(predicate, 3); - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result.push(value); - indexes.push(index); - } - } - basePullAt(array, indexes); - return result; - } - - /** - * Reverses `array` so that the first element becomes the last, the second - * element becomes the second to last, and so on. - * - * **Note:** This method mutates `array` and is based on - * [`Array#reverse`](https://mdn.io/Array/reverse). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @returns {Array} Returns `array`. - * @example - * - * var array = [1, 2, 3]; - * - * _.reverse(array); - * // => [3, 2, 1] - * - * console.log(array); - * // => [3, 2, 1] - */ - function reverse(array) { - return array == null ? array : nativeReverse.call(array); - } - - /** - * Creates a slice of `array` from `start` up to, but not including, `end`. - * - * **Note:** This method is used instead of - * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are - * returned. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function slice(array, start, end) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { - start = 0; - end = length; - } - else { - start = start == null ? 0 : toInteger(start); - end = end === undefined ? length : toInteger(end); - } - return baseSlice(array, start, end); - } - - /** - * Uses a binary search to determine the lowest index at which `value` - * should be inserted into `array` in order to maintain its sort order. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * _.sortedIndex([30, 50], 40); - * // => 1 - */ - function sortedIndex(array, value) { - return baseSortedIndex(array, value); - } - - /** - * This method is like `_.sortedIndex` except that it accepts `iteratee` - * which is invoked for `value` and each element of `array` to compute their - * sort ranking. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * var objects = [{ 'x': 4 }, { 'x': 5 }]; - * - * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.sortedIndexBy(objects, { 'x': 4 }, 'x'); - * // => 0 - */ - function sortedIndexBy(array, value, iteratee) { - return baseSortedIndexBy(array, value, getIteratee(iteratee, 2)); - } - - /** - * This method is like `_.indexOf` except that it performs a binary - * search on a sorted `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.sortedIndexOf([4, 5, 5, 5, 6], 5); - * // => 1 - */ - function sortedIndexOf(array, value) { - var length = array == null ? 0 : array.length; - if (length) { - var index = baseSortedIndex(array, value); - if (index < length && eq(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * This method is like `_.sortedIndex` except that it returns the highest - * index at which `value` should be inserted into `array` in order to - * maintain its sort order. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * _.sortedLastIndex([4, 5, 5, 5, 6], 5); - * // => 4 - */ - function sortedLastIndex(array, value) { - return baseSortedIndex(array, value, true); - } - - /** - * This method is like `_.sortedLastIndex` except that it accepts `iteratee` - * which is invoked for `value` and each element of `array` to compute their - * sort ranking. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * var objects = [{ 'x': 4 }, { 'x': 5 }]; - * - * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); - * // => 1 - * - * // The `_.property` iteratee shorthand. - * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x'); - * // => 1 - */ - function sortedLastIndexBy(array, value, iteratee) { - return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true); - } - - /** - * This method is like `_.lastIndexOf` except that it performs a binary - * search on a sorted `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5); - * // => 3 - */ - function sortedLastIndexOf(array, value) { - var length = array == null ? 0 : array.length; - if (length) { - var index = baseSortedIndex(array, value, true) - 1; - if (eq(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * This method is like `_.uniq` except that it's designed and optimized - * for sorted arrays. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.sortedUniq([1, 1, 2]); - * // => [1, 2] - */ - function sortedUniq(array) { - return (array && array.length) - ? baseSortedUniq(array) - : []; - } - - /** - * This method is like `_.uniqBy` except that it's designed and optimized - * for sorted arrays. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor); - * // => [1.1, 2.3] - */ - function sortedUniqBy(array, iteratee) { - return (array && array.length) - ? baseSortedUniq(array, getIteratee(iteratee, 2)) - : []; - } - - /** - * Gets all but the first element of `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to query. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.tail([1, 2, 3]); - * // => [2, 3] - */ - function tail(array) { - var length = array == null ? 0 : array.length; - return length ? baseSlice(array, 1, length) : []; - } - - /** - * Creates a slice of `array` with `n` elements taken from the beginning. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to take. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.take([1, 2, 3]); - * // => [1] - * - * _.take([1, 2, 3], 2); - * // => [1, 2] - * - * _.take([1, 2, 3], 5); - * // => [1, 2, 3] - * - * _.take([1, 2, 3], 0); - * // => [] - */ - function take(array, n, guard) { - if (!(array && array.length)) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - return baseSlice(array, 0, n < 0 ? 0 : n); - } - - /** - * Creates a slice of `array` with `n` elements taken from the end. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to take. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.takeRight([1, 2, 3]); - * // => [3] - * - * _.takeRight([1, 2, 3], 2); - * // => [2, 3] - * - * _.takeRight([1, 2, 3], 5); - * // => [1, 2, 3] - * - * _.takeRight([1, 2, 3], 0); - * // => [] - */ - function takeRight(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - n = length - n; - return baseSlice(array, n < 0 ? 0 : n, length); - } - - /** - * Creates a slice of `array` with elements taken from the end. Elements are - * taken until `predicate` returns falsey. The predicate is invoked with - * three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.takeRightWhile(users, function(o) { return !o.active; }); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.matches` iteratee shorthand. - * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false }); - * // => objects for ['pebbles'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.takeRightWhile(users, ['active', false]); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.property` iteratee shorthand. - * _.takeRightWhile(users, 'active'); - * // => [] - */ - function takeRightWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), false, true) - : []; - } - - /** - * Creates a slice of `array` with elements taken from the beginning. Elements - * are taken until `predicate` returns falsey. The predicate is invoked with - * three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.takeWhile(users, function(o) { return !o.active; }); - * // => objects for ['barney', 'fred'] - * - * // The `_.matches` iteratee shorthand. - * _.takeWhile(users, { 'user': 'barney', 'active': false }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.takeWhile(users, ['active', false]); - * // => objects for ['barney', 'fred'] - * - * // The `_.property` iteratee shorthand. - * _.takeWhile(users, 'active'); - * // => [] - */ - function takeWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3)) - : []; - } - - /** - * Creates an array of unique values, in order, from all given arrays using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of combined values. - * @example - * - * _.union([2], [1, 2]); - * // => [2, 1] - */ - var union = baseRest(function(arrays) { - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); - }); - - /** - * This method is like `_.union` except that it accepts `iteratee` which is - * invoked for each element of each `arrays` to generate the criterion by - * which uniqueness is computed. Result values are chosen from the first - * array in which the value occurs. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of combined values. - * @example - * - * _.unionBy([2.1], [1.2, 2.3], Math.floor); - * // => [2.1, 1.2] - * - * // The `_.property` iteratee shorthand. - * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }, { 'x': 2 }] - */ - var unionBy = baseRest(function(arrays) { - var iteratee = last(arrays); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)); - }); - - /** - * This method is like `_.union` except that it accepts `comparator` which - * is invoked to compare elements of `arrays`. Result values are chosen from - * the first array in which the value occurs. The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of combined values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.unionWith(objects, others, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] - */ - var unionWith = baseRest(function(arrays) { - var comparator = last(arrays); - comparator = typeof comparator == 'function' ? comparator : undefined; - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator); - }); - - /** - * Creates a duplicate-free version of an array, using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons, in which only the first occurrence of each element - * is kept. The order of result values is determined by the order they occur - * in the array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.uniq([2, 1, 2]); - * // => [2, 1] - */ - function uniq(array) { - return (array && array.length) ? baseUniq(array) : []; - } - - /** - * This method is like `_.uniq` except that it accepts `iteratee` which is - * invoked for each element in `array` to generate the criterion by which - * uniqueness is computed. The order of result values is determined by the - * order they occur in the array. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.uniqBy([2.1, 1.2, 2.3], Math.floor); - * // => [2.1, 1.2] - * - * // The `_.property` iteratee shorthand. - * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }, { 'x': 2 }] - */ - function uniqBy(array, iteratee) { - return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : []; - } - - /** - * This method is like `_.uniq` except that it accepts `comparator` which - * is invoked to compare elements of `array`. The order of result values is - * determined by the order they occur in the array.The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.uniqWith(objects, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }] - */ - function uniqWith(array, comparator) { - comparator = typeof comparator == 'function' ? comparator : undefined; - return (array && array.length) ? baseUniq(array, undefined, comparator) : []; - } - - /** - * This method is like `_.zip` except that it accepts an array of grouped - * elements and creates an array regrouping the elements to their pre-zip - * configuration. - * - * @static - * @memberOf _ - * @since 1.2.0 - * @category Array - * @param {Array} array The array of grouped elements to process. - * @returns {Array} Returns the new array of regrouped elements. - * @example - * - * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]); - * // => [['a', 1, true], ['b', 2, false]] - * - * _.unzip(zipped); - * // => [['a', 'b'], [1, 2], [true, false]] - */ - function unzip(array) { - if (!(array && array.length)) { - return []; - } - var length = 0; - array = arrayFilter(array, function(group) { - if (isArrayLikeObject(group)) { - length = nativeMax(group.length, length); - return true; - } - }); - return baseTimes(length, function(index) { - return arrayMap(array, baseProperty(index)); - }); - } - - /** - * This method is like `_.unzip` except that it accepts `iteratee` to specify - * how regrouped values should be combined. The iteratee is invoked with the - * elements of each group: (...group). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Array - * @param {Array} array The array of grouped elements to process. - * @param {Function} [iteratee=_.identity] The function to combine - * regrouped values. - * @returns {Array} Returns the new array of regrouped elements. - * @example - * - * var zipped = _.zip([1, 2], [10, 20], [100, 200]); - * // => [[1, 10, 100], [2, 20, 200]] - * - * _.unzipWith(zipped, _.add); - * // => [3, 30, 300] - */ - function unzipWith(array, iteratee) { - if (!(array && array.length)) { - return []; - } - var result = unzip(array); - if (iteratee == null) { - return result; - } - return arrayMap(result, function(group) { - return apply(iteratee, undefined, group); - }); - } - - /** - * Creates an array excluding all given values using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * **Note:** Unlike `_.pull`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...*} [values] The values to exclude. - * @returns {Array} Returns the new array of filtered values. - * @see _.difference, _.xor - * @example - * - * _.without([2, 1, 2, 3], 1, 2); - * // => [3] - */ - var without = baseRest(function(array, values) { - return isArrayLikeObject(array) - ? baseDifference(array, values) - : []; - }); - - /** - * Creates an array of unique values that is the - * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference) - * of the given arrays. The order of result values is determined by the order - * they occur in the arrays. - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of filtered values. - * @see _.difference, _.without - * @example - * - * _.xor([2, 1], [2, 3]); - * // => [1, 3] - */ - var xor = baseRest(function(arrays) { - return baseXor(arrayFilter(arrays, isArrayLikeObject)); - }); - - /** - * This method is like `_.xor` except that it accepts `iteratee` which is - * invoked for each element of each `arrays` to generate the criterion by - * which by which they're compared. The order of result values is determined - * by the order they occur in the arrays. The iteratee is invoked with one - * argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [1.2, 3.4] - * - * // The `_.property` iteratee shorthand. - * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 2 }] - */ - var xorBy = baseRest(function(arrays) { - var iteratee = last(arrays); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2)); - }); - - /** - * This method is like `_.xor` except that it accepts `comparator` which is - * invoked to compare elements of `arrays`. The order of result values is - * determined by the order they occur in the arrays. The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.xorWith(objects, others, _.isEqual); - * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] - */ - var xorWith = baseRest(function(arrays) { - var comparator = last(arrays); - comparator = typeof comparator == 'function' ? comparator : undefined; - return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator); - }); - - /** - * Creates an array of grouped elements, the first of which contains the - * first elements of the given arrays, the second of which contains the - * second elements of the given arrays, and so on. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to process. - * @returns {Array} Returns the new array of grouped elements. - * @example - * - * _.zip(['a', 'b'], [1, 2], [true, false]); - * // => [['a', 1, true], ['b', 2, false]] - */ - var zip = baseRest(unzip); - - /** - * This method is like `_.fromPairs` except that it accepts two arrays, - * one of property identifiers and one of corresponding values. - * - * @static - * @memberOf _ - * @since 0.4.0 - * @category Array - * @param {Array} [props=[]] The property identifiers. - * @param {Array} [values=[]] The property values. - * @returns {Object} Returns the new object. - * @example - * - * _.zipObject(['a', 'b'], [1, 2]); - * // => { 'a': 1, 'b': 2 } - */ - function zipObject(props, values) { - return baseZipObject(props || [], values || [], assignValue); - } - - /** - * This method is like `_.zipObject` except that it supports property paths. - * - * @static - * @memberOf _ - * @since 4.1.0 - * @category Array - * @param {Array} [props=[]] The property identifiers. - * @param {Array} [values=[]] The property values. - * @returns {Object} Returns the new object. - * @example - * - * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]); - * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } } - */ - function zipObjectDeep(props, values) { - return baseZipObject(props || [], values || [], baseSet); - } - - /** - * This method is like `_.zip` except that it accepts `iteratee` to specify - * how grouped values should be combined. The iteratee is invoked with the - * elements of each group: (...group). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Array - * @param {...Array} [arrays] The arrays to process. - * @param {Function} [iteratee=_.identity] The function to combine - * grouped values. - * @returns {Array} Returns the new array of grouped elements. - * @example - * - * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) { - * return a + b + c; - * }); - * // => [111, 222] - */ - var zipWith = baseRest(function(arrays) { - var length = arrays.length, - iteratee = length > 1 ? arrays[length - 1] : undefined; - - iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; - return unzipWith(arrays, iteratee); - }); - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` wrapper instance that wraps `value` with explicit method - * chain sequences enabled. The result of such sequences must be unwrapped - * with `_#value`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Seq - * @param {*} value The value to wrap. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'pebbles', 'age': 1 } - * ]; - * - * var youngest = _ - * .chain(users) - * .sortBy('age') - * .map(function(o) { - * return o.user + ' is ' + o.age; - * }) - * .head() - * .value(); - * // => 'pebbles is 1' - */ - function chain(value) { - var result = lodash(value); - result.__chain__ = true; - return result; - } - - /** - * This method invokes `interceptor` and returns `value`. The interceptor - * is invoked with one argument; (value). The purpose of this method is to - * "tap into" a method chain sequence in order to modify intermediate results. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns `value`. - * @example - * - * _([1, 2, 3]) - * .tap(function(array) { - * // Mutate input array. - * array.pop(); - * }) - * .reverse() - * .value(); - * // => [2, 1] - */ - function tap(value, interceptor) { - interceptor(value); - return value; - } - - /** - * This method is like `_.tap` except that it returns the result of `interceptor`. - * The purpose of this method is to "pass thru" values replacing intermediate - * results in a method chain sequence. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns the result of `interceptor`. - * @example - * - * _(' abc ') - * .chain() - * .trim() - * .thru(function(value) { - * return [value]; - * }) - * .value(); - * // => ['abc'] - */ - function thru(value, interceptor) { - return interceptor(value); - } - - /** - * This method is the wrapper version of `_.at`. - * - * @name at - * @memberOf _ - * @since 1.0.0 - * @category Seq - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; - * - * _(object).at(['a[0].b.c', 'a[1]']).value(); - * // => [3, 4] - */ - var wrapperAt = flatRest(function(paths) { - var length = paths.length, - start = length ? paths[0] : 0, - value = this.__wrapped__, - interceptor = function(object) { return baseAt(object, paths); }; - - if (length > 1 || this.__actions__.length || - !(value instanceof LazyWrapper) || !isIndex(start)) { - return this.thru(interceptor); - } - value = value.slice(start, +start + (length ? 1 : 0)); - value.__actions__.push({ - 'func': thru, - 'args': [interceptor], - 'thisArg': undefined - }); - return new LodashWrapper(value, this.__chain__).thru(function(array) { - if (length && !array.length) { - array.push(undefined); - } - return array; - }); - }); - - /** - * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. - * - * @name chain - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 } - * ]; - * - * // A sequence without explicit chaining. - * _(users).head(); - * // => { 'user': 'barney', 'age': 36 } - * - * // A sequence with explicit chaining. - * _(users) - * .chain() - * .head() - * .pick('user') - * .value(); - * // => { 'user': 'barney' } - */ - function wrapperChain() { - return chain(this); - } - - /** - * Executes the chain sequence and returns the wrapped result. - * - * @name commit - * @memberOf _ - * @since 3.2.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var array = [1, 2]; - * var wrapped = _(array).push(3); - * - * console.log(array); - * // => [1, 2] - * - * wrapped = wrapped.commit(); - * console.log(array); - * // => [1, 2, 3] - * - * wrapped.last(); - * // => 3 - * - * console.log(array); - * // => [1, 2, 3] - */ - function wrapperCommit() { - return new LodashWrapper(this.value(), this.__chain__); - } - - /** - * Gets the next value on a wrapped object following the - * [iterator protocol](https://mdn.io/iteration_protocols#iterator). - * - * @name next - * @memberOf _ - * @since 4.0.0 - * @category Seq - * @returns {Object} Returns the next iterator value. - * @example - * - * var wrapped = _([1, 2]); - * - * wrapped.next(); - * // => { 'done': false, 'value': 1 } - * - * wrapped.next(); - * // => { 'done': false, 'value': 2 } - * - * wrapped.next(); - * // => { 'done': true, 'value': undefined } - */ - function wrapperNext() { - if (this.__values__ === undefined) { - this.__values__ = toArray(this.value()); - } - var done = this.__index__ >= this.__values__.length, - value = done ? undefined : this.__values__[this.__index__++]; - - return { 'done': done, 'value': value }; - } - - /** - * Enables the wrapper to be iterable. - * - * @name Symbol.iterator - * @memberOf _ - * @since 4.0.0 - * @category Seq - * @returns {Object} Returns the wrapper object. - * @example - * - * var wrapped = _([1, 2]); - * - * wrapped[Symbol.iterator]() === wrapped; - * // => true - * - * Array.from(wrapped); - * // => [1, 2] - */ - function wrapperToIterator() { - return this; - } - - /** - * Creates a clone of the chain sequence planting `value` as the wrapped value. - * - * @name plant - * @memberOf _ - * @since 3.2.0 - * @category Seq - * @param {*} value The value to plant. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * function square(n) { - * return n * n; - * } - * - * var wrapped = _([1, 2]).map(square); - * var other = wrapped.plant([3, 4]); - * - * other.value(); - * // => [9, 16] - * - * wrapped.value(); - * // => [1, 4] - */ - function wrapperPlant(value) { - var result, - parent = this; - - while (parent instanceof baseLodash) { - var clone = wrapperClone(parent); - clone.__index__ = 0; - clone.__values__ = undefined; - if (result) { - previous.__wrapped__ = clone; - } else { - result = clone; - } - var previous = clone; - parent = parent.__wrapped__; - } - previous.__wrapped__ = value; - return result; - } - - /** - * This method is the wrapper version of `_.reverse`. - * - * **Note:** This method mutates the wrapped array. - * - * @name reverse - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var array = [1, 2, 3]; - * - * _(array).reverse().value() - * // => [3, 2, 1] - * - * console.log(array); - * // => [3, 2, 1] - */ - function wrapperReverse() { - var value = this.__wrapped__; - if (value instanceof LazyWrapper) { - var wrapped = value; - if (this.__actions__.length) { - wrapped = new LazyWrapper(this); - } - wrapped = wrapped.reverse(); - wrapped.__actions__.push({ - 'func': thru, - 'args': [reverse], - 'thisArg': undefined - }); - return new LodashWrapper(wrapped, this.__chain__); - } - return this.thru(reverse); - } - - /** - * Executes the chain sequence to resolve the unwrapped value. - * - * @name value - * @memberOf _ - * @since 0.1.0 - * @alias toJSON, valueOf - * @category Seq - * @returns {*} Returns the resolved unwrapped value. - * @example - * - * _([1, 2, 3]).value(); - * // => [1, 2, 3] - */ - function wrapperValue() { - return baseWrapperValue(this.__wrapped__, this.__actions__); - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The corresponding value of - * each key is the number of times the key was returned by `iteratee`. The - * iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * _.countBy([6.1, 4.2, 6.3], Math.floor); - * // => { '4': 1, '6': 2 } - * - * // The `_.property` iteratee shorthand. - * _.countBy(['one', 'two', 'three'], 'length'); - * // => { '3': 2, '5': 1 } - */ - var countBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - ++result[key]; - } else { - baseAssignValue(result, key, 1); - } - }); - - /** - * Checks if `predicate` returns truthy for **all** elements of `collection`. - * Iteration is stopped once `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * **Note:** This method returns `true` for - * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because - * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of - * elements of empty collections. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - * @example - * - * _.every([true, 1, null, 'yes'], Boolean); - * // => false - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.every(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.every(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.every(users, 'active'); - * // => false - */ - function every(collection, predicate, guard) { - var func = isArray(collection) ? arrayEvery : baseEvery; - if (guard && isIterateeCall(collection, predicate, guard)) { - predicate = undefined; - } - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Iterates over elements of `collection`, returning an array of all elements - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * **Note:** Unlike `_.remove`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.reject - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * _.filter(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, { 'age': 36, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.filter(users, 'active'); - * // => objects for ['barney'] - * - * // Combining several predicates using `_.overEvery` or `_.overSome`. - * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); - * // => objects for ['fred', 'barney'] - */ - function filter(collection, predicate) { - var func = isArray(collection) ? arrayFilter : baseFilter; - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Iterates over elements of `collection`, returning the first element - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false }, - * { 'user': 'pebbles', 'age': 1, 'active': true } - * ]; - * - * _.find(users, function(o) { return o.age < 40; }); - * // => object for 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.find(users, { 'age': 1, 'active': true }); - * // => object for 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.find(users, ['active', false]); - * // => object for 'fred' - * - * // The `_.property` iteratee shorthand. - * _.find(users, 'active'); - * // => object for 'barney' - */ - var find = createFind(findIndex); - - /** - * This method is like `_.find` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=collection.length-1] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * _.findLast([1, 2, 3, 4], function(n) { - * return n % 2 == 1; - * }); - * // => 3 - */ - var findLast = createFind(findLastIndex); - - /** - * Creates a flattened array of values by running each element in `collection` - * thru `iteratee` and flattening the mapped results. The iteratee is invoked - * with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [n, n]; - * } - * - * _.flatMap([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ - function flatMap(collection, iteratee) { - return baseFlatten(map(collection, iteratee), 1); - } - - /** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDeep([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ - function flatMapDeep(collection, iteratee) { - return baseFlatten(map(collection, iteratee), INFINITY); - } - - /** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDepth([1, 2], duplicate, 2); - * // => [[1, 1], [2, 2]] - */ - function flatMapDepth(collection, iteratee, depth) { - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(map(collection, iteratee), depth); - } - - /** - * Iterates over elements of `collection` and invokes `iteratee` for each element. - * The iteratee is invoked with three arguments: (value, index|key, collection). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * **Note:** As with other "Collections" methods, objects with a "length" - * property are iterated like arrays. To avoid this behavior use `_.forIn` - * or `_.forOwn` for object iteration. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias each - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEachRight - * @example - * - * _.forEach([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `1` then `2`. - * - * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ - function forEach(collection, iteratee) { - var func = isArray(collection) ? arrayEach : baseEach; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.forEach` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @alias eachRight - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEach - * @example - * - * _.forEachRight([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `2` then `1`. - */ - function forEachRight(collection, iteratee) { - var func = isArray(collection) ? arrayEachRight : baseEachRight; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The order of grouped values - * is determined by the order they occur in `collection`. The corresponding - * value of each key is an array of elements responsible for generating the - * key. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * _.groupBy([6.1, 4.2, 6.3], Math.floor); - * // => { '4': [4.2], '6': [6.1, 6.3] } - * - * // The `_.property` iteratee shorthand. - * _.groupBy(['one', 'two', 'three'], 'length'); - * // => { '3': ['one', 'two'], '5': ['three'] } - */ - var groupBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - result[key].push(value); - } else { - baseAssignValue(result, key, [value]); - } - }); - - /** - * Checks if `value` is in `collection`. If `collection` is a string, it's - * checked for a substring of `value`, otherwise - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * is used for equality comparisons. If `fromIndex` is negative, it's used as - * the offset from the end of `collection`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. - * @returns {boolean} Returns `true` if `value` is found, else `false`. - * @example - * - * _.includes([1, 2, 3], 1); - * // => true - * - * _.includes([1, 2, 3], 1, 2); - * // => false - * - * _.includes({ 'a': 1, 'b': 2 }, 1); - * // => true - * - * _.includes('abcd', 'bc'); - * // => true - */ - function includes(collection, value, fromIndex, guard) { - collection = isArrayLike(collection) ? collection : values(collection); - fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; - - var length = collection.length; - if (fromIndex < 0) { - fromIndex = nativeMax(length + fromIndex, 0); - } - return isString(collection) - ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) - : (!!length && baseIndexOf(collection, value, fromIndex) > -1); - } - - /** - * Invokes the method at `path` of each element in `collection`, returning - * an array of the results of each invoked method. Any additional arguments - * are provided to each invoked method. If `path` is a function, it's invoked - * for, and `this` bound to, each element in `collection`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Array|Function|string} path The path of the method to invoke or - * the function invoked per iteration. - * @param {...*} [args] The arguments to invoke each method with. - * @returns {Array} Returns the array of results. - * @example - * - * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); - * // => [[1, 5, 7], [1, 2, 3]] - * - * _.invokeMap([123, 456], String.prototype.split, ''); - * // => [['1', '2', '3'], ['4', '5', '6']] - */ - var invokeMap = baseRest(function(collection, path, args) { - var index = -1, - isFunc = typeof path == 'function', - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value) { - result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); - }); - return result; - }); - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The corresponding value of - * each key is the last element responsible for generating the key. The - * iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * var array = [ - * { 'dir': 'left', 'code': 97 }, - * { 'dir': 'right', 'code': 100 } - * ]; - * - * _.keyBy(array, function(o) { - * return String.fromCharCode(o.code); - * }); - * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } - * - * _.keyBy(array, 'dir'); - * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } - */ - var keyBy = createAggregator(function(result, value, key) { - baseAssignValue(result, key, value); - }); - - /** - * Creates an array of values by running each element in `collection` thru - * `iteratee`. The iteratee is invoked with three arguments: - * (value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. - * - * The guarded methods are: - * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, - * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, - * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, - * `template`, `trim`, `trimEnd`, `trimStart`, and `words` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - * @example - * - * function square(n) { - * return n * n; - * } - * - * _.map([4, 8], square); - * // => [16, 64] - * - * _.map({ 'a': 4, 'b': 8 }, square); - * // => [16, 64] (iteration order is not guaranteed) - * - * var users = [ - * { 'user': 'barney' }, - * { 'user': 'fred' } - * ]; - * - * // The `_.property` iteratee shorthand. - * _.map(users, 'user'); - * // => ['barney', 'fred'] - */ - function map(collection, iteratee) { - var func = isArray(collection) ? arrayMap : baseMap; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.sortBy` except that it allows specifying the sort - * orders of the iteratees to sort by. If `orders` is unspecified, all values - * are sorted in ascending order. Otherwise, specify an order of "desc" for - * descending or "asc" for ascending sort order of corresponding values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]] - * The iteratees to sort by. - * @param {string[]} [orders] The sort orders of `iteratees`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. - * @returns {Array} Returns the new sorted array. - * @example - * - * var users = [ - * { 'user': 'fred', 'age': 48 }, - * { 'user': 'barney', 'age': 34 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'barney', 'age': 36 } - * ]; - * - * // Sort by `user` in ascending order and by `age` in descending order. - * _.orderBy(users, ['user', 'age'], ['asc', 'desc']); - * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] - */ - function orderBy(collection, iteratees, orders, guard) { - if (collection == null) { - return []; - } - if (!isArray(iteratees)) { - iteratees = iteratees == null ? [] : [iteratees]; - } - orders = guard ? undefined : orders; - if (!isArray(orders)) { - orders = orders == null ? [] : [orders]; - } - return baseOrderBy(collection, iteratees, orders); - } - - /** - * Creates an array of elements split into two groups, the first of which - * contains elements `predicate` returns truthy for, the second of which - * contains elements `predicate` returns falsey for. The predicate is - * invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the array of grouped elements. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': true }, - * { 'user': 'pebbles', 'age': 1, 'active': false } - * ]; - * - * _.partition(users, function(o) { return o.active; }); - * // => objects for [['fred'], ['barney', 'pebbles']] - * - * // The `_.matches` iteratee shorthand. - * _.partition(users, { 'age': 1, 'active': false }); - * // => objects for [['pebbles'], ['barney', 'fred']] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.partition(users, ['active', false]); - * // => objects for [['barney', 'pebbles'], ['fred']] - * - * // The `_.property` iteratee shorthand. - * _.partition(users, 'active'); - * // => objects for [['fred'], ['barney', 'pebbles']] - */ - var partition = createAggregator(function(result, value, key) { - result[key ? 0 : 1].push(value); - }, function() { return [[], []]; }); - - /** - * Reduces `collection` to a value which is the accumulated result of running - * each element in `collection` thru `iteratee`, where each successive - * invocation is supplied the return value of the previous. If `accumulator` - * is not given, the first element of `collection` is used as the initial - * value. The iteratee is invoked with four arguments: - * (accumulator, value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.reduce`, `_.reduceRight`, and `_.transform`. - * - * The guarded methods are: - * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, - * and `sortBy` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @returns {*} Returns the accumulated value. - * @see _.reduceRight - * @example - * - * _.reduce([1, 2], function(sum, n) { - * return sum + n; - * }, 0); - * // => 3 - * - * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { - * (result[value] || (result[value] = [])).push(key); - * return result; - * }, {}); - * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) - */ - function reduce(collection, iteratee, accumulator) { - var func = isArray(collection) ? arrayReduce : baseReduce, - initAccum = arguments.length < 3; - - return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach); - } - - /** - * This method is like `_.reduce` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @returns {*} Returns the accumulated value. - * @see _.reduce - * @example - * - * var array = [[0, 1], [2, 3], [4, 5]]; - * - * _.reduceRight(array, function(flattened, other) { - * return flattened.concat(other); - * }, []); - * // => [4, 5, 2, 3, 0, 1] - */ - function reduceRight(collection, iteratee, accumulator) { - var func = isArray(collection) ? arrayReduceRight : baseReduce, - initAccum = arguments.length < 3; - - return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); - } - - /** - * The opposite of `_.filter`; this method returns the elements of `collection` - * that `predicate` does **not** return truthy for. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.filter - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': true } - * ]; - * - * _.reject(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.reject(users, { 'age': 40, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.reject(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.reject(users, 'active'); - * // => objects for ['barney'] - */ - function reject(collection, predicate) { - var func = isArray(collection) ? arrayFilter : baseFilter; - return func(collection, negate(getIteratee(predicate, 3))); - } - - /** - * Gets a random element from `collection`. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Collection - * @param {Array|Object} collection The collection to sample. - * @returns {*} Returns the random element. - * @example - * - * _.sample([1, 2, 3, 4]); - * // => 2 - */ - function sample(collection) { - var func = isArray(collection) ? arraySample : baseSample; - return func(collection); - } - - /** - * Gets `n` random elements at unique keys from `collection` up to the - * size of `collection`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to sample. - * @param {number} [n=1] The number of elements to sample. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the random elements. - * @example - * - * _.sampleSize([1, 2, 3], 2); - * // => [3, 1] - * - * _.sampleSize([1, 2, 3], 4); - * // => [2, 3, 1] - */ - function sampleSize(collection, n, guard) { - if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) { - n = 1; - } else { - n = toInteger(n); - } - var func = isArray(collection) ? arraySampleSize : baseSampleSize; - return func(collection, n); - } - - /** - * Creates an array of shuffled values, using a version of the - * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to shuffle. - * @returns {Array} Returns the new shuffled array. - * @example - * - * _.shuffle([1, 2, 3, 4]); - * // => [4, 1, 3, 2] - */ - function shuffle(collection) { - var func = isArray(collection) ? arrayShuffle : baseShuffle; - return func(collection); - } - - /** - * Gets the size of `collection` by returning its length for array-like - * values or the number of own enumerable string keyed properties for objects. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @returns {number} Returns the collection size. - * @example - * - * _.size([1, 2, 3]); - * // => 3 - * - * _.size({ 'a': 1, 'b': 2 }); - * // => 2 - * - * _.size('pebbles'); - * // => 7 - */ - function size(collection) { - if (collection == null) { - return 0; - } - if (isArrayLike(collection)) { - return isString(collection) ? stringSize(collection) : collection.length; - } - var tag = getTag(collection); - if (tag == mapTag || tag == setTag) { - return collection.size; - } - return baseKeys(collection).length; - } - - /** - * Checks if `predicate` returns truthy for **any** element of `collection`. - * Iteration is stopped once `predicate` returns truthy. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - * @example - * - * _.some([null, 0, 'yes', false], Boolean); - * // => true - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.some(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.some(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.some(users, 'active'); - * // => true - */ - function some(collection, predicate, guard) { - var func = isArray(collection) ? arraySome : baseSome; - if (guard && isIterateeCall(collection, predicate, guard)) { - predicate = undefined; - } - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Creates an array of elements, sorted in ascending order by the results of - * running each element in a collection thru each iteratee. This method - * performs a stable sort, that is, it preserves the original sort order of - * equal elements. The iteratees are invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {...(Function|Function[])} [iteratees=[_.identity]] - * The iteratees to sort by. - * @returns {Array} Returns the new sorted array. - * @example - * - * var users = [ - * { 'user': 'fred', 'age': 48 }, - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 30 }, - * { 'user': 'barney', 'age': 34 } - * ]; - * - * _.sortBy(users, [function(o) { return o.user; }]); - * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] - * - * _.sortBy(users, ['user', 'age']); - * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] - */ - var sortBy = baseRest(function(collection, iteratees) { - if (collection == null) { - return []; - } - var length = iteratees.length; - if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { - iteratees = []; - } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { - iteratees = [iteratees[0]]; - } - return baseOrderBy(collection, baseFlatten(iteratees, 1), []); - }); - - /*------------------------------------------------------------------------*/ - - /** - * Gets the timestamp of the number of milliseconds that have elapsed since - * the Unix epoch (1 January 1970 00:00:00 UTC). - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Date - * @returns {number} Returns the timestamp. - * @example - * - * _.defer(function(stamp) { - * console.log(_.now() - stamp); - * }, _.now()); - * // => Logs the number of milliseconds it took for the deferred invocation. - */ - var now = ctxNow || function() { - return root.Date.now(); - }; - - /*------------------------------------------------------------------------*/ - - /** - * The opposite of `_.before`; this method creates a function that invokes - * `func` once it's called `n` or more times. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {number} n The number of calls before `func` is invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var saves = ['profile', 'settings']; - * - * var done = _.after(saves.length, function() { - * console.log('done saving!'); - * }); - * - * _.forEach(saves, function(type) { - * asyncSave({ 'type': type, 'complete': done }); - * }); - * // => Logs 'done saving!' after the two async saves have completed. - */ - function after(n, func) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n < 1) { - return func.apply(this, arguments); - } - }; - } - - /** - * Creates a function that invokes `func`, with up to `n` arguments, - * ignoring any additional arguments. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to cap arguments for. - * @param {number} [n=func.length] The arity cap. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new capped function. - * @example - * - * _.map(['6', '8', '10'], _.ary(parseInt, 1)); - * // => [6, 8, 10] - */ - function ary(func, n, guard) { - n = guard ? undefined : n; - n = (func && n == null) ? func.length : n; - return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); - } - - /** - * Creates a function that invokes `func`, with the `this` binding and arguments - * of the created function, while it's called less than `n` times. Subsequent - * calls to the created function return the result of the last `func` invocation. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {number} n The number of calls at which `func` is no longer invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * jQuery(element).on('click', _.before(5, addContactToList)); - * // => Allows adding up to 4 contacts to the list. - */ - function before(n, func) { - var result; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n > 0) { - result = func.apply(this, arguments); - } - if (n <= 1) { - func = undefined; - } - return result; - }; - } - - /** - * Creates a function that invokes `func` with the `this` binding of `thisArg` - * and `partials` prepended to the arguments it receives. - * - * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for partially applied arguments. - * - * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" - * property of bound functions. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to bind. - * @param {*} thisArg The `this` binding of `func`. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * function greet(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * - * var object = { 'user': 'fred' }; - * - * var bound = _.bind(greet, object, 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * // Bound with placeholders. - * var bound = _.bind(greet, object, _, '!'); - * bound('hi'); - * // => 'hi fred!' - */ - var bind = baseRest(function(func, thisArg, partials) { - var bitmask = WRAP_BIND_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bind)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(func, bitmask, thisArg, partials, holders); - }); - - /** - * Creates a function that invokes the method at `object[key]` with `partials` - * prepended to the arguments it receives. - * - * This method differs from `_.bind` by allowing bound functions to reference - * methods that may be redefined or don't yet exist. See - * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) - * for more details. - * - * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Function - * @param {Object} object The object to invoke the method on. - * @param {string} key The key of the method. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * var object = { - * 'user': 'fred', - * 'greet': function(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * }; - * - * var bound = _.bindKey(object, 'greet', 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * object.greet = function(greeting, punctuation) { - * return greeting + 'ya ' + this.user + punctuation; - * }; - * - * bound('!'); - * // => 'hiya fred!' - * - * // Bound with placeholders. - * var bound = _.bindKey(object, 'greet', _, '!'); - * bound('hi'); - * // => 'hiya fred!' - */ - var bindKey = baseRest(function(object, key, partials) { - var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bindKey)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(key, bitmask, object, partials, holders); - }); - - /** - * Creates a function that accepts arguments of `func` and either invokes - * `func` returning its result, if at least `arity` number of arguments have - * been provided, or returns a function that accepts the remaining `func` - * arguments, and so on. The arity of `func` may be specified if `func.length` - * is not sufficient. - * - * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curry(abc); - * - * curried(1)(2)(3); - * // => [1, 2, 3] - * - * curried(1, 2)(3); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(1)(_, 3)(2); - * // => [1, 2, 3] - */ - function curry(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curry.placeholder; - return result; - } - - /** - * This method is like `_.curry` except that arguments are applied to `func` - * in the manner of `_.partialRight` instead of `_.partial`. - * - * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curryRight(abc); - * - * curried(3)(2)(1); - * // => [1, 2, 3] - * - * curried(2, 3)(1); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(3)(1, _)(2); - * // => [1, 2, 3] - */ - function curryRight(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curryRight.placeholder; - return result; - } - - /** - * Creates a debounced function that delays invoking `func` until after `wait` - * milliseconds have elapsed since the last time the debounced function was - * invoked. The debounced function comes with a `cancel` method to cancel - * delayed `func` invocations and a `flush` method to immediately invoke them. - * Provide `options` to indicate whether `func` should be invoked on the - * leading and/or trailing edge of the `wait` timeout. The `func` is invoked - * with the last arguments provided to the debounced function. Subsequent - * calls to the debounced function return the result of the last `func` - * invocation. - * - * **Note:** If `leading` and `trailing` options are `true`, `func` is - * invoked on the trailing edge of the timeout only if the debounced function - * is invoked more than once during the `wait` timeout. - * - * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred - * until to the next tick, similar to `setTimeout` with a timeout of `0`. - * - * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) - * for details over the differences between `_.debounce` and `_.throttle`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to debounce. - * @param {number} [wait=0] The number of milliseconds to delay. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.leading=false] - * Specify invoking on the leading edge of the timeout. - * @param {number} [options.maxWait] - * The maximum time `func` is allowed to be delayed before it's invoked. - * @param {boolean} [options.trailing=true] - * Specify invoking on the trailing edge of the timeout. - * @returns {Function} Returns the new debounced function. - * @example - * - * // Avoid costly calculations while the window size is in flux. - * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); - * - * // Invoke `sendMail` when clicked, debouncing subsequent calls. - * jQuery(element).on('click', _.debounce(sendMail, 300, { - * 'leading': true, - * 'trailing': false - * })); - * - * // Ensure `batchLog` is invoked once after 1 second of debounced calls. - * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); - * var source = new EventSource('/stream'); - * jQuery(source).on('message', debounced); - * - * // Cancel the trailing debounced invocation. - * jQuery(window).on('popstate', debounced.cancel); - */ - function debounce(func, wait, options) { - var lastArgs, - lastThis, - maxWait, - result, - timerId, - lastCallTime, - lastInvokeTime = 0, - leading = false, - maxing = false, - trailing = true; - - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - wait = toNumber(wait) || 0; - if (isObject(options)) { - leading = !!options.leading; - maxing = 'maxWait' in options; - maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; - trailing = 'trailing' in options ? !!options.trailing : trailing; - } - - function invokeFunc(time) { - var args = lastArgs, - thisArg = lastThis; - - lastArgs = lastThis = undefined; - lastInvokeTime = time; - result = func.apply(thisArg, args); - return result; - } - - function leadingEdge(time) { - // Reset any `maxWait` timer. - lastInvokeTime = time; - // Start the timer for the trailing edge. - timerId = setTimeout(timerExpired, wait); - // Invoke the leading edge. - return leading ? invokeFunc(time) : result; - } - - function remainingWait(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime, - timeWaiting = wait - timeSinceLastCall; - - return maxing - ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) - : timeWaiting; - } - - function shouldInvoke(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime; - - // Either this is the first call, activity has stopped and we're at the - // trailing edge, the system time has gone backwards and we're treating - // it as the trailing edge, or we've hit the `maxWait` limit. - return (lastCallTime === undefined || (timeSinceLastCall >= wait) || - (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); - } - - function timerExpired() { - var time = now(); - if (shouldInvoke(time)) { - return trailingEdge(time); - } - // Restart the timer. - timerId = setTimeout(timerExpired, remainingWait(time)); - } - - function trailingEdge(time) { - timerId = undefined; - - // Only invoke if we have `lastArgs` which means `func` has been - // debounced at least once. - if (trailing && lastArgs) { - return invokeFunc(time); - } - lastArgs = lastThis = undefined; - return result; - } - - function cancel() { - if (timerId !== undefined) { - clearTimeout(timerId); - } - lastInvokeTime = 0; - lastArgs = lastCallTime = lastThis = timerId = undefined; - } - - function flush() { - return timerId === undefined ? result : trailingEdge(now()); - } - - function debounced() { - var time = now(), - isInvoking = shouldInvoke(time); - - lastArgs = arguments; - lastThis = this; - lastCallTime = time; - - if (isInvoking) { - if (timerId === undefined) { - return leadingEdge(lastCallTime); - } - if (maxing) { - // Handle invocations in a tight loop. - clearTimeout(timerId); - timerId = setTimeout(timerExpired, wait); - return invokeFunc(lastCallTime); - } - } - if (timerId === undefined) { - timerId = setTimeout(timerExpired, wait); - } - return result; - } - debounced.cancel = cancel; - debounced.flush = flush; - return debounced; - } - - /** - * Defers invoking the `func` until the current call stack has cleared. Any - * additional arguments are provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to defer. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.defer(function(text) { - * console.log(text); - * }, 'deferred'); - * // => Logs 'deferred' after one millisecond. - */ - var defer = baseRest(function(func, args) { - return baseDelay(func, 1, args); - }); - - /** - * Invokes `func` after `wait` milliseconds. Any additional arguments are - * provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.delay(function(text) { - * console.log(text); - * }, 1000, 'later'); - * // => Logs 'later' after one second. - */ - var delay = baseRest(function(func, wait, args) { - return baseDelay(func, toNumber(wait) || 0, args); - }); - - /** - * Creates a function that invokes `func` with arguments reversed. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to flip arguments for. - * @returns {Function} Returns the new flipped function. - * @example - * - * var flipped = _.flip(function() { - * return _.toArray(arguments); - * }); - * - * flipped('a', 'b', 'c', 'd'); - * // => ['d', 'c', 'b', 'a'] - */ - function flip(func) { - return createWrap(func, WRAP_FLIP_FLAG); - } - - /** - * Creates a function that memoizes the result of `func`. If `resolver` is - * provided, it determines the cache key for storing the result based on the - * arguments provided to the memoized function. By default, the first argument - * provided to the memoized function is used as the map cache key. The `func` - * is invoked with the `this` binding of the memoized function. - * - * **Note:** The cache is exposed as the `cache` property on the memoized - * function. Its creation may be customized by replacing the `_.memoize.Cache` - * constructor with one whose instances implement the - * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) - * method interface of `clear`, `delete`, `get`, `has`, and `set`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to have its output memoized. - * @param {Function} [resolver] The function to resolve the cache key. - * @returns {Function} Returns the new memoized function. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * var other = { 'c': 3, 'd': 4 }; - * - * var values = _.memoize(_.values); - * values(object); - * // => [1, 2] - * - * values(other); - * // => [3, 4] - * - * object.a = 2; - * values(object); - * // => [1, 2] - * - * // Modify the result cache. - * values.cache.set(object, ['a', 'b']); - * values(object); - * // => ['a', 'b'] - * - * // Replace `_.memoize.Cache`. - * _.memoize.Cache = WeakMap; - */ - function memoize(func, resolver) { - if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { - throw new TypeError(FUNC_ERROR_TEXT); - } - var memoized = function() { - var args = arguments, - key = resolver ? resolver.apply(this, args) : args[0], - cache = memoized.cache; - - if (cache.has(key)) { - return cache.get(key); - } - var result = func.apply(this, args); - memoized.cache = cache.set(key, result) || cache; - return result; - }; - memoized.cache = new (memoize.Cache || MapCache); - return memoized; - } - - // Expose `MapCache`. - memoize.Cache = MapCache; - - /** - * Creates a function that negates the result of the predicate `func`. The - * `func` predicate is invoked with the `this` binding and arguments of the - * created function. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} predicate The predicate to negate. - * @returns {Function} Returns the new negated function. - * @example - * - * function isEven(n) { - * return n % 2 == 0; - * } - * - * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); - * // => [1, 3, 5] - */ - function negate(predicate) { - if (typeof predicate != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return function() { - var args = arguments; - switch (args.length) { - case 0: return !predicate.call(this); - case 1: return !predicate.call(this, args[0]); - case 2: return !predicate.call(this, args[0], args[1]); - case 3: return !predicate.call(this, args[0], args[1], args[2]); - } - return !predicate.apply(this, args); - }; - } - - /** - * Creates a function that is restricted to invoking `func` once. Repeat calls - * to the function return the value of the first invocation. The `func` is - * invoked with the `this` binding and arguments of the created function. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var initialize = _.once(createApplication); - * initialize(); - * initialize(); - * // => `createApplication` is invoked once - */ - function once(func) { - return before(2, func); - } - - /** - * Creates a function that invokes `func` with its arguments transformed. - * - * @static - * @since 4.0.0 - * @memberOf _ - * @category Function - * @param {Function} func The function to wrap. - * @param {...(Function|Function[])} [transforms=[_.identity]] - * The argument transforms. - * @returns {Function} Returns the new function. - * @example - * - * function doubled(n) { - * return n * 2; - * } - * - * function square(n) { - * return n * n; - * } - * - * var func = _.overArgs(function(x, y) { - * return [x, y]; - * }, [square, doubled]); - * - * func(9, 3); - * // => [81, 6] - * - * func(10, 5); - * // => [100, 10] - */ - var overArgs = castRest(function(func, transforms) { - transforms = (transforms.length == 1 && isArray(transforms[0])) - ? arrayMap(transforms[0], baseUnary(getIteratee())) - : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); - - var funcsLength = transforms.length; - return baseRest(function(args) { - var index = -1, - length = nativeMin(args.length, funcsLength); - - while (++index < length) { - args[index] = transforms[index].call(this, args[index]); - } - return apply(func, this, args); - }); - }); - - /** - * Creates a function that invokes `func` with `partials` prepended to the - * arguments it receives. This method is like `_.bind` except it does **not** - * alter the `this` binding. - * - * The `_.partial.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * **Note:** This method doesn't set the "length" property of partially - * applied functions. - * - * @static - * @memberOf _ - * @since 0.2.0 - * @category Function - * @param {Function} func The function to partially apply arguments to. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new partially applied function. - * @example - * - * function greet(greeting, name) { - * return greeting + ' ' + name; - * } - * - * var sayHelloTo = _.partial(greet, 'hello'); - * sayHelloTo('fred'); - * // => 'hello fred' - * - * // Partially applied with placeholders. - * var greetFred = _.partial(greet, _, 'fred'); - * greetFred('hi'); - * // => 'hi fred' - */ - var partial = baseRest(function(func, partials) { - var holders = replaceHolders(partials, getHolder(partial)); - return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders); - }); - - /** - * This method is like `_.partial` except that partially applied arguments - * are appended to the arguments it receives. - * - * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * **Note:** This method doesn't set the "length" property of partially - * applied functions. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Function - * @param {Function} func The function to partially apply arguments to. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new partially applied function. - * @example - * - * function greet(greeting, name) { - * return greeting + ' ' + name; - * } - * - * var greetFred = _.partialRight(greet, 'fred'); - * greetFred('hi'); - * // => 'hi fred' - * - * // Partially applied with placeholders. - * var sayHelloTo = _.partialRight(greet, 'hello', _); - * sayHelloTo('fred'); - * // => 'hello fred' - */ - var partialRight = baseRest(function(func, partials) { - var holders = replaceHolders(partials, getHolder(partialRight)); - return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders); - }); - - /** - * Creates a function that invokes `func` with arguments arranged according - * to the specified `indexes` where the argument value at the first index is - * provided as the first argument, the argument value at the second index is - * provided as the second argument, and so on. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to rearrange arguments for. - * @param {...(number|number[])} indexes The arranged argument indexes. - * @returns {Function} Returns the new function. - * @example - * - * var rearged = _.rearg(function(a, b, c) { - * return [a, b, c]; - * }, [2, 0, 1]); - * - * rearged('b', 'c', 'a') - * // => ['a', 'b', 'c'] - */ - var rearg = flatRest(function(func, indexes) { - return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); - }); - - /** - * Creates a function that invokes `func` with the `this` binding of the - * created function and arguments from `start` and beyond provided as - * an array. - * - * **Note:** This method is based on the - * [rest parameter](https://mdn.io/rest_parameters). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - * @example - * - * var say = _.rest(function(what, names) { - * return what + ' ' + _.initial(names).join(', ') + - * (_.size(names) > 1 ? ', & ' : '') + _.last(names); - * }); - * - * say('hello', 'fred', 'barney', 'pebbles'); - * // => 'hello fred, barney, & pebbles' - */ - function rest(func, start) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - start = start === undefined ? start : toInteger(start); - return baseRest(func, start); - } - - /** - * Creates a function that invokes `func` with the `this` binding of the - * create function and an array of arguments much like - * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply). - * - * **Note:** This method is based on the - * [spread operator](https://mdn.io/spread_operator). - * - * @static - * @memberOf _ - * @since 3.2.0 - * @category Function - * @param {Function} func The function to spread arguments over. - * @param {number} [start=0] The start position of the spread. - * @returns {Function} Returns the new function. - * @example - * - * var say = _.spread(function(who, what) { - * return who + ' says ' + what; - * }); - * - * say(['fred', 'hello']); - * // => 'fred says hello' - * - * var numbers = Promise.all([ - * Promise.resolve(40), - * Promise.resolve(36) - * ]); - * - * numbers.then(_.spread(function(x, y) { - * return x + y; - * })); - * // => a Promise of 76 - */ - function spread(func, start) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - start = start == null ? 0 : nativeMax(toInteger(start), 0); - return baseRest(function(args) { - var array = args[start], - otherArgs = castSlice(args, 0, start); - - if (array) { - arrayPush(otherArgs, array); - } - return apply(func, this, otherArgs); - }); - } - - /** - * Creates a throttled function that only invokes `func` at most once per - * every `wait` milliseconds. The throttled function comes with a `cancel` - * method to cancel delayed `func` invocations and a `flush` method to - * immediately invoke them. Provide `options` to indicate whether `func` - * should be invoked on the leading and/or trailing edge of the `wait` - * timeout. The `func` is invoked with the last arguments provided to the - * throttled function. Subsequent calls to the throttled function return the - * result of the last `func` invocation. - * - * **Note:** If `leading` and `trailing` options are `true`, `func` is - * invoked on the trailing edge of the timeout only if the throttled function - * is invoked more than once during the `wait` timeout. - * - * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred - * until to the next tick, similar to `setTimeout` with a timeout of `0`. - * - * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) - * for details over the differences between `_.throttle` and `_.debounce`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to throttle. - * @param {number} [wait=0] The number of milliseconds to throttle invocations to. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.leading=true] - * Specify invoking on the leading edge of the timeout. - * @param {boolean} [options.trailing=true] - * Specify invoking on the trailing edge of the timeout. - * @returns {Function} Returns the new throttled function. - * @example - * - * // Avoid excessively updating the position while scrolling. - * jQuery(window).on('scroll', _.throttle(updatePosition, 100)); - * - * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. - * var throttled = _.throttle(renewToken, 300000, { 'trailing': false }); - * jQuery(element).on('click', throttled); - * - * // Cancel the trailing throttled invocation. - * jQuery(window).on('popstate', throttled.cancel); - */ - function throttle(func, wait, options) { - var leading = true, - trailing = true; - - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - if (isObject(options)) { - leading = 'leading' in options ? !!options.leading : leading; - trailing = 'trailing' in options ? !!options.trailing : trailing; - } - return debounce(func, wait, { - 'leading': leading, - 'maxWait': wait, - 'trailing': trailing - }); - } - - /** - * Creates a function that accepts up to one argument, ignoring any - * additional arguments. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - * @example - * - * _.map(['6', '8', '10'], _.unary(parseInt)); - * // => [6, 8, 10] - */ - function unary(func) { - return ary(func, 1); - } - - /** - * Creates a function that provides `value` to `wrapper` as its first - * argument. Any additional arguments provided to the function are appended - * to those provided to the `wrapper`. The wrapper is invoked with the `this` - * binding of the created function. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {*} value The value to wrap. - * @param {Function} [wrapper=identity] The wrapper function. - * @returns {Function} Returns the new function. - * @example - * - * var p = _.wrap(_.escape, function(func, text) { - * return '

' + func(text) + '

'; - * }); - * - * p('fred, barney, & pebbles'); - * // => '

fred, barney, & pebbles

' - */ - function wrap(value, wrapper) { - return partial(castFunction(wrapper), value); - } - - /*------------------------------------------------------------------------*/ - - /** - * Casts `value` as an array if it's not one. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Lang - * @param {*} value The value to inspect. - * @returns {Array} Returns the cast array. - * @example - * - * _.castArray(1); - * // => [1] - * - * _.castArray({ 'a': 1 }); - * // => [{ 'a': 1 }] - * - * _.castArray('abc'); - * // => ['abc'] - * - * _.castArray(null); - * // => [null] - * - * _.castArray(undefined); - * // => [undefined] - * - * _.castArray(); - * // => [] - * - * var array = [1, 2, 3]; - * console.log(_.castArray(array) === array); - * // => true - */ - function castArray() { - if (!arguments.length) { - return []; - } - var value = arguments[0]; - return isArray(value) ? value : [value]; - } - - /** - * Creates a shallow clone of `value`. - * - * **Note:** This method is loosely based on the - * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) - * and supports cloning arrays, array buffers, booleans, date objects, maps, - * numbers, `Object` objects, regexes, sets, strings, symbols, and typed - * arrays. The own enumerable properties of `arguments` objects are cloned - * as plain objects. An empty object is returned for uncloneable values such - * as error objects, functions, DOM nodes, and WeakMaps. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to clone. - * @returns {*} Returns the cloned value. - * @see _.cloneDeep - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var shallow = _.clone(objects); - * console.log(shallow[0] === objects[0]); - * // => true - */ - function clone(value) { - return baseClone(value, CLONE_SYMBOLS_FLAG); - } - - /** - * This method is like `_.clone` except that it accepts `customizer` which - * is invoked to produce the cloned value. If `customizer` returns `undefined`, - * cloning is handled by the method instead. The `customizer` is invoked with - * up to four arguments; (value [, index|key, object, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the cloned value. - * @see _.cloneDeepWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(false); - * } - * } - * - * var el = _.cloneWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 0 - */ - function cloneWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); - } - - /** - * This method is like `_.clone` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @returns {*} Returns the deep cloned value. - * @see _.clone - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var deep = _.cloneDeep(objects); - * console.log(deep[0] === objects[0]); - * // => false - */ - function cloneDeep(value) { - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); - } - - /** - * This method is like `_.cloneWith` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the deep cloned value. - * @see _.cloneWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(true); - * } - * } - * - * var el = _.cloneDeepWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 20 - */ - function cloneDeepWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); - } - - /** - * Checks if `object` conforms to `source` by invoking the predicate - * properties of `source` with the corresponding property values of `object`. - * - * **Note:** This method is equivalent to `_.conforms` when `source` is - * partially applied. - * - * @static - * @memberOf _ - * @since 4.14.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); - * // => true - * - * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); - * // => false - */ - function conformsTo(object, source) { - return source == null || baseConformsTo(object, source, keys(source)); - } - - /** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ - function eq(value, other) { - return value === other || (value !== value && other !== other); - } - - /** - * Checks if `value` is greater than `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - * @see _.lt - * @example - * - * _.gt(3, 1); - * // => true - * - * _.gt(3, 3); - * // => false - * - * _.gt(1, 3); - * // => false - */ - var gt = createRelationalOperation(baseGt); - - /** - * Checks if `value` is greater than or equal to `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than or equal to - * `other`, else `false`. - * @see _.lte - * @example - * - * _.gte(3, 1); - * // => true - * - * _.gte(3, 3); - * // => true - * - * _.gte(1, 3); - * // => false - */ - var gte = createRelationalOperation(function(value, other) { - return value >= other; - }); - - /** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ - var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); - }; - - /** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ - var isArray = Array.isArray; - - /** - * Checks if `value` is classified as an `ArrayBuffer` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - * @example - * - * _.isArrayBuffer(new ArrayBuffer(2)); - * // => true - * - * _.isArrayBuffer(new Array(2)); - * // => false - */ - var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; - - /** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ - function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); - } - - /** - * This method is like `_.isArrayLike` except that it also checks if `value` - * is an object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array-like object, - * else `false`. - * @example - * - * _.isArrayLikeObject([1, 2, 3]); - * // => true - * - * _.isArrayLikeObject(document.body.children); - * // => true - * - * _.isArrayLikeObject('abc'); - * // => false - * - * _.isArrayLikeObject(_.noop); - * // => false - */ - function isArrayLikeObject(value) { - return isObjectLike(value) && isArrayLike(value); - } - - /** - * Checks if `value` is classified as a boolean primitive or object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. - * @example - * - * _.isBoolean(false); - * // => true - * - * _.isBoolean(null); - * // => false - */ - function isBoolean(value) { - return value === true || value === false || - (isObjectLike(value) && baseGetTag(value) == boolTag); - } - - /** - * Checks if `value` is a buffer. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. - * @example - * - * _.isBuffer(new Buffer(2)); - * // => true - * - * _.isBuffer(new Uint8Array(2)); - * // => false - */ - var isBuffer = nativeIsBuffer || stubFalse; - - /** - * Checks if `value` is classified as a `Date` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - * @example - * - * _.isDate(new Date); - * // => true - * - * _.isDate('Mon April 23 2012'); - * // => false - */ - var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; - - /** - * Checks if `value` is likely a DOM element. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. - * @example - * - * _.isElement(document.body); - * // => true - * - * _.isElement(''); - * // => false - */ - function isElement(value) { - return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); - } - - /** - * Checks if `value` is an empty object, collection, map, or set. - * - * Objects are considered empty if they have no own enumerable string keyed - * properties. - * - * Array-like values such as `arguments` objects, arrays, buffers, strings, or - * jQuery-like collections are considered empty if they have a `length` of `0`. - * Similarly, maps and sets are considered empty if they have a `size` of `0`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is empty, else `false`. - * @example - * - * _.isEmpty(null); - * // => true - * - * _.isEmpty(true); - * // => true - * - * _.isEmpty(1); - * // => true - * - * _.isEmpty([1, 2, 3]); - * // => false - * - * _.isEmpty({ 'a': 1 }); - * // => false - */ - function isEmpty(value) { - if (value == null) { - return true; - } - if (isArrayLike(value) && - (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || - isBuffer(value) || isTypedArray(value) || isArguments(value))) { - return !value.length; - } - var tag = getTag(value); - if (tag == mapTag || tag == setTag) { - return !value.size; - } - if (isPrototype(value)) { - return !baseKeys(value).length; - } - for (var key in value) { - if (hasOwnProperty.call(value, key)) { - return false; - } - } - return true; - } - - /** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ - function isEqual(value, other) { - return baseIsEqual(value, other); - } - - /** - * This method is like `_.isEqual` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with up to - * six arguments: (objValue, othValue [, index|key, object, other, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, othValue) { - * if (isGreeting(objValue) && isGreeting(othValue)) { - * return true; - * } - * } - * - * var array = ['hello', 'goodbye']; - * var other = ['hi', 'goodbye']; - * - * _.isEqualWith(array, other, customizer); - * // => true - */ - function isEqualWith(value, other, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - var result = customizer ? customizer(value, other) : undefined; - return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; - } - - /** - * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, - * `SyntaxError`, `TypeError`, or `URIError` object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an error object, else `false`. - * @example - * - * _.isError(new Error); - * // => true - * - * _.isError(Error); - * // => false - */ - function isError(value) { - if (!isObjectLike(value)) { - return false; - } - var tag = baseGetTag(value); - return tag == errorTag || tag == domExcTag || - (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); - } - - /** - * Checks if `value` is a finite primitive number. - * - * **Note:** This method is based on - * [`Number.isFinite`](https://mdn.io/Number/isFinite). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. - * @example - * - * _.isFinite(3); - * // => true - * - * _.isFinite(Number.MIN_VALUE); - * // => true - * - * _.isFinite(Infinity); - * // => false - * - * _.isFinite('3'); - * // => false - */ - function isFinite(value) { - return typeof value == 'number' && nativeIsFinite(value); - } - - /** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ - function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; - } - - /** - * Checks if `value` is an integer. - * - * **Note:** This method is based on - * [`Number.isInteger`](https://mdn.io/Number/isInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an integer, else `false`. - * @example - * - * _.isInteger(3); - * // => true - * - * _.isInteger(Number.MIN_VALUE); - * // => false - * - * _.isInteger(Infinity); - * // => false - * - * _.isInteger('3'); - * // => false - */ - function isInteger(value) { - return typeof value == 'number' && value == toInteger(value); - } - - /** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ - function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; - } - - /** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ - function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); - } - - /** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ - function isObjectLike(value) { - return value != null && typeof value == 'object'; - } - - /** - * Checks if `value` is classified as a `Map` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - * @example - * - * _.isMap(new Map); - * // => true - * - * _.isMap(new WeakMap); - * // => false - */ - var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; - - /** - * Performs a partial deep comparison between `object` and `source` to - * determine if `object` contains equivalent property values. - * - * **Note:** This method is equivalent to `_.matches` when `source` is - * partially applied. - * - * Partial comparisons will match empty array and empty object `source` - * values against any array or object value, respectively. See `_.isEqual` - * for a list of supported value comparisons. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.isMatch(object, { 'b': 2 }); - * // => true - * - * _.isMatch(object, { 'b': 1 }); - * // => false - */ - function isMatch(object, source) { - return object === source || baseIsMatch(object, source, getMatchData(source)); - } - - /** - * This method is like `_.isMatch` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with five - * arguments: (objValue, srcValue, index|key, object, source). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, srcValue) { - * if (isGreeting(objValue) && isGreeting(srcValue)) { - * return true; - * } - * } - * - * var object = { 'greeting': 'hello' }; - * var source = { 'greeting': 'hi' }; - * - * _.isMatchWith(object, source, customizer); - * // => true - */ - function isMatchWith(object, source, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseIsMatch(object, source, getMatchData(source), customizer); - } - - /** - * Checks if `value` is `NaN`. - * - * **Note:** This method is based on - * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as - * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for - * `undefined` and other non-number values. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - * @example - * - * _.isNaN(NaN); - * // => true - * - * _.isNaN(new Number(NaN)); - * // => true - * - * isNaN(undefined); - * // => true - * - * _.isNaN(undefined); - * // => false - */ - function isNaN(value) { - // An `NaN` primitive is the only value that is not equal to itself. - // Perform the `toStringTag` check first to avoid errors with some - // ActiveX objects in IE. - return isNumber(value) && value != +value; - } - - /** - * Checks if `value` is a pristine native function. - * - * **Note:** This method can't reliably detect native functions in the presence - * of the core-js package because core-js circumvents this kind of detection. - * Despite multiple requests, the core-js maintainer has made it clear: any - * attempt to fix the detection will be obstructed. As a result, we're left - * with little choice but to throw an error. Unfortunately, this also affects - * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), - * which rely on core-js. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - * @example - * - * _.isNative(Array.prototype.push); - * // => true - * - * _.isNative(_); - * // => false - */ - function isNative(value) { - if (isMaskable(value)) { - throw new Error(CORE_ERROR_TEXT); - } - return baseIsNative(value); - } - - /** - * Checks if `value` is `null`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `null`, else `false`. - * @example - * - * _.isNull(null); - * // => true - * - * _.isNull(void 0); - * // => false - */ - function isNull(value) { - return value === null; - } - - /** - * Checks if `value` is `null` or `undefined`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is nullish, else `false`. - * @example - * - * _.isNil(null); - * // => true - * - * _.isNil(void 0); - * // => true - * - * _.isNil(NaN); - * // => false - */ - function isNil(value) { - return value == null; - } - - /** - * Checks if `value` is classified as a `Number` primitive or object. - * - * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are - * classified as numbers, use the `_.isFinite` method. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a number, else `false`. - * @example - * - * _.isNumber(3); - * // => true - * - * _.isNumber(Number.MIN_VALUE); - * // => true - * - * _.isNumber(Infinity); - * // => true - * - * _.isNumber('3'); - * // => false - */ - function isNumber(value) { - return typeof value == 'number' || - (isObjectLike(value) && baseGetTag(value) == numberTag); - } - - /** - * Checks if `value` is a plain object, that is, an object created by the - * `Object` constructor or one with a `[[Prototype]]` of `null`. - * - * @static - * @memberOf _ - * @since 0.8.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * _.isPlainObject(new Foo); - * // => false - * - * _.isPlainObject([1, 2, 3]); - * // => false - * - * _.isPlainObject({ 'x': 0, 'y': 0 }); - * // => true - * - * _.isPlainObject(Object.create(null)); - * // => true - */ - function isPlainObject(value) { - if (!isObjectLike(value) || baseGetTag(value) != objectTag) { - return false; - } - var proto = getPrototype(value); - if (proto === null) { - return true; - } - var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; - return typeof Ctor == 'function' && Ctor instanceof Ctor && - funcToString.call(Ctor) == objectCtorString; - } - - /** - * Checks if `value` is classified as a `RegExp` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - * @example - * - * _.isRegExp(/abc/); - * // => true - * - * _.isRegExp('/abc/'); - * // => false - */ - var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; - - /** - * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 - * double precision number which isn't the result of a rounded unsafe integer. - * - * **Note:** This method is based on - * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. - * @example - * - * _.isSafeInteger(3); - * // => true - * - * _.isSafeInteger(Number.MIN_VALUE); - * // => false - * - * _.isSafeInteger(Infinity); - * // => false - * - * _.isSafeInteger('3'); - * // => false - */ - function isSafeInteger(value) { - return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; - } - - /** - * Checks if `value` is classified as a `Set` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - * @example - * - * _.isSet(new Set); - * // => true - * - * _.isSet(new WeakSet); - * // => false - */ - var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; - - /** - * Checks if `value` is classified as a `String` primitive or object. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a string, else `false`. - * @example - * - * _.isString('abc'); - * // => true - * - * _.isString(1); - * // => false - */ - function isString(value) { - return typeof value == 'string' || - (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); - } - - /** - * Checks if `value` is classified as a `Symbol` primitive or object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. - * @example - * - * _.isSymbol(Symbol.iterator); - * // => true - * - * _.isSymbol('abc'); - * // => false - */ - function isSymbol(value) { - return typeof value == 'symbol' || - (isObjectLike(value) && baseGetTag(value) == symbolTag); - } - - /** - * Checks if `value` is classified as a typed array. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - * @example - * - * _.isTypedArray(new Uint8Array); - * // => true - * - * _.isTypedArray([]); - * // => false - */ - var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - - /** - * Checks if `value` is `undefined`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. - * @example - * - * _.isUndefined(void 0); - * // => true - * - * _.isUndefined(null); - * // => false - */ - function isUndefined(value) { - return value === undefined; - } - - /** - * Checks if `value` is classified as a `WeakMap` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. - * @example - * - * _.isWeakMap(new WeakMap); - * // => true - * - * _.isWeakMap(new Map); - * // => false - */ - function isWeakMap(value) { - return isObjectLike(value) && getTag(value) == weakMapTag; - } - - /** - * Checks if `value` is classified as a `WeakSet` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. - * @example - * - * _.isWeakSet(new WeakSet); - * // => true - * - * _.isWeakSet(new Set); - * // => false - */ - function isWeakSet(value) { - return isObjectLike(value) && baseGetTag(value) == weakSetTag; - } - - /** - * Checks if `value` is less than `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - * @see _.gt - * @example - * - * _.lt(1, 3); - * // => true - * - * _.lt(3, 3); - * // => false - * - * _.lt(3, 1); - * // => false - */ - var lt = createRelationalOperation(baseLt); - - /** - * Checks if `value` is less than or equal to `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than or equal to - * `other`, else `false`. - * @see _.gte - * @example - * - * _.lte(1, 3); - * // => true - * - * _.lte(3, 3); - * // => true - * - * _.lte(3, 1); - * // => false - */ - var lte = createRelationalOperation(function(value, other) { - return value <= other; - }); - - /** - * Converts `value` to an array. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to convert. - * @returns {Array} Returns the converted array. - * @example - * - * _.toArray({ 'a': 1, 'b': 2 }); - * // => [1, 2] - * - * _.toArray('abc'); - * // => ['a', 'b', 'c'] - * - * _.toArray(1); - * // => [] - * - * _.toArray(null); - * // => [] - */ - function toArray(value) { - if (!value) { - return []; - } - if (isArrayLike(value)) { - return isString(value) ? stringToArray(value) : copyArray(value); - } - if (symIterator && value[symIterator]) { - return iteratorToArray(value[symIterator]()); - } - var tag = getTag(value), - func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values); - - return func(value); - } - - /** - * Converts `value` to a finite number. - * - * @static - * @memberOf _ - * @since 4.12.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted number. - * @example - * - * _.toFinite(3.2); - * // => 3.2 - * - * _.toFinite(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toFinite(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toFinite('3.2'); - * // => 3.2 - */ - function toFinite(value) { - if (!value) { - return value === 0 ? value : 0; - } - value = toNumber(value); - if (value === INFINITY || value === -INFINITY) { - var sign = (value < 0 ? -1 : 1); - return sign * MAX_INTEGER; - } - return value === value ? value : 0; - } - - /** - * Converts `value` to an integer. - * - * **Note:** This method is loosely based on - * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toInteger(3.2); - * // => 3 - * - * _.toInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toInteger(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toInteger('3.2'); - * // => 3 - */ - function toInteger(value) { - var result = toFinite(value), - remainder = result % 1; - - return result === result ? (remainder ? result - remainder : result) : 0; - } - - /** - * Converts `value` to an integer suitable for use as the length of an - * array-like object. - * - * **Note:** This method is based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toLength(3.2); - * // => 3 - * - * _.toLength(Number.MIN_VALUE); - * // => 0 - * - * _.toLength(Infinity); - * // => 4294967295 - * - * _.toLength('3.2'); - * // => 3 - */ - function toLength(value) { - return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; - } - - /** - * Converts `value` to a number. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to process. - * @returns {number} Returns the number. - * @example - * - * _.toNumber(3.2); - * // => 3.2 - * - * _.toNumber(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toNumber(Infinity); - * // => Infinity - * - * _.toNumber('3.2'); - * // => 3.2 - */ - function toNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - if (isObject(value)) { - var other = typeof value.valueOf == 'function' ? value.valueOf() : value; - value = isObject(other) ? (other + '') : other; - } - if (typeof value != 'string') { - return value === 0 ? value : +value; - } - value = baseTrim(value); - var isBinary = reIsBinary.test(value); - return (isBinary || reIsOctal.test(value)) - ? freeParseInt(value.slice(2), isBinary ? 2 : 8) - : (reIsBadHex.test(value) ? NAN : +value); - } - - /** - * Converts `value` to a plain object flattening inherited enumerable string - * keyed properties of `value` to own properties of the plain object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {Object} Returns the converted plain object. - * @example - * - * function Foo() { - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.assign({ 'a': 1 }, new Foo); - * // => { 'a': 1, 'b': 2 } - * - * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); - * // => { 'a': 1, 'b': 2, 'c': 3 } - */ - function toPlainObject(value) { - return copyObject(value, keysIn(value)); - } - - /** - * Converts `value` to a safe integer. A safe integer can be compared and - * represented correctly. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toSafeInteger(3.2); - * // => 3 - * - * _.toSafeInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toSafeInteger(Infinity); - * // => 9007199254740991 - * - * _.toSafeInteger('3.2'); - * // => 3 - */ - function toSafeInteger(value) { - return value - ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) - : (value === 0 ? value : 0); - } - - /** - * Converts `value` to a string. An empty string is returned for `null` - * and `undefined` values. The sign of `-0` is preserved. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - * @example - * - * _.toString(null); - * // => '' - * - * _.toString(-0); - * // => '-0' - * - * _.toString([1, 2, 3]); - * // => '1,2,3' - */ - function toString(value) { - return value == null ? '' : baseToString(value); - } - - /*------------------------------------------------------------------------*/ - - /** - * Assigns own enumerable string keyed properties of source objects to the - * destination object. Source objects are applied from left to right. - * Subsequent sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object` and is loosely based on - * [`Object.assign`](https://mdn.io/Object/assign). - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assignIn - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assign({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'c': 3 } - */ - var assign = createAssigner(function(object, source) { - if (isPrototype(source) || isArrayLike(source)) { - copyObject(source, keys(source), object); - return; - } - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - assignValue(object, key, source[key]); - } - } - }); - - /** - * This method is like `_.assign` except that it iterates over own and - * inherited source properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extend - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assign - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assignIn({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } - */ - var assignIn = createAssigner(function(object, source) { - copyObject(source, keysIn(source), object); - }); - - /** - * This method is like `_.assignIn` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extendWith - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignInWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keysIn(source), object, customizer); - }); - - /** - * This method is like `_.assign` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignInWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var assignWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keys(source), object, customizer); - }); - - /** - * Creates an array of values corresponding to `paths` of `object`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Array} Returns the picked values. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; - * - * _.at(object, ['a[0].b.c', 'a[1]']); - * // => [3, 4] - */ - var at = flatRest(baseAt); - - /** - * Creates an object that inherits from the `prototype` object. If a - * `properties` object is given, its own enumerable string keyed properties - * are assigned to the created object. - * - * @static - * @memberOf _ - * @since 2.3.0 - * @category Object - * @param {Object} prototype The object to inherit from. - * @param {Object} [properties] The properties to assign to the object. - * @returns {Object} Returns the new object. - * @example - * - * function Shape() { - * this.x = 0; - * this.y = 0; - * } - * - * function Circle() { - * Shape.call(this); - * } - * - * Circle.prototype = _.create(Shape.prototype, { - * 'constructor': Circle - * }); - * - * var circle = new Circle; - * circle instanceof Circle; - * // => true - * - * circle instanceof Shape; - * // => true - */ - function create(prototype, properties) { - var result = baseCreate(prototype); - return properties == null ? result : baseAssign(result, properties); - } - - /** - * Assigns own and inherited enumerable string keyed properties of source - * objects to the destination object for all destination properties that - * resolve to `undefined`. Source objects are applied from left to right. - * Once a property is set, additional values of the same property are ignored. - * - * **Note:** This method mutates `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaultsDeep - * @example - * - * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var defaults = baseRest(function(object, sources) { - object = Object(object); - - var index = -1; - var length = sources.length; - var guard = length > 2 ? sources[2] : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - length = 1; - } - - while (++index < length) { - var source = sources[index]; - var props = keysIn(source); - var propsIndex = -1; - var propsLength = props.length; - - while (++propsIndex < propsLength) { - var key = props[propsIndex]; - var value = object[key]; - - if (value === undefined || - (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { - object[key] = source[key]; - } - } - } - - return object; - }); - - /** - * This method is like `_.defaults` except that it recursively assigns - * default properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 3.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaults - * @example - * - * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); - * // => { 'a': { 'b': 2, 'c': 3 } } - */ - var defaultsDeep = baseRest(function(args) { - args.push(undefined, customDefaultsMerge); - return apply(mergeWith, undefined, args); - }); - - /** - * This method is like `_.find` except that it returns the key of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findKey(users, function(o) { return o.age < 40; }); - * // => 'barney' (iteration order is not guaranteed) - * - * // The `_.matches` iteratee shorthand. - * _.findKey(users, { 'age': 1, 'active': true }); - * // => 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findKey(users, 'active'); - * // => 'barney' - */ - function findKey(object, predicate) { - return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); - } - - /** - * This method is like `_.findKey` except that it iterates over elements of - * a collection in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findLastKey(users, function(o) { return o.age < 40; }); - * // => returns 'pebbles' assuming `_.findKey` returns 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.findLastKey(users, { 'age': 36, 'active': true }); - * // => 'barney' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findLastKey(users, 'active'); - * // => 'pebbles' - */ - function findLastKey(object, predicate) { - return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); - } - - /** - * Iterates over own and inherited enumerable string keyed properties of an - * object and invokes `iteratee` for each property. The iteratee is invoked - * with three arguments: (value, key, object). Iteratee functions may exit - * iteration early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forInRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forIn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). - */ - function forIn(object, iteratee) { - return object == null - ? object - : baseFor(object, getIteratee(iteratee, 3), keysIn); - } - - /** - * This method is like `_.forIn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forIn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forInRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. - */ - function forInRight(object, iteratee) { - return object == null - ? object - : baseForRight(object, getIteratee(iteratee, 3), keysIn); - } - - /** - * Iterates over own enumerable string keyed properties of an object and - * invokes `iteratee` for each property. The iteratee is invoked with three - * arguments: (value, key, object). Iteratee functions may exit iteration - * early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwnRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ - function forOwn(object, iteratee) { - return object && baseForOwn(object, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.forOwn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwnRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. - */ - function forOwnRight(object, iteratee) { - return object && baseForOwnRight(object, getIteratee(iteratee, 3)); - } - - /** - * Creates an array of function property names from own enumerable properties - * of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functionsIn - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functions(new Foo); - * // => ['a', 'b'] - */ - function functions(object) { - return object == null ? [] : baseFunctions(object, keys(object)); - } - - /** - * Creates an array of function property names from own and inherited - * enumerable properties of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functions - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functionsIn(new Foo); - * // => ['a', 'b', 'c'] - */ - function functionsIn(object) { - return object == null ? [] : baseFunctions(object, keysIn(object)); - } - - /** - * Gets the value at `path` of `object`. If the resolved value is - * `undefined`, the `defaultValue` is returned in its place. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.get(object, 'a[0].b.c'); - * // => 3 - * - * _.get(object, ['a', '0', 'b', 'c']); - * // => 3 - * - * _.get(object, 'a.b.c', 'default'); - * // => 'default' - */ - function get(object, path, defaultValue) { - var result = object == null ? undefined : baseGet(object, path); - return result === undefined ? defaultValue : result; - } - - /** - * Checks if `path` is a direct property of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = { 'a': { 'b': 2 } }; - * var other = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.has(object, 'a'); - * // => true - * - * _.has(object, 'a.b'); - * // => true - * - * _.has(object, ['a', 'b']); - * // => true - * - * _.has(other, 'a'); - * // => false - */ - function has(object, path) { - return object != null && hasPath(object, path, baseHas); - } - - /** - * Checks if `path` is a direct or inherited property of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.hasIn(object, 'a'); - * // => true - * - * _.hasIn(object, 'a.b'); - * // => true - * - * _.hasIn(object, ['a', 'b']); - * // => true - * - * _.hasIn(object, 'b'); - * // => false - */ - function hasIn(object, path) { - return object != null && hasPath(object, path, baseHasIn); - } - - /** - * Creates an object composed of the inverted keys and values of `object`. - * If `object` contains duplicate values, subsequent values overwrite - * property assignments of previous values. - * - * @static - * @memberOf _ - * @since 0.7.0 - * @category Object - * @param {Object} object The object to invert. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invert(object); - * // => { '1': 'c', '2': 'b' } - */ - var invert = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - result[value] = key; - }, constant(identity)); - - /** - * This method is like `_.invert` except that the inverted object is generated - * from the results of running each element of `object` thru `iteratee`. The - * corresponding inverted value of each inverted key is an array of keys - * responsible for generating the inverted value. The iteratee is invoked - * with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.1.0 - * @category Object - * @param {Object} object The object to invert. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invertBy(object); - * // => { '1': ['a', 'c'], '2': ['b'] } - * - * _.invertBy(object, function(value) { - * return 'group' + value; - * }); - * // => { 'group1': ['a', 'c'], 'group2': ['b'] } - */ - var invertBy = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - if (hasOwnProperty.call(result, value)) { - result[value].push(key); - } else { - result[value] = [key]; - } - }, getIteratee); - - /** - * Invokes the method at `path` of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {...*} [args] The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - * @example - * - * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; - * - * _.invoke(object, 'a[0].b.c.slice', 1, 3); - * // => [2, 3] - */ - var invoke = baseRest(baseInvoke); - - /** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ - function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); - } - - /** - * Creates an array of the own and inherited enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keysIn(new Foo); - * // => ['a', 'b', 'c'] (iteration order is not guaranteed) - */ - function keysIn(object) { - return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); - } - - /** - * The opposite of `_.mapValues`; this method creates an object with the - * same values as `object` and keys generated by running each own enumerable - * string keyed property of `object` thru `iteratee`. The iteratee is invoked - * with three arguments: (value, key, object). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns the new mapped object. - * @see _.mapValues - * @example - * - * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) { - * return key + value; - * }); - * // => { 'a1': 1, 'b2': 2 } - */ - function mapKeys(object, iteratee) { - var result = {}; - iteratee = getIteratee(iteratee, 3); - - baseForOwn(object, function(value, key, object) { - baseAssignValue(result, iteratee(value, key, object), value); - }); - return result; - } - - /** - * Creates an object with the same keys as `object` and values generated - * by running each own enumerable string keyed property of `object` thru - * `iteratee`. The iteratee is invoked with three arguments: - * (value, key, object). - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns the new mapped object. - * @see _.mapKeys - * @example - * - * var users = { - * 'fred': { 'user': 'fred', 'age': 40 }, - * 'pebbles': { 'user': 'pebbles', 'age': 1 } - * }; - * - * _.mapValues(users, function(o) { return o.age; }); - * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) - * - * // The `_.property` iteratee shorthand. - * _.mapValues(users, 'age'); - * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) - */ - function mapValues(object, iteratee) { - var result = {}; - iteratee = getIteratee(iteratee, 3); - - baseForOwn(object, function(value, key, object) { - baseAssignValue(result, key, iteratee(value, key, object)); - }); - return result; - } - - /** - * This method is like `_.assign` except that it recursively merges own and - * inherited enumerable string keyed properties of source objects into the - * destination object. Source properties that resolve to `undefined` are - * skipped if a destination value exists. Array and plain object properties - * are merged recursively. Other objects and value types are overridden by - * assignment. Source objects are applied from left to right. Subsequent - * sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @example - * - * var object = { - * 'a': [{ 'b': 2 }, { 'd': 4 }] - * }; - * - * var other = { - * 'a': [{ 'c': 3 }, { 'e': 5 }] - * }; - * - * _.merge(object, other); - * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } - */ - var merge = createAssigner(function(object, source, srcIndex) { - baseMerge(object, source, srcIndex); - }); - - /** - * This method is like `_.merge` except that it accepts `customizer` which - * is invoked to produce the merged values of the destination and source - * properties. If `customizer` returns `undefined`, merging is handled by the - * method instead. The `customizer` is invoked with six arguments: - * (objValue, srcValue, key, object, source, stack). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} customizer The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * function customizer(objValue, srcValue) { - * if (_.isArray(objValue)) { - * return objValue.concat(srcValue); - * } - * } - * - * var object = { 'a': [1], 'b': [2] }; - * var other = { 'a': [3], 'b': [4] }; - * - * _.mergeWith(object, other, customizer); - * // => { 'a': [1, 3], 'b': [2, 4] } - */ - var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { - baseMerge(object, source, srcIndex, customizer); - }); - - /** - * The opposite of `_.pick`; this method creates an object composed of the - * own and inherited enumerable property paths of `object` that are not omitted. - * - * **Note:** This method is considerably slower than `_.pick`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The source object. - * @param {...(string|string[])} [paths] The property paths to omit. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.omit(object, ['a', 'c']); - * // => { 'b': '2' } - */ - var omit = flatRest(function(object, paths) { - var result = {}; - if (object == null) { - return result; - } - var isDeep = false; - paths = arrayMap(paths, function(path) { - path = castPath(path, object); - isDeep || (isDeep = path.length > 1); - return path; - }); - copyObject(object, getAllKeysIn(object), result); - if (isDeep) { - result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); - } - var length = paths.length; - while (length--) { - baseUnset(result, paths[length]); - } - return result; - }); - - /** - * The opposite of `_.pickBy`; this method creates an object composed of - * the own and inherited enumerable string keyed properties of `object` that - * `predicate` doesn't return truthy for. The predicate is invoked with two - * arguments: (value, key). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The source object. - * @param {Function} [predicate=_.identity] The function invoked per property. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.omitBy(object, _.isNumber); - * // => { 'b': '2' } - */ - function omitBy(object, predicate) { - return pickBy(object, negate(getIteratee(predicate))); - } - - /** - * Creates an object composed of the picked `object` properties. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The source object. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.pick(object, ['a', 'c']); - * // => { 'a': 1, 'c': 3 } - */ - var pick = flatRest(function(object, paths) { - return object == null ? {} : basePick(object, paths); - }); - - /** - * Creates an object composed of the `object` properties `predicate` returns - * truthy for. The predicate is invoked with two arguments: (value, key). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The source object. - * @param {Function} [predicate=_.identity] The function invoked per property. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.pickBy(object, _.isNumber); - * // => { 'a': 1, 'c': 3 } - */ - function pickBy(object, predicate) { - if (object == null) { - return {}; - } - var props = arrayMap(getAllKeysIn(object), function(prop) { - return [prop]; - }); - predicate = getIteratee(predicate); - return basePickBy(object, props, function(value, path) { - return predicate(value, path[0]); - }); - } - - /** - * This method is like `_.get` except that if the resolved value is a - * function it's invoked with the `this` binding of its parent object and - * its result is returned. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to resolve. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; - * - * _.result(object, 'a[0].b.c1'); - * // => 3 - * - * _.result(object, 'a[0].b.c2'); - * // => 4 - * - * _.result(object, 'a[0].b.c3', 'default'); - * // => 'default' - * - * _.result(object, 'a[0].b.c3', _.constant('default')); - * // => 'default' - */ - function result(object, path, defaultValue) { - path = castPath(path, object); - - var index = -1, - length = path.length; - - // Ensure the loop is entered when path is empty. - if (!length) { - length = 1; - object = undefined; - } - while (++index < length) { - var value = object == null ? undefined : object[toKey(path[index])]; - if (value === undefined) { - index = length; - value = defaultValue; - } - object = isFunction(value) ? value.call(object) : value; - } - return object; - } - - /** - * Sets the value at `path` of `object`. If a portion of `path` doesn't exist, - * it's created. Arrays are created for missing index properties while objects - * are created for all other missing properties. Use `_.setWith` to customize - * `path` creation. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @returns {Object} Returns `object`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.set(object, 'a[0].b.c', 4); - * console.log(object.a[0].b.c); - * // => 4 - * - * _.set(object, ['x', '0', 'y', 'z'], 5); - * console.log(object.x[0].y.z); - * // => 5 - */ - function set(object, path, value) { - return object == null ? object : baseSet(object, path, value); - } - - /** - * This method is like `_.set` except that it accepts `customizer` which is - * invoked to produce the objects of `path`. If `customizer` returns `undefined` - * path creation is handled by the method instead. The `customizer` is invoked - * with three arguments: (nsValue, key, nsObject). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * var object = {}; - * - * _.setWith(object, '[0][1]', 'a', Object); - * // => { '0': { '1': 'a' } } - */ - function setWith(object, path, value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseSet(object, path, value, customizer); - } - - /** - * Creates an array of own enumerable string keyed-value pairs for `object` - * which can be consumed by `_.fromPairs`. If `object` is a map or set, its - * entries are returned. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias entries - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the key-value pairs. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.toPairs(new Foo); - * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed) - */ - var toPairs = createToPairs(keys); - - /** - * Creates an array of own and inherited enumerable string keyed-value pairs - * for `object` which can be consumed by `_.fromPairs`. If `object` is a map - * or set, its entries are returned. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias entriesIn - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the key-value pairs. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.toPairsIn(new Foo); - * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed) - */ - var toPairsIn = createToPairs(keysIn); - - /** - * An alternative to `_.reduce`; this method transforms `object` to a new - * `accumulator` object which is the result of running each of its own - * enumerable string keyed properties thru `iteratee`, with each invocation - * potentially mutating the `accumulator` object. If `accumulator` is not - * provided, a new object with the same `[[Prototype]]` will be used. The - * iteratee is invoked with four arguments: (accumulator, value, key, object). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The custom accumulator value. - * @returns {*} Returns the accumulated value. - * @example - * - * _.transform([2, 3, 4], function(result, n) { - * result.push(n *= n); - * return n % 2 == 0; - * }, []); - * // => [4, 9] - * - * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { - * (result[value] || (result[value] = [])).push(key); - * }, {}); - * // => { '1': ['a', 'c'], '2': ['b'] } - */ - function transform(object, iteratee, accumulator) { - var isArr = isArray(object), - isArrLike = isArr || isBuffer(object) || isTypedArray(object); - - iteratee = getIteratee(iteratee, 4); - if (accumulator == null) { - var Ctor = object && object.constructor; - if (isArrLike) { - accumulator = isArr ? new Ctor : []; - } - else if (isObject(object)) { - accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; - } - else { - accumulator = {}; - } - } - (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) { - return iteratee(accumulator, value, index, object); - }); - return accumulator; - } - - /** - * Removes the property at `path` of `object`. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to unset. - * @returns {boolean} Returns `true` if the property is deleted, else `false`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 7 } }] }; - * _.unset(object, 'a[0].b.c'); - * // => true - * - * console.log(object); - * // => { 'a': [{ 'b': {} }] }; - * - * _.unset(object, ['a', '0', 'b', 'c']); - * // => true - * - * console.log(object); - * // => { 'a': [{ 'b': {} }] }; - */ - function unset(object, path) { - return object == null ? true : baseUnset(object, path); - } - - /** - * This method is like `_.set` except that accepts `updater` to produce the - * value to set. Use `_.updateWith` to customize `path` creation. The `updater` - * is invoked with one argument: (value). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {Function} updater The function to produce the updated value. - * @returns {Object} Returns `object`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.update(object, 'a[0].b.c', function(n) { return n * n; }); - * console.log(object.a[0].b.c); - * // => 9 - * - * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; }); - * console.log(object.x[0].y.z); - * // => 0 - */ - function update(object, path, updater) { - return object == null ? object : baseUpdate(object, path, castFunction(updater)); - } - - /** - * This method is like `_.update` except that it accepts `customizer` which is - * invoked to produce the objects of `path`. If `customizer` returns `undefined` - * path creation is handled by the method instead. The `customizer` is invoked - * with three arguments: (nsValue, key, nsObject). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {Function} updater The function to produce the updated value. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * var object = {}; - * - * _.updateWith(object, '[0][1]', _.constant('a'), Object); - * // => { '0': { '1': 'a' } } - */ - function updateWith(object, path, updater, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); - } - - /** - * Creates an array of the own enumerable string keyed property values of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property values. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.values(new Foo); - * // => [1, 2] (iteration order is not guaranteed) - * - * _.values('hi'); - * // => ['h', 'i'] - */ - function values(object) { - return object == null ? [] : baseValues(object, keys(object)); - } - - /** - * Creates an array of the own and inherited enumerable string keyed property - * values of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property values. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.valuesIn(new Foo); - * // => [1, 2, 3] (iteration order is not guaranteed) - */ - function valuesIn(object) { - return object == null ? [] : baseValues(object, keysIn(object)); - } - - /*------------------------------------------------------------------------*/ - - /** - * Clamps `number` within the inclusive `lower` and `upper` bounds. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Number - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - * @example - * - * _.clamp(-10, -5, 5); - * // => -5 - * - * _.clamp(10, -5, 5); - * // => 5 - */ - function clamp(number, lower, upper) { - if (upper === undefined) { - upper = lower; - lower = undefined; - } - if (upper !== undefined) { - upper = toNumber(upper); - upper = upper === upper ? upper : 0; - } - if (lower !== undefined) { - lower = toNumber(lower); - lower = lower === lower ? lower : 0; - } - return baseClamp(toNumber(number), lower, upper); - } - - /** - * Checks if `n` is between `start` and up to, but not including, `end`. If - * `end` is not specified, it's set to `start` with `start` then set to `0`. - * If `start` is greater than `end` the params are swapped to support - * negative ranges. - * - * @static - * @memberOf _ - * @since 3.3.0 - * @category Number - * @param {number} number The number to check. - * @param {number} [start=0] The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - * @see _.range, _.rangeRight - * @example - * - * _.inRange(3, 2, 4); - * // => true - * - * _.inRange(4, 8); - * // => true - * - * _.inRange(4, 2); - * // => false - * - * _.inRange(2, 2); - * // => false - * - * _.inRange(1.2, 2); - * // => true - * - * _.inRange(5.2, 4); - * // => false - * - * _.inRange(-3, -2, -6); - * // => true - */ - function inRange(number, start, end) { - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - number = toNumber(number); - return baseInRange(number, start, end); - } - - /** - * Produces a random number between the inclusive `lower` and `upper` bounds. - * If only one argument is provided a number between `0` and the given number - * is returned. If `floating` is `true`, or either `lower` or `upper` are - * floats, a floating-point number is returned instead of an integer. - * - * **Note:** JavaScript follows the IEEE-754 standard for resolving - * floating-point values which can produce unexpected results. - * - * @static - * @memberOf _ - * @since 0.7.0 - * @category Number - * @param {number} [lower=0] The lower bound. - * @param {number} [upper=1] The upper bound. - * @param {boolean} [floating] Specify returning a floating-point number. - * @returns {number} Returns the random number. - * @example - * - * _.random(0, 5); - * // => an integer between 0 and 5 - * - * _.random(5); - * // => also an integer between 0 and 5 - * - * _.random(5, true); - * // => a floating-point number between 0 and 5 - * - * _.random(1.2, 5.2); - * // => a floating-point number between 1.2 and 5.2 - */ - function random(lower, upper, floating) { - if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { - upper = floating = undefined; - } - if (floating === undefined) { - if (typeof upper == 'boolean') { - floating = upper; - upper = undefined; - } - else if (typeof lower == 'boolean') { - floating = lower; - lower = undefined; - } - } - if (lower === undefined && upper === undefined) { - lower = 0; - upper = 1; - } - else { - lower = toFinite(lower); - if (upper === undefined) { - upper = lower; - lower = 0; - } else { - upper = toFinite(upper); - } - } - if (lower > upper) { - var temp = lower; - lower = upper; - upper = temp; - } - if (floating || lower % 1 || upper % 1) { - var rand = nativeRandom(); - return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper); - } - return baseRandom(lower, upper); - } - - /*------------------------------------------------------------------------*/ - - /** - * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the camel cased string. - * @example - * - * _.camelCase('Foo Bar'); - * // => 'fooBar' - * - * _.camelCase('--foo-bar--'); - * // => 'fooBar' - * - * _.camelCase('__FOO_BAR__'); - * // => 'fooBar' - */ - var camelCase = createCompounder(function(result, word, index) { - word = word.toLowerCase(); - return result + (index ? capitalize(word) : word); - }); - - /** - * Converts the first character of `string` to upper case and the remaining - * to lower case. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to capitalize. - * @returns {string} Returns the capitalized string. - * @example - * - * _.capitalize('FRED'); - * // => 'Fred' - */ - function capitalize(string) { - return upperFirst(toString(string).toLowerCase()); - } - - /** - * Deburrs `string` by converting - * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) - * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) - * letters to basic Latin letters and removing - * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to deburr. - * @returns {string} Returns the deburred string. - * @example - * - * _.deburr('déjà vu'); - * // => 'deja vu' - */ - function deburr(string) { - string = toString(string); - return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); - } - - /** - * Checks if `string` ends with the given target string. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to inspect. - * @param {string} [target] The string to search for. - * @param {number} [position=string.length] The position to search up to. - * @returns {boolean} Returns `true` if `string` ends with `target`, - * else `false`. - * @example - * - * _.endsWith('abc', 'c'); - * // => true - * - * _.endsWith('abc', 'b'); - * // => false - * - * _.endsWith('abc', 'b', 2); - * // => true - */ - function endsWith(string, target, position) { - string = toString(string); - target = baseToString(target); - - var length = string.length; - position = position === undefined - ? length - : baseClamp(toInteger(position), 0, length); - - var end = position; - position -= target.length; - return position >= 0 && string.slice(position, end) == target; - } - - /** - * Converts the characters "&", "<", ">", '"', and "'" in `string` to their - * corresponding HTML entities. - * - * **Note:** No other characters are escaped. To escape additional - * characters use a third-party library like [_he_](https://mths.be/he). - * - * Though the ">" character is escaped for symmetry, characters like - * ">" and "/" don't need escaping in HTML and have no special meaning - * unless they're part of a tag or unquoted attribute value. See - * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) - * (under "semi-related fun fact") for more details. - * - * When working with HTML you should always - * [quote attribute values](http://wonko.com/post/html-escaping) to reduce - * XSS vectors. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escape('fred, barney, & pebbles'); - * // => 'fred, barney, & pebbles' - */ - function escape(string) { - string = toString(string); - return (string && reHasUnescapedHtml.test(string)) - ? string.replace(reUnescapedHtml, escapeHtmlChar) - : string; - } - - /** - * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", - * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escapeRegExp('[lodash](https://lodash.com/)'); - * // => '\[lodash\]\(https://lodash\.com/\)' - */ - function escapeRegExp(string) { - string = toString(string); - return (string && reHasRegExpChar.test(string)) - ? string.replace(reRegExpChar, '\\$&') - : string; - } - - /** - * Converts `string` to - * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the kebab cased string. - * @example - * - * _.kebabCase('Foo Bar'); - * // => 'foo-bar' - * - * _.kebabCase('fooBar'); - * // => 'foo-bar' - * - * _.kebabCase('__FOO_BAR__'); - * // => 'foo-bar' - */ - var kebabCase = createCompounder(function(result, word, index) { - return result + (index ? '-' : '') + word.toLowerCase(); - }); - - /** - * Converts `string`, as space separated words, to lower case. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the lower cased string. - * @example - * - * _.lowerCase('--Foo-Bar--'); - * // => 'foo bar' - * - * _.lowerCase('fooBar'); - * // => 'foo bar' - * - * _.lowerCase('__FOO_BAR__'); - * // => 'foo bar' - */ - var lowerCase = createCompounder(function(result, word, index) { - return result + (index ? ' ' : '') + word.toLowerCase(); - }); - - /** - * Converts the first character of `string` to lower case. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the converted string. - * @example - * - * _.lowerFirst('Fred'); - * // => 'fred' - * - * _.lowerFirst('FRED'); - * // => 'fRED' - */ - var lowerFirst = createCaseFirst('toLowerCase'); - - /** - * Pads `string` on the left and right sides if it's shorter than `length`. - * Padding characters are truncated if they can't be evenly divided by `length`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.pad('abc', 8); - * // => ' abc ' - * - * _.pad('abc', 8, '_-'); - * // => '_-abc_-_' - * - * _.pad('abc', 3); - * // => 'abc' - */ - function pad(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - if (!length || strLength >= length) { - return string; - } - var mid = (length - strLength) / 2; - return ( - createPadding(nativeFloor(mid), chars) + - string + - createPadding(nativeCeil(mid), chars) - ); - } - - /** - * Pads `string` on the right side if it's shorter than `length`. Padding - * characters are truncated if they exceed `length`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.padEnd('abc', 6); - * // => 'abc ' - * - * _.padEnd('abc', 6, '_-'); - * // => 'abc_-_' - * - * _.padEnd('abc', 3); - * // => 'abc' - */ - function padEnd(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - return (length && strLength < length) - ? (string + createPadding(length - strLength, chars)) - : string; - } - - /** - * Pads `string` on the left side if it's shorter than `length`. Padding - * characters are truncated if they exceed `length`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.padStart('abc', 6); - * // => ' abc' - * - * _.padStart('abc', 6, '_-'); - * // => '_-_abc' - * - * _.padStart('abc', 3); - * // => 'abc' - */ - function padStart(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - return (length && strLength < length) - ? (createPadding(length - strLength, chars) + string) - : string; - } - - /** - * Converts `string` to an integer of the specified radix. If `radix` is - * `undefined` or `0`, a `radix` of `10` is used unless `value` is a - * hexadecimal, in which case a `radix` of `16` is used. - * - * **Note:** This method aligns with the - * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category String - * @param {string} string The string to convert. - * @param {number} [radix=10] The radix to interpret `value` by. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {number} Returns the converted integer. - * @example - * - * _.parseInt('08'); - * // => 8 - * - * _.map(['6', '08', '10'], _.parseInt); - * // => [6, 8, 10] - */ - function parseInt(string, radix, guard) { - if (guard || radix == null) { - radix = 0; - } else if (radix) { - radix = +radix; - } - return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); - } - - /** - * Repeats the given string `n` times. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to repeat. - * @param {number} [n=1] The number of times to repeat the string. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {string} Returns the repeated string. - * @example - * - * _.repeat('*', 3); - * // => '***' - * - * _.repeat('abc', 2); - * // => 'abcabc' - * - * _.repeat('abc', 0); - * // => '' - */ - function repeat(string, n, guard) { - if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) { - n = 1; - } else { - n = toInteger(n); - } - return baseRepeat(toString(string), n); - } - - /** - * Replaces matches for `pattern` in `string` with `replacement`. - * - * **Note:** This method is based on - * [`String#replace`](https://mdn.io/String/replace). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to modify. - * @param {RegExp|string} pattern The pattern to replace. - * @param {Function|string} replacement The match replacement. - * @returns {string} Returns the modified string. - * @example - * - * _.replace('Hi Fred', 'Fred', 'Barney'); - * // => 'Hi Barney' - */ - function replace() { - var args = arguments, - string = toString(args[0]); - - return args.length < 3 ? string : string.replace(args[1], args[2]); - } - - /** - * Converts `string` to - * [snake case](https://en.wikipedia.org/wiki/Snake_case). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the snake cased string. - * @example - * - * _.snakeCase('Foo Bar'); - * // => 'foo_bar' - * - * _.snakeCase('fooBar'); - * // => 'foo_bar' - * - * _.snakeCase('--FOO-BAR--'); - * // => 'foo_bar' - */ - var snakeCase = createCompounder(function(result, word, index) { - return result + (index ? '_' : '') + word.toLowerCase(); - }); - - /** - * Splits `string` by `separator`. - * - * **Note:** This method is based on - * [`String#split`](https://mdn.io/String/split). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to split. - * @param {RegExp|string} separator The separator pattern to split by. - * @param {number} [limit] The length to truncate results to. - * @returns {Array} Returns the string segments. - * @example - * - * _.split('a-b-c', '-', 2); - * // => ['a', 'b'] - */ - function split(string, separator, limit) { - if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { - separator = limit = undefined; - } - limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; - if (!limit) { - return []; - } - string = toString(string); - if (string && ( - typeof separator == 'string' || - (separator != null && !isRegExp(separator)) - )) { - separator = baseToString(separator); - if (!separator && hasUnicode(string)) { - return castSlice(stringToArray(string), 0, limit); - } - } - return string.split(separator, limit); - } - - /** - * Converts `string` to - * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage). - * - * @static - * @memberOf _ - * @since 3.1.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the start cased string. - * @example - * - * _.startCase('--foo-bar--'); - * // => 'Foo Bar' - * - * _.startCase('fooBar'); - * // => 'Foo Bar' - * - * _.startCase('__FOO_BAR__'); - * // => 'FOO BAR' - */ - var startCase = createCompounder(function(result, word, index) { - return result + (index ? ' ' : '') + upperFirst(word); - }); - - /** - * Checks if `string` starts with the given target string. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to inspect. - * @param {string} [target] The string to search for. - * @param {number} [position=0] The position to search from. - * @returns {boolean} Returns `true` if `string` starts with `target`, - * else `false`. - * @example - * - * _.startsWith('abc', 'a'); - * // => true - * - * _.startsWith('abc', 'b'); - * // => false - * - * _.startsWith('abc', 'b', 1); - * // => true - */ - function startsWith(string, target, position) { - string = toString(string); - position = position == null - ? 0 - : baseClamp(toInteger(position), 0, string.length); - - target = baseToString(target); - return string.slice(position, position + target.length) == target; - } - - /** - * Creates a compiled template function that can interpolate data properties - * in "interpolate" delimiters, HTML-escape interpolated data properties in - * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data - * properties may be accessed as free variables in the template. If a setting - * object is given, it takes precedence over `_.templateSettings` values. - * - * **Note:** In the development build `_.template` utilizes - * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) - * for easier debugging. - * - * For more information on precompiling templates see - * [lodash's custom builds documentation](https://lodash.com/custom-builds). - * - * For more information on Chrome extension sandboxes see - * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval). - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The template string. - * @param {Object} [options={}] The options object. - * @param {RegExp} [options.escape=_.templateSettings.escape] - * The HTML "escape" delimiter. - * @param {RegExp} [options.evaluate=_.templateSettings.evaluate] - * The "evaluate" delimiter. - * @param {Object} [options.imports=_.templateSettings.imports] - * An object to import into the template as free variables. - * @param {RegExp} [options.interpolate=_.templateSettings.interpolate] - * The "interpolate" delimiter. - * @param {string} [options.sourceURL='lodash.templateSources[n]'] - * The sourceURL of the compiled template. - * @param {string} [options.variable='obj'] - * The data object variable name. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the compiled template function. - * @example - * - * // Use the "interpolate" delimiter to create a compiled template. - * var compiled = _.template('hello <%= user %>!'); - * compiled({ 'user': 'fred' }); - * // => 'hello fred!' - * - * // Use the HTML "escape" delimiter to escape data property values. - * var compiled = _.template('<%- value %>'); - * compiled({ 'value': ''` string occurrence breaking pages ([#349](https://github.com/sveltejs/svelte/pull/349)) -* Allow reference to whitelisted globals without properties ([#333](https://github.com/sveltejs/svelte/pull/333)) -* Don't remove ` ` incorrectly ([#348](https://github.com/sveltejs/svelte/issues/348)) -* `let` -> `var` in `addCss` block ([#351](https://github.com/sveltejs/svelte/pull/351)) - -## 1.10.2 - -* Accept any case for doctype declarations ([#336](https://github.com/sveltejs/svelte/issues/336)) -* Allow non-top-level `"; - unsubscribe = listen(window, 'message', (event) => { - if (event.source === iframe.contentWindow) - fn(); - }); - } - else { - iframe.src = 'about:blank'; - iframe.onload = () => { - unsubscribe = listen(iframe.contentWindow, 'resize', fn); - }; - } - append(node, iframe); - return () => { - if (crossorigin) { - unsubscribe(); - } - else if (unsubscribe && iframe.contentWindow) { - unsubscribe(); - } - detach(iframe); - }; -} -function toggle_class(element, name, toggle) { - element.classList[toggle ? 'add' : 'remove'](name); -} -function custom_event(type, detail, bubbles = false) { - const e = document.createEvent('CustomEvent'); - e.initCustomEvent(type, bubbles, false, detail); - return e; -} -function query_selector_all(selector, parent = document.body) { - return Array.from(parent.querySelectorAll(selector)); -} -class HtmlTag { - constructor() { - this.e = this.n = null; - } - c(html) { - this.h(html); - } - m(html, target, anchor = null) { - if (!this.e) { - this.e = element(target.nodeName); - this.t = target; - this.c(html); - } - this.i(anchor); - } - h(html) { - this.e.innerHTML = html; - this.n = Array.from(this.e.childNodes); - } - i(anchor) { - for (let i = 0; i < this.n.length; i += 1) { - insert(this.t, this.n[i], anchor); - } - } - p(html) { - this.d(); - this.h(html); - this.i(this.a); - } - d() { - this.n.forEach(detach); - } -} -class HtmlTagHydration extends HtmlTag { - constructor(claimed_nodes) { - super(); - this.e = this.n = null; - this.l = claimed_nodes; - } - c(html) { - if (this.l) { - this.n = this.l; - } - else { - super.c(html); - } - } - i(anchor) { - for (let i = 0; i < this.n.length; i += 1) { - insert_hydration(this.t, this.n[i], anchor); - } - } -} -function attribute_to_object(attributes) { - const result = {}; - for (const attribute of attributes) { - result[attribute.name] = attribute.value; - } - return result; -} -function get_custom_elements_slots(element) { - const result = {}; - element.childNodes.forEach((node) => { - result[node.slot || 'default'] = true; - }); - return result; -} - -// we need to store the information for multiple documents because a Svelte application could also contain iframes -// https://github.com/sveltejs/svelte/issues/3624 -const managed_styles = new Map(); -let active = 0; -// https://github.com/darkskyapp/string-hash/blob/master/index.js -function hash(str) { - let hash = 5381; - let i = str.length; - while (i--) - hash = ((hash << 5) - hash) ^ str.charCodeAt(i); - return hash >>> 0; -} -function create_style_information(doc, node) { - const info = { stylesheet: append_empty_stylesheet(node), rules: {} }; - managed_styles.set(doc, info); - return info; -} -function create_rule(node, a, b, duration, delay, ease, fn, uid = 0) { - const step = 16.666 / duration; - let keyframes = '{\n'; - for (let p = 0; p <= 1; p += step) { - const t = a + (b - a) * ease(p); - keyframes += p * 100 + `%{${fn(t, 1 - t)}}\n`; - } - const rule = keyframes + `100% {${fn(b, 1 - b)}}\n}`; - const name = `__svelte_${hash(rule)}_${uid}`; - const doc = get_root_for_style(node); - const { stylesheet, rules } = managed_styles.get(doc) || create_style_information(doc, node); - if (!rules[name]) { - rules[name] = true; - stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length); - } - const animation = node.style.animation || ''; - node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`; - active += 1; - return name; -} -function delete_rule(node, name) { - const previous = (node.style.animation || '').split(', '); - const next = previous.filter(name - ? anim => anim.indexOf(name) < 0 // remove specific animation - : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations - ); - const deleted = previous.length - next.length; - if (deleted) { - node.style.animation = next.join(', '); - active -= deleted; - if (!active) - clear_rules(); - } -} -function clear_rules() { - exports.raf(() => { - if (active) - return; - managed_styles.forEach(info => { - const { stylesheet } = info; - let i = stylesheet.cssRules.length; - while (i--) - stylesheet.deleteRule(i); - info.rules = {}; - }); - managed_styles.clear(); - }); -} - -function create_animation(node, from, fn, params) { - if (!from) - return noop; - const to = node.getBoundingClientRect(); - if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom) - return noop; - const { delay = 0, duration = 300, easing = identity, - // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation? - start: start_time = exports.now() + delay, - // @ts-ignore todo: - end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params); - let running = true; - let started = false; - let name; - function start() { - if (css) { - name = create_rule(node, 0, 1, duration, delay, easing, css); - } - if (!delay) { - started = true; - } - } - function stop() { - if (css) - delete_rule(node, name); - running = false; - } - loop(now => { - if (!started && now >= start_time) { - started = true; - } - if (started && now >= end) { - tick(1, 0); - stop(); - } - if (!running) { - return false; - } - if (started) { - const p = now - start_time; - const t = 0 + 1 * easing(p / duration); - tick(t, 1 - t); - } - return true; - }); - start(); - tick(0, 1); - return stop; -} -function fix_position(node) { - const style = getComputedStyle(node); - if (style.position !== 'absolute' && style.position !== 'fixed') { - const { width, height } = style; - const a = node.getBoundingClientRect(); - node.style.position = 'absolute'; - node.style.width = width; - node.style.height = height; - add_transform(node, a); - } -} -function add_transform(node, a) { - const b = node.getBoundingClientRect(); - if (a.left !== b.left || a.top !== b.top) { - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`; - } -} - -function set_current_component(component) { - exports.current_component = component; -} -function get_current_component() { - if (!exports.current_component) - throw new Error('Function called outside component initialization'); - return exports.current_component; -} -function beforeUpdate(fn) { - get_current_component().$$.before_update.push(fn); -} -function onMount(fn) { - get_current_component().$$.on_mount.push(fn); -} -function afterUpdate(fn) { - get_current_component().$$.after_update.push(fn); -} -function onDestroy(fn) { - get_current_component().$$.on_destroy.push(fn); -} -function createEventDispatcher() { - const component = get_current_component(); - return (type, detail) => { - const callbacks = component.$$.callbacks[type]; - if (callbacks) { - // TODO are there situations where events could be dispatched - // in a server (non-DOM) environment? - const event = custom_event(type, detail); - callbacks.slice().forEach(fn => { - fn.call(component, event); - }); - } - }; -} -function setContext(key, context) { - get_current_component().$$.context.set(key, context); -} -function getContext(key) { - return get_current_component().$$.context.get(key); -} -function getAllContexts() { - return get_current_component().$$.context; -} -function hasContext(key) { - return get_current_component().$$.context.has(key); -} -// TODO figure out if we still want to support -// shorthand events, or if we want to implement -// a real bubbling mechanism -function bubble(component, event) { - const callbacks = component.$$.callbacks[event.type]; - if (callbacks) { - // @ts-ignore - callbacks.slice().forEach(fn => fn.call(this, event)); - } -} - -const dirty_components = []; -const intros = { enabled: false }; -const binding_callbacks = []; -const render_callbacks = []; -const flush_callbacks = []; -const resolved_promise = Promise.resolve(); -let update_scheduled = false; -function schedule_update() { - if (!update_scheduled) { - update_scheduled = true; - resolved_promise.then(flush); - } -} -function tick() { - schedule_update(); - return resolved_promise; -} -function add_render_callback(fn) { - render_callbacks.push(fn); -} -function add_flush_callback(fn) { - flush_callbacks.push(fn); -} -// flush() calls callbacks in this order: -// 1. All beforeUpdate callbacks, in order: parents before children -// 2. All bind:this callbacks, in reverse order: children before parents. -// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT -// for afterUpdates called during the initial onMount, which are called in -// reverse order: children before parents. -// Since callbacks might update component values, which could trigger another -// call to flush(), the following steps guard against this: -// 1. During beforeUpdate, any updated components will be added to the -// dirty_components array and will cause a reentrant call to flush(). Because -// the flush index is kept outside the function, the reentrant call will pick -// up where the earlier call left off and go through all dirty components. The -// current_component value is saved and restored so that the reentrant call will -// not interfere with the "parent" flush() call. -// 2. bind:this callbacks cannot trigger new flush() calls. -// 3. During afterUpdate, any updated components will NOT have their afterUpdate -// callback called a second time; the seen_callbacks set, outside the flush() -// function, guarantees this behavior. -const seen_callbacks = new Set(); -let flushidx = 0; // Do *not* move this inside the flush() function -function flush() { - const saved_component = exports.current_component; - do { - // first, call beforeUpdate functions - // and update components - while (flushidx < dirty_components.length) { - const component = dirty_components[flushidx]; - flushidx++; - set_current_component(component); - update(component.$$); - } - set_current_component(null); - dirty_components.length = 0; - flushidx = 0; - while (binding_callbacks.length) - binding_callbacks.pop()(); - // then, once components are updated, call - // afterUpdate functions. This may cause - // subsequent updates... - for (let i = 0; i < render_callbacks.length; i += 1) { - const callback = render_callbacks[i]; - if (!seen_callbacks.has(callback)) { - // ...so guard against infinite loops - seen_callbacks.add(callback); - callback(); - } - } - render_callbacks.length = 0; - } while (dirty_components.length); - while (flush_callbacks.length) { - flush_callbacks.pop()(); - } - update_scheduled = false; - seen_callbacks.clear(); - set_current_component(saved_component); -} -function update($$) { - if ($$.fragment !== null) { - $$.update(); - run_all($$.before_update); - const dirty = $$.dirty; - $$.dirty = [-1]; - $$.fragment && $$.fragment.p($$.ctx, dirty); - $$.after_update.forEach(add_render_callback); - } -} - -let promise; -function wait() { - if (!promise) { - promise = Promise.resolve(); - promise.then(() => { - promise = null; - }); - } - return promise; -} -function dispatch(node, direction, kind) { - node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`)); -} -const outroing = new Set(); -let outros; -function group_outros() { - outros = { - r: 0, - c: [], - p: outros // parent group - }; -} -function check_outros() { - if (!outros.r) { - run_all(outros.c); - } - outros = outros.p; -} -function transition_in(block, local) { - if (block && block.i) { - outroing.delete(block); - block.i(local); - } -} -function transition_out(block, local, detach, callback) { - if (block && block.o) { - if (outroing.has(block)) - return; - outroing.add(block); - outros.c.push(() => { - outroing.delete(block); - if (callback) { - if (detach) - block.d(1); - callback(); - } - }); - block.o(local); - } -} -const null_transition = { duration: 0 }; -function create_in_transition(node, fn, params) { - let config = fn(node, params); - let running = false; - let animation_name; - let task; - let uid = 0; - function cleanup() { - if (animation_name) - delete_rule(node, animation_name); - } - function go() { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - if (css) - animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++); - tick(0, 1); - const start_time = exports.now() + delay; - const end_time = start_time + duration; - if (task) - task.abort(); - running = true; - add_render_callback(() => dispatch(node, true, 'start')); - task = loop(now => { - if (running) { - if (now >= end_time) { - tick(1, 0); - dispatch(node, true, 'end'); - cleanup(); - return running = false; - } - if (now >= start_time) { - const t = easing((now - start_time) / duration); - tick(t, 1 - t); - } - } - return running; - }); - } - let started = false; - return { - start() { - if (started) - return; - started = true; - delete_rule(node); - if (is_function(config)) { - config = config(); - wait().then(go); - } - else { - go(); - } - }, - invalidate() { - started = false; - }, - end() { - if (running) { - cleanup(); - running = false; - } - } - }; -} -function create_out_transition(node, fn, params) { - let config = fn(node, params); - let running = true; - let animation_name; - const group = outros; - group.r += 1; - function go() { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - if (css) - animation_name = create_rule(node, 1, 0, duration, delay, easing, css); - const start_time = exports.now() + delay; - const end_time = start_time + duration; - add_render_callback(() => dispatch(node, false, 'start')); - loop(now => { - if (running) { - if (now >= end_time) { - tick(0, 1); - dispatch(node, false, 'end'); - if (!--group.r) { - // this will result in `end()` being called, - // so we don't need to clean up here - run_all(group.c); - } - return false; - } - if (now >= start_time) { - const t = easing((now - start_time) / duration); - tick(1 - t, t); - } - } - return running; - }); - } - if (is_function(config)) { - wait().then(() => { - // @ts-ignore - config = config(); - go(); - }); - } - else { - go(); - } - return { - end(reset) { - if (reset && config.tick) { - config.tick(1, 0); - } - if (running) { - if (animation_name) - delete_rule(node, animation_name); - running = false; - } - } - }; -} -function create_bidirectional_transition(node, fn, params, intro) { - let config = fn(node, params); - let t = intro ? 0 : 1; - let running_program = null; - let pending_program = null; - let animation_name = null; - function clear_animation() { - if (animation_name) - delete_rule(node, animation_name); - } - function init(program, duration) { - const d = (program.b - t); - duration *= Math.abs(d); - return { - a: t, - b: program.b, - d, - duration, - start: program.start, - end: program.start + duration, - group: program.group - }; - } - function go(b) { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - const program = { - start: exports.now() + delay, - b - }; - if (!b) { - // @ts-ignore todo: improve typings - program.group = outros; - outros.r += 1; - } - if (running_program || pending_program) { - pending_program = program; - } - else { - // if this is an intro, and there's a delay, we need to do - // an initial tick and/or apply CSS animation immediately - if (css) { - clear_animation(); - animation_name = create_rule(node, t, b, duration, delay, easing, css); - } - if (b) - tick(0, 1); - running_program = init(program, duration); - add_render_callback(() => dispatch(node, b, 'start')); - loop(now => { - if (pending_program && now > pending_program.start) { - running_program = init(pending_program, duration); - pending_program = null; - dispatch(node, running_program.b, 'start'); - if (css) { - clear_animation(); - animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css); - } - } - if (running_program) { - if (now >= running_program.end) { - tick(t = running_program.b, 1 - t); - dispatch(node, running_program.b, 'end'); - if (!pending_program) { - // we're done - if (running_program.b) { - // intro — we can tidy up immediately - clear_animation(); - } - else { - // outro — needs to be coordinated - if (!--running_program.group.r) - run_all(running_program.group.c); - } - } - running_program = null; - } - else if (now >= running_program.start) { - const p = now - running_program.start; - t = running_program.a + running_program.d * easing(p / running_program.duration); - tick(t, 1 - t); - } - } - return !!(running_program || pending_program); - }); - } - } - return { - run(b) { - if (is_function(config)) { - wait().then(() => { - // @ts-ignore - config = config(); - go(b); - }); - } - else { - go(b); - } - }, - end() { - clear_animation(); - running_program = pending_program = null; - } - }; -} - -function handle_promise(promise, info) { - const token = info.token = {}; - function update(type, index, key, value) { - if (info.token !== token) - return; - info.resolved = value; - let child_ctx = info.ctx; - if (key !== undefined) { - child_ctx = child_ctx.slice(); - child_ctx[key] = value; - } - const block = type && (info.current = type)(child_ctx); - let needs_flush = false; - if (info.block) { - if (info.blocks) { - info.blocks.forEach((block, i) => { - if (i !== index && block) { - group_outros(); - transition_out(block, 1, 1, () => { - if (info.blocks[i] === block) { - info.blocks[i] = null; - } - }); - check_outros(); - } - }); - } - else { - info.block.d(1); - } - block.c(); - transition_in(block, 1); - block.m(info.mount(), info.anchor); - needs_flush = true; - } - info.block = block; - if (info.blocks) - info.blocks[index] = block; - if (needs_flush) { - flush(); - } - } - if (is_promise(promise)) { - const current_component = get_current_component(); - promise.then(value => { - set_current_component(current_component); - update(info.then, 1, info.value, value); - set_current_component(null); - }, error => { - set_current_component(current_component); - update(info.catch, 2, info.error, error); - set_current_component(null); - if (!info.hasCatch) { - throw error; - } - }); - // if we previously had a then/catch block, destroy it - if (info.current !== info.pending) { - update(info.pending, 0); - return true; - } - } - else { - if (info.current !== info.then) { - update(info.then, 1, info.value, promise); - return true; - } - info.resolved = promise; - } -} -function update_await_block_branch(info, ctx, dirty) { - const child_ctx = ctx.slice(); - const { resolved } = info; - if (info.current === info.then) { - child_ctx[info.value] = resolved; - } - if (info.current === info.catch) { - child_ctx[info.error] = resolved; - } - info.block.p(child_ctx, dirty); -} - -const globals = (typeof window !== 'undefined' - ? window - : typeof globalThis !== 'undefined' - ? globalThis - : global); - -function destroy_block(block, lookup) { - block.d(1); - lookup.delete(block.key); -} -function outro_and_destroy_block(block, lookup) { - transition_out(block, 1, 1, () => { - lookup.delete(block.key); - }); -} -function fix_and_destroy_block(block, lookup) { - block.f(); - destroy_block(block, lookup); -} -function fix_and_outro_and_destroy_block(block, lookup) { - block.f(); - outro_and_destroy_block(block, lookup); -} -function update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) { - let o = old_blocks.length; - let n = list.length; - let i = o; - const old_indexes = {}; - while (i--) - old_indexes[old_blocks[i].key] = i; - const new_blocks = []; - const new_lookup = new Map(); - const deltas = new Map(); - i = n; - while (i--) { - const child_ctx = get_context(ctx, list, i); - const key = get_key(child_ctx); - let block = lookup.get(key); - if (!block) { - block = create_each_block(key, child_ctx); - block.c(); - } - else if (dynamic) { - block.p(child_ctx, dirty); - } - new_lookup.set(key, new_blocks[i] = block); - if (key in old_indexes) - deltas.set(key, Math.abs(i - old_indexes[key])); - } - const will_move = new Set(); - const did_move = new Set(); - function insert(block) { - transition_in(block, 1); - block.m(node, next); - lookup.set(block.key, block); - next = block.first; - n--; - } - while (o && n) { - const new_block = new_blocks[n - 1]; - const old_block = old_blocks[o - 1]; - const new_key = new_block.key; - const old_key = old_block.key; - if (new_block === old_block) { - // do nothing - next = new_block.first; - o--; - n--; - } - else if (!new_lookup.has(old_key)) { - // remove old block - destroy(old_block, lookup); - o--; - } - else if (!lookup.has(new_key) || will_move.has(new_key)) { - insert(new_block); - } - else if (did_move.has(old_key)) { - o--; - } - else if (deltas.get(new_key) > deltas.get(old_key)) { - did_move.add(new_key); - insert(new_block); - } - else { - will_move.add(old_key); - o--; - } - } - while (o--) { - const old_block = old_blocks[o]; - if (!new_lookup.has(old_block.key)) - destroy(old_block, lookup); - } - while (n) - insert(new_blocks[n - 1]); - return new_blocks; -} -function validate_each_keys(ctx, list, get_context, get_key) { - const keys = new Set(); - for (let i = 0; i < list.length; i++) { - const key = get_key(get_context(ctx, list, i)); - if (keys.has(key)) { - throw new Error('Cannot have duplicate keys in a keyed each'); - } - keys.add(key); - } -} - -function get_spread_update(levels, updates) { - const update = {}; - const to_null_out = {}; - const accounted_for = { $$scope: 1 }; - let i = levels.length; - while (i--) { - const o = levels[i]; - const n = updates[i]; - if (n) { - for (const key in o) { - if (!(key in n)) - to_null_out[key] = 1; - } - for (const key in n) { - if (!accounted_for[key]) { - update[key] = n[key]; - accounted_for[key] = 1; - } - } - levels[i] = n; - } - else { - for (const key in o) { - accounted_for[key] = 1; - } - } - } - for (const key in to_null_out) { - if (!(key in update)) - update[key] = undefined; - } - return update; -} -function get_spread_object(spread_props) { - return typeof spread_props === 'object' && spread_props !== null ? spread_props : {}; -} - -// source: https://html.spec.whatwg.org/multipage/indices.html -const boolean_attributes = new Set([ - 'allowfullscreen', - 'allowpaymentrequest', - 'async', - 'autofocus', - 'autoplay', - 'checked', - 'controls', - 'default', - 'defer', - 'disabled', - 'formnovalidate', - 'hidden', - 'ismap', - 'loop', - 'multiple', - 'muted', - 'nomodule', - 'novalidate', - 'open', - 'playsinline', - 'readonly', - 'required', - 'reversed', - 'selected' -]); - -const invalid_attribute_name_character = /[\s'">/=\u{FDD0}-\u{FDEF}\u{FFFE}\u{FFFF}\u{1FFFE}\u{1FFFF}\u{2FFFE}\u{2FFFF}\u{3FFFE}\u{3FFFF}\u{4FFFE}\u{4FFFF}\u{5FFFE}\u{5FFFF}\u{6FFFE}\u{6FFFF}\u{7FFFE}\u{7FFFF}\u{8FFFE}\u{8FFFF}\u{9FFFE}\u{9FFFF}\u{AFFFE}\u{AFFFF}\u{BFFFE}\u{BFFFF}\u{CFFFE}\u{CFFFF}\u{DFFFE}\u{DFFFF}\u{EFFFE}\u{EFFFF}\u{FFFFE}\u{FFFFF}\u{10FFFE}\u{10FFFF}]/u; -// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 -// https://infra.spec.whatwg.org/#noncharacter -function spread(args, attrs_to_add) { - const attributes = Object.assign({}, ...args); - if (attrs_to_add) { - const classes_to_add = attrs_to_add.classes; - const styles_to_add = attrs_to_add.styles; - if (classes_to_add) { - if (attributes.class == null) { - attributes.class = classes_to_add; - } - else { - attributes.class += ' ' + classes_to_add; - } - } - if (styles_to_add) { - if (attributes.style == null) { - attributes.style = style_object_to_string(styles_to_add); - } - else { - attributes.style = style_object_to_string(merge_ssr_styles(attributes.style, styles_to_add)); - } - } - } - let str = ''; - Object.keys(attributes).forEach(name => { - if (invalid_attribute_name_character.test(name)) - return; - const value = attributes[name]; - if (value === true) - str += ' ' + name; - else if (boolean_attributes.has(name.toLowerCase())) { - if (value) - str += ' ' + name; - } - else if (value != null) { - str += ` ${name}="${value}"`; - } - }); - return str; -} -function merge_ssr_styles(style_attribute, style_directive) { - const style_object = {}; - for (const individual_style of style_attribute.split(';')) { - const colon_index = individual_style.indexOf(':'); - const name = individual_style.slice(0, colon_index).trim(); - const value = individual_style.slice(colon_index + 1).trim(); - if (!name) - continue; - style_object[name] = value; - } - for (const name in style_directive) { - const value = style_directive[name]; - if (value) { - style_object[name] = value; - } - else { - delete style_object[name]; - } - } - return style_object; -} -const escaped = { - '"': '"', - "'": ''', - '&': '&', - '<': '<', - '>': '>' -}; -function escape(html) { - return String(html).replace(/["'&<>]/g, match => escaped[match]); -} -function escape_attribute_value(value) { - return typeof value === 'string' ? escape(value) : value; -} -function escape_object(obj) { - const result = {}; - for (const key in obj) { - result[key] = escape_attribute_value(obj[key]); - } - return result; -} -function each(items, fn) { - let str = ''; - for (let i = 0; i < items.length; i += 1) { - str += fn(items[i], i); - } - return str; -} -const missing_component = { - $$render: () => '' -}; -function validate_component(component, name) { - if (!component || !component.$$render) { - if (name === 'svelte:component') - name += ' this={...}'; - throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`); - } - return component; -} -function debug(file, line, column, values) { - console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console - console.log(values); // eslint-disable-line no-console - return ''; -} -let on_destroy; -function create_ssr_component(fn) { - function $$render(result, props, bindings, slots, context) { - const parent_component = exports.current_component; - const $$ = { - on_destroy, - context: new Map(context || (parent_component ? parent_component.$$.context : [])), - // these will be immediately discarded - on_mount: [], - before_update: [], - after_update: [], - callbacks: blank_object() - }; - set_current_component({ $$ }); - const html = fn(result, props, bindings, slots); - set_current_component(parent_component); - return html; - } - return { - render: (props = {}, { $$slots = {}, context = new Map() } = {}) => { - on_destroy = []; - const result = { title: '', head: '', css: new Set() }; - const html = $$render(result, props, {}, $$slots, context); - run_all(on_destroy); - return { - html, - css: { - code: Array.from(result.css).map(css => css.code).join('\n'), - map: null // TODO - }, - head: result.title + result.head - }; - }, - $$render - }; -} -function add_attribute(name, value, boolean) { - if (value == null || (boolean && !value)) - return ''; - return ` ${name}${value === true && boolean_attributes.has(name) ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `"${value}"`}`}`; -} -function add_classes(classes) { - return classes ? ` class="${classes}"` : ''; -} -function style_object_to_string(style_object) { - return Object.keys(style_object) - .filter(key => style_object[key]) - .map(key => `${key}: ${style_object[key]};`) - .join(' '); -} -function add_styles(style_object) { - const styles = style_object_to_string(style_object); - return styles ? ` style="${styles}"` : ''; -} - -function bind(component, name, callback) { - const index = component.$$.props[name]; - if (index !== undefined) { - component.$$.bound[index] = callback; - callback(component.$$.ctx[index]); - } -} -function create_component(block) { - block && block.c(); -} -function claim_component(block, parent_nodes) { - block && block.l(parent_nodes); -} -function mount_component(component, target, anchor, customElement) { - const { fragment, on_mount, on_destroy, after_update } = component.$$; - fragment && fragment.m(target, anchor); - if (!customElement) { - // onMount happens before the initial afterUpdate - add_render_callback(() => { - const new_on_destroy = on_mount.map(run).filter(is_function); - if (on_destroy) { - on_destroy.push(...new_on_destroy); - } - else { - // Edge case - component was destroyed immediately, - // most likely as a result of a binding initialising - run_all(new_on_destroy); - } - component.$$.on_mount = []; - }); - } - after_update.forEach(add_render_callback); -} -function destroy_component(component, detaching) { - const $$ = component.$$; - if ($$.fragment !== null) { - run_all($$.on_destroy); - $$.fragment && $$.fragment.d(detaching); - // TODO null out other refs, including component.$$ (but need to - // preserve final state?) - $$.on_destroy = $$.fragment = null; - $$.ctx = []; - } -} -function make_dirty(component, i) { - if (component.$$.dirty[0] === -1) { - dirty_components.push(component); - schedule_update(); - component.$$.dirty.fill(0); - } - component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31)); -} -function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) { - const parent_component = exports.current_component; - set_current_component(component); - const $$ = component.$$ = { - fragment: null, - ctx: null, - // state - props, - update: noop, - not_equal, - bound: blank_object(), - // lifecycle - on_mount: [], - on_destroy: [], - on_disconnect: [], - before_update: [], - after_update: [], - context: new Map(options.context || (parent_component ? parent_component.$$.context : [])), - // everything else - callbacks: blank_object(), - dirty, - skip_bound: false, - root: options.target || parent_component.$$.root - }; - append_styles && append_styles($$.root); - let ready = false; - $$.ctx = instance - ? instance(component, options.props || {}, (i, ret, ...rest) => { - const value = rest.length ? rest[0] : ret; - if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) { - if (!$$.skip_bound && $$.bound[i]) - $$.bound[i](value); - if (ready) - make_dirty(component, i); - } - return ret; - }) - : []; - $$.update(); - ready = true; - run_all($$.before_update); - // `false` as a special case of no DOM component - $$.fragment = create_fragment ? create_fragment($$.ctx) : false; - if (options.target) { - if (options.hydrate) { - start_hydrating(); - const nodes = children(options.target); - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.l(nodes); - nodes.forEach(detach); - } - else { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.c(); - } - if (options.intro) - transition_in(component.$$.fragment); - mount_component(component, options.target, options.anchor, options.customElement); - end_hydrating(); - flush(); - } - set_current_component(parent_component); -} -if (typeof HTMLElement === 'function') { - exports.SvelteElement = class extends HTMLElement { - constructor() { - super(); - this.attachShadow({ mode: 'open' }); - } - connectedCallback() { - const { on_mount } = this.$$; - this.$$.on_disconnect = on_mount.map(run).filter(is_function); - // @ts-ignore todo: improve typings - for (const key in this.$$.slotted) { - // @ts-ignore todo: improve typings - this.appendChild(this.$$.slotted[key]); - } - } - attributeChangedCallback(attr, _oldValue, newValue) { - this[attr] = newValue; - } - disconnectedCallback() { - run_all(this.$$.on_disconnect); - } - $destroy() { - destroy_component(this, 1); - this.$destroy = noop; - } - $on(type, callback) { - // TODO should this delegate to addEventListener? - const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = [])); - callbacks.push(callback); - return () => { - const index = callbacks.indexOf(callback); - if (index !== -1) - callbacks.splice(index, 1); - }; - } - $set($$props) { - if (this.$$set && !is_empty($$props)) { - this.$$.skip_bound = true; - this.$$set($$props); - this.$$.skip_bound = false; - } - } - }; -} -/** - * Base class for Svelte components. Used when dev=false. - */ -class SvelteComponent { - $destroy() { - destroy_component(this, 1); - this.$destroy = noop; - } - $on(type, callback) { - const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = [])); - callbacks.push(callback); - return () => { - const index = callbacks.indexOf(callback); - if (index !== -1) - callbacks.splice(index, 1); - }; - } - $set($$props) { - if (this.$$set && !is_empty($$props)) { - this.$$.skip_bound = true; - this.$$set($$props); - this.$$.skip_bound = false; - } - } -} - -function dispatch_dev(type, detail) { - document.dispatchEvent(custom_event(type, Object.assign({ version: '3.46.2' }, detail), true)); -} -function append_dev(target, node) { - dispatch_dev('SvelteDOMInsert', { target, node }); - append(target, node); -} -function append_hydration_dev(target, node) { - dispatch_dev('SvelteDOMInsert', { target, node }); - append_hydration(target, node); -} -function insert_dev(target, node, anchor) { - dispatch_dev('SvelteDOMInsert', { target, node, anchor }); - insert(target, node, anchor); -} -function insert_hydration_dev(target, node, anchor) { - dispatch_dev('SvelteDOMInsert', { target, node, anchor }); - insert_hydration(target, node, anchor); -} -function detach_dev(node) { - dispatch_dev('SvelteDOMRemove', { node }); - detach(node); -} -function detach_between_dev(before, after) { - while (before.nextSibling && before.nextSibling !== after) { - detach_dev(before.nextSibling); - } -} -function detach_before_dev(after) { - while (after.previousSibling) { - detach_dev(after.previousSibling); - } -} -function detach_after_dev(before) { - while (before.nextSibling) { - detach_dev(before.nextSibling); - } -} -function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) { - const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : []; - if (has_prevent_default) - modifiers.push('preventDefault'); - if (has_stop_propagation) - modifiers.push('stopPropagation'); - dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers }); - const dispose = listen(node, event, handler, options); - return () => { - dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers }); - dispose(); - }; -} -function attr_dev(node, attribute, value) { - attr(node, attribute, value); - if (value == null) - dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute }); - else - dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value }); -} -function prop_dev(node, property, value) { - node[property] = value; - dispatch_dev('SvelteDOMSetProperty', { node, property, value }); -} -function dataset_dev(node, property, value) { - node.dataset[property] = value; - dispatch_dev('SvelteDOMSetDataset', { node, property, value }); -} -function set_data_dev(text, data) { - data = '' + data; - if (text.wholeText === data) - return; - dispatch_dev('SvelteDOMSetData', { node: text, data }); - text.data = data; -} -function validate_each_argument(arg) { - if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) { - let msg = '{#each} only iterates over array-like objects.'; - if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) { - msg += ' You can use a spread to convert this iterable into an array.'; - } - throw new Error(msg); - } -} -function validate_slots(name, slot, keys) { - for (const slot_key of Object.keys(slot)) { - if (!~keys.indexOf(slot_key)) { - console.warn(`<${name}> received an unexpected slot "${slot_key}".`); - } - } -} -/** - * Base class for Svelte components with some minor dev-enhancements. Used when dev=true. - */ -class SvelteComponentDev extends SvelteComponent { - constructor(options) { - if (!options || (!options.target && !options.$$inline)) { - throw new Error("'target' is a required option"); - } - super(); - } - $destroy() { - super.$destroy(); - this.$destroy = () => { - console.warn('Component was already destroyed'); // eslint-disable-line no-console - }; - } - $capture_state() { } - $inject_state() { } -} -/** - * Base class to create strongly typed Svelte components. - * This only exists for typing purposes and should be used in `.d.ts` files. - * - * ### Example: - * - * You have component library on npm called `component-library`, from which - * you export a component called `MyComponent`. For Svelte+TypeScript users, - * you want to provide typings. Therefore you create a `index.d.ts`: - * ```ts - * import { SvelteComponentTyped } from "svelte"; - * export class MyComponent extends SvelteComponentTyped<{foo: string}> {} - * ``` - * Typing this makes it possible for IDEs like VS Code with the Svelte extension - * to provide intellisense and to use the component like this in a Svelte file - * with TypeScript: - * ```svelte - * - * - * ``` - * - * #### Why not make this part of `SvelteComponent(Dev)`? - * Because - * ```ts - * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {} - * const component: typeof SvelteComponent = ASubclassOfSvelteComponent; - * ``` - * will throw a type error, so we need to separate the more strictly typed class. - */ -class SvelteComponentTyped extends SvelteComponentDev { - constructor(options) { - super(options); - } -} -function loop_guard(timeout) { - const start = Date.now(); - return () => { - if (Date.now() - start > timeout) { - throw new Error('Infinite loop detected'); - } - }; -} - -exports.HtmlTag = HtmlTag; -exports.HtmlTagHydration = HtmlTagHydration; -exports.SvelteComponent = SvelteComponent; -exports.SvelteComponentDev = SvelteComponentDev; -exports.SvelteComponentTyped = SvelteComponentTyped; -exports.action_destroyer = action_destroyer; -exports.add_attribute = add_attribute; -exports.add_classes = add_classes; -exports.add_flush_callback = add_flush_callback; -exports.add_location = add_location; -exports.add_render_callback = add_render_callback; -exports.add_resize_listener = add_resize_listener; -exports.add_styles = add_styles; -exports.add_transform = add_transform; -exports.afterUpdate = afterUpdate; -exports.append = append; -exports.append_dev = append_dev; -exports.append_empty_stylesheet = append_empty_stylesheet; -exports.append_hydration = append_hydration; -exports.append_hydration_dev = append_hydration_dev; -exports.append_styles = append_styles; -exports.assign = assign; -exports.attr = attr; -exports.attr_dev = attr_dev; -exports.attribute_to_object = attribute_to_object; -exports.beforeUpdate = beforeUpdate; -exports.bind = bind; -exports.binding_callbacks = binding_callbacks; -exports.blank_object = blank_object; -exports.bubble = bubble; -exports.check_outros = check_outros; -exports.children = children; -exports.claim_component = claim_component; -exports.claim_element = claim_element; -exports.claim_html_tag = claim_html_tag; -exports.claim_space = claim_space; -exports.claim_svg_element = claim_svg_element; -exports.claim_text = claim_text; -exports.clear_loops = clear_loops; -exports.component_subscribe = component_subscribe; -exports.compute_rest_props = compute_rest_props; -exports.compute_slots = compute_slots; -exports.createEventDispatcher = createEventDispatcher; -exports.create_animation = create_animation; -exports.create_bidirectional_transition = create_bidirectional_transition; -exports.create_component = create_component; -exports.create_in_transition = create_in_transition; -exports.create_out_transition = create_out_transition; -exports.create_slot = create_slot; -exports.create_ssr_component = create_ssr_component; -exports.custom_event = custom_event; -exports.dataset_dev = dataset_dev; -exports.debug = debug; -exports.destroy_block = destroy_block; -exports.destroy_component = destroy_component; -exports.destroy_each = destroy_each; -exports.detach = detach; -exports.detach_after_dev = detach_after_dev; -exports.detach_before_dev = detach_before_dev; -exports.detach_between_dev = detach_between_dev; -exports.detach_dev = detach_dev; -exports.dirty_components = dirty_components; -exports.dispatch_dev = dispatch_dev; -exports.each = each; -exports.element = element; -exports.element_is = element_is; -exports.empty = empty; -exports.end_hydrating = end_hydrating; -exports.escape = escape; -exports.escape_attribute_value = escape_attribute_value; -exports.escape_object = escape_object; -exports.escaped = escaped; -exports.exclude_internal_props = exclude_internal_props; -exports.fix_and_destroy_block = fix_and_destroy_block; -exports.fix_and_outro_and_destroy_block = fix_and_outro_and_destroy_block; -exports.fix_position = fix_position; -exports.flush = flush; -exports.getAllContexts = getAllContexts; -exports.getContext = getContext; -exports.get_all_dirty_from_scope = get_all_dirty_from_scope; -exports.get_binding_group_value = get_binding_group_value; -exports.get_current_component = get_current_component; -exports.get_custom_elements_slots = get_custom_elements_slots; -exports.get_root_for_style = get_root_for_style; -exports.get_slot_changes = get_slot_changes; -exports.get_spread_object = get_spread_object; -exports.get_spread_update = get_spread_update; -exports.get_store_value = get_store_value; -exports.globals = globals; -exports.group_outros = group_outros; -exports.handle_promise = handle_promise; -exports.hasContext = hasContext; -exports.has_prop = has_prop; -exports.identity = identity; -exports.init = init; -exports.insert = insert; -exports.insert_dev = insert_dev; -exports.insert_hydration = insert_hydration; -exports.insert_hydration_dev = insert_hydration_dev; -exports.intros = intros; -exports.invalid_attribute_name_character = invalid_attribute_name_character; -exports.is_client = is_client; -exports.is_crossorigin = is_crossorigin; -exports.is_empty = is_empty; -exports.is_function = is_function; -exports.is_promise = is_promise; -exports.listen = listen; -exports.listen_dev = listen_dev; -exports.loop = loop; -exports.loop_guard = loop_guard; -exports.merge_ssr_styles = merge_ssr_styles; -exports.missing_component = missing_component; -exports.mount_component = mount_component; -exports.noop = noop; -exports.not_equal = not_equal; -exports.null_to_empty = null_to_empty; -exports.object_without_properties = object_without_properties; -exports.onDestroy = onDestroy; -exports.onMount = onMount; -exports.once = once; -exports.outro_and_destroy_block = outro_and_destroy_block; -exports.prevent_default = prevent_default; -exports.prop_dev = prop_dev; -exports.query_selector_all = query_selector_all; -exports.run = run; -exports.run_all = run_all; -exports.safe_not_equal = safe_not_equal; -exports.schedule_update = schedule_update; -exports.select_multiple_value = select_multiple_value; -exports.select_option = select_option; -exports.select_options = select_options; -exports.select_value = select_value; -exports.self = self; -exports.setContext = setContext; -exports.set_attributes = set_attributes; -exports.set_current_component = set_current_component; -exports.set_custom_element_data = set_custom_element_data; -exports.set_data = set_data; -exports.set_data_dev = set_data_dev; -exports.set_input_type = set_input_type; -exports.set_input_value = set_input_value; -exports.set_now = set_now; -exports.set_raf = set_raf; -exports.set_store_value = set_store_value; -exports.set_style = set_style; -exports.set_svg_attributes = set_svg_attributes; -exports.space = space; -exports.spread = spread; -exports.src_url_equal = src_url_equal; -exports.start_hydrating = start_hydrating; -exports.stop_propagation = stop_propagation; -exports.subscribe = subscribe; -exports.svg_element = svg_element; -exports.text = text; -exports.tick = tick; -exports.time_ranges_to_array = time_ranges_to_array; -exports.to_number = to_number; -exports.toggle_class = toggle_class; -exports.transition_in = transition_in; -exports.transition_out = transition_out; -exports.trusted = trusted; -exports.update_await_block_branch = update_await_block_branch; -exports.update_keyed_each = update_keyed_each; -exports.update_slot = update_slot; -exports.update_slot_base = update_slot_base; -exports.validate_component = validate_component; -exports.validate_each_argument = validate_each_argument; -exports.validate_each_keys = validate_each_keys; -exports.validate_slots = validate_slots; -exports.validate_store = validate_store; -exports.xlink_attr = xlink_attr; diff --git a/packages/frontend-core/node_modules/svelte/internal/index.mjs b/packages/frontend-core/node_modules/svelte/internal/index.mjs deleted file mode 100644 index 433e8cc020..0000000000 --- a/packages/frontend-core/node_modules/svelte/internal/index.mjs +++ /dev/null @@ -1,2122 +0,0 @@ -function noop() { } -const identity = x => x; -function assign(tar, src) { - // @ts-ignore - for (const k in src) - tar[k] = src[k]; - return tar; -} -function is_promise(value) { - return value && typeof value === 'object' && typeof value.then === 'function'; -} -function add_location(element, file, line, column, char) { - element.__svelte_meta = { - loc: { file, line, column, char } - }; -} -function run(fn) { - return fn(); -} -function blank_object() { - return Object.create(null); -} -function run_all(fns) { - fns.forEach(run); -} -function is_function(thing) { - return typeof thing === 'function'; -} -function safe_not_equal(a, b) { - return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function'); -} -let src_url_equal_anchor; -function src_url_equal(element_src, url) { - if (!src_url_equal_anchor) { - src_url_equal_anchor = document.createElement('a'); - } - src_url_equal_anchor.href = url; - return element_src === src_url_equal_anchor.href; -} -function not_equal(a, b) { - return a != a ? b == b : a !== b; -} -function is_empty(obj) { - return Object.keys(obj).length === 0; -} -function validate_store(store, name) { - if (store != null && typeof store.subscribe !== 'function') { - throw new Error(`'${name}' is not a store with a 'subscribe' method`); - } -} -function subscribe(store, ...callbacks) { - if (store == null) { - return noop; - } - const unsub = store.subscribe(...callbacks); - return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub; -} -function get_store_value(store) { - let value; - subscribe(store, _ => value = _)(); - return value; -} -function component_subscribe(component, store, callback) { - component.$$.on_destroy.push(subscribe(store, callback)); -} -function create_slot(definition, ctx, $$scope, fn) { - if (definition) { - const slot_ctx = get_slot_context(definition, ctx, $$scope, fn); - return definition[0](slot_ctx); - } -} -function get_slot_context(definition, ctx, $$scope, fn) { - return definition[1] && fn - ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) - : $$scope.ctx; -} -function get_slot_changes(definition, $$scope, dirty, fn) { - if (definition[2] && fn) { - const lets = definition[2](fn(dirty)); - if ($$scope.dirty === undefined) { - return lets; - } - if (typeof lets === 'object') { - const merged = []; - const len = Math.max($$scope.dirty.length, lets.length); - for (let i = 0; i < len; i += 1) { - merged[i] = $$scope.dirty[i] | lets[i]; - } - return merged; - } - return $$scope.dirty | lets; - } - return $$scope.dirty; -} -function update_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn) { - if (slot_changes) { - const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn); - slot.p(slot_context, slot_changes); - } -} -function update_slot(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_context_fn) { - const slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn); - update_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn); -} -function get_all_dirty_from_scope($$scope) { - if ($$scope.ctx.length > 32) { - const dirty = []; - const length = $$scope.ctx.length / 32; - for (let i = 0; i < length; i++) { - dirty[i] = -1; - } - return dirty; - } - return -1; -} -function exclude_internal_props(props) { - const result = {}; - for (const k in props) - if (k[0] !== '$') - result[k] = props[k]; - return result; -} -function compute_rest_props(props, keys) { - const rest = {}; - keys = new Set(keys); - for (const k in props) - if (!keys.has(k) && k[0] !== '$') - rest[k] = props[k]; - return rest; -} -function compute_slots(slots) { - const result = {}; - for (const key in slots) { - result[key] = true; - } - return result; -} -function once(fn) { - let ran = false; - return function (...args) { - if (ran) - return; - ran = true; - fn.call(this, ...args); - }; -} -function null_to_empty(value) { - return value == null ? '' : value; -} -function set_store_value(store, ret, value) { - store.set(value); - return ret; -} -const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop); -function action_destroyer(action_result) { - return action_result && is_function(action_result.destroy) ? action_result.destroy : noop; -} - -const is_client = typeof window !== 'undefined'; -let now = is_client - ? () => window.performance.now() - : () => Date.now(); -let raf = is_client ? cb => requestAnimationFrame(cb) : noop; -// used internally for testing -function set_now(fn) { - now = fn; -} -function set_raf(fn) { - raf = fn; -} - -const tasks = new Set(); -function run_tasks(now) { - tasks.forEach(task => { - if (!task.c(now)) { - tasks.delete(task); - task.f(); - } - }); - if (tasks.size !== 0) - raf(run_tasks); -} -/** - * For testing purposes only! - */ -function clear_loops() { - tasks.clear(); -} -/** - * Creates a new task that runs on each raf frame - * until it returns a falsy value or is aborted - */ -function loop(callback) { - let task; - if (tasks.size === 0) - raf(run_tasks); - return { - promise: new Promise(fulfill => { - tasks.add(task = { c: callback, f: fulfill }); - }), - abort() { - tasks.delete(task); - } - }; -} - -// Track which nodes are claimed during hydration. Unclaimed nodes can then be removed from the DOM -// at the end of hydration without touching the remaining nodes. -let is_hydrating = false; -function start_hydrating() { - is_hydrating = true; -} -function end_hydrating() { - is_hydrating = false; -} -function upper_bound(low, high, key, value) { - // Return first index of value larger than input value in the range [low, high) - while (low < high) { - const mid = low + ((high - low) >> 1); - if (key(mid) <= value) { - low = mid + 1; - } - else { - high = mid; - } - } - return low; -} -function init_hydrate(target) { - if (target.hydrate_init) - return; - target.hydrate_init = true; - // We know that all children have claim_order values since the unclaimed have been detached if target is not - let children = target.childNodes; - // If target is , there may be children without claim_order - if (target.nodeName === 'HEAD') { - const myChildren = []; - for (let i = 0; i < children.length; i++) { - const node = children[i]; - if (node.claim_order !== undefined) { - myChildren.push(node); - } - } - children = myChildren; - } - /* - * Reorder claimed children optimally. - * We can reorder claimed children optimally by finding the longest subsequence of - * nodes that are already claimed in order and only moving the rest. The longest - * subsequence subsequence of nodes that are claimed in order can be found by - * computing the longest increasing subsequence of .claim_order values. - * - * This algorithm is optimal in generating the least amount of reorder operations - * possible. - * - * Proof: - * We know that, given a set of reordering operations, the nodes that do not move - * always form an increasing subsequence, since they do not move among each other - * meaning that they must be already ordered among each other. Thus, the maximal - * set of nodes that do not move form a longest increasing subsequence. - */ - // Compute longest increasing subsequence - // m: subsequence length j => index k of smallest value that ends an increasing subsequence of length j - const m = new Int32Array(children.length + 1); - // Predecessor indices + 1 - const p = new Int32Array(children.length); - m[0] = -1; - let longest = 0; - for (let i = 0; i < children.length; i++) { - const current = children[i].claim_order; - // Find the largest subsequence length such that it ends in a value less than our current value - // upper_bound returns first greater value, so we subtract one - // with fast path for when we are on the current longest subsequence - const seqLen = ((longest > 0 && children[m[longest]].claim_order <= current) ? longest + 1 : upper_bound(1, longest, idx => children[m[idx]].claim_order, current)) - 1; - p[i] = m[seqLen] + 1; - const newLen = seqLen + 1; - // We can guarantee that current is the smallest value. Otherwise, we would have generated a longer sequence. - m[newLen] = i; - longest = Math.max(newLen, longest); - } - // The longest increasing subsequence of nodes (initially reversed) - const lis = []; - // The rest of the nodes, nodes that will be moved - const toMove = []; - let last = children.length - 1; - for (let cur = m[longest] + 1; cur != 0; cur = p[cur - 1]) { - lis.push(children[cur - 1]); - for (; last >= cur; last--) { - toMove.push(children[last]); - } - last--; - } - for (; last >= 0; last--) { - toMove.push(children[last]); - } - lis.reverse(); - // We sort the nodes being moved to guarantee that their insertion order matches the claim order - toMove.sort((a, b) => a.claim_order - b.claim_order); - // Finally, we move the nodes - for (let i = 0, j = 0; i < toMove.length; i++) { - while (j < lis.length && toMove[i].claim_order >= lis[j].claim_order) { - j++; - } - const anchor = j < lis.length ? lis[j] : null; - target.insertBefore(toMove[i], anchor); - } -} -function append(target, node) { - target.appendChild(node); -} -function append_styles(target, style_sheet_id, styles) { - const append_styles_to = get_root_for_style(target); - if (!append_styles_to.getElementById(style_sheet_id)) { - const style = element('style'); - style.id = style_sheet_id; - style.textContent = styles; - append_stylesheet(append_styles_to, style); - } -} -function get_root_for_style(node) { - if (!node) - return document; - const root = node.getRootNode ? node.getRootNode() : node.ownerDocument; - if (root && root.host) { - return root; - } - return node.ownerDocument; -} -function append_empty_stylesheet(node) { - const style_element = element('style'); - append_stylesheet(get_root_for_style(node), style_element); - return style_element.sheet; -} -function append_stylesheet(node, style) { - append(node.head || node, style); -} -function append_hydration(target, node) { - if (is_hydrating) { - init_hydrate(target); - if ((target.actual_end_child === undefined) || ((target.actual_end_child !== null) && (target.actual_end_child.parentElement !== target))) { - target.actual_end_child = target.firstChild; - } - // Skip nodes of undefined ordering - while ((target.actual_end_child !== null) && (target.actual_end_child.claim_order === undefined)) { - target.actual_end_child = target.actual_end_child.nextSibling; - } - if (node !== target.actual_end_child) { - // We only insert if the ordering of this node should be modified or the parent node is not target - if (node.claim_order !== undefined || node.parentNode !== target) { - target.insertBefore(node, target.actual_end_child); - } - } - else { - target.actual_end_child = node.nextSibling; - } - } - else if (node.parentNode !== target || node.nextSibling !== null) { - target.appendChild(node); - } -} -function insert(target, node, anchor) { - target.insertBefore(node, anchor || null); -} -function insert_hydration(target, node, anchor) { - if (is_hydrating && !anchor) { - append_hydration(target, node); - } - else if (node.parentNode !== target || node.nextSibling != anchor) { - target.insertBefore(node, anchor || null); - } -} -function detach(node) { - node.parentNode.removeChild(node); -} -function destroy_each(iterations, detaching) { - for (let i = 0; i < iterations.length; i += 1) { - if (iterations[i]) - iterations[i].d(detaching); - } -} -function element(name) { - return document.createElement(name); -} -function element_is(name, is) { - return document.createElement(name, { is }); -} -function object_without_properties(obj, exclude) { - const target = {}; - for (const k in obj) { - if (has_prop(obj, k) - // @ts-ignore - && exclude.indexOf(k) === -1) { - // @ts-ignore - target[k] = obj[k]; - } - } - return target; -} -function svg_element(name) { - return document.createElementNS('http://www.w3.org/2000/svg', name); -} -function text(data) { - return document.createTextNode(data); -} -function space() { - return text(' '); -} -function empty() { - return text(''); -} -function listen(node, event, handler, options) { - node.addEventListener(event, handler, options); - return () => node.removeEventListener(event, handler, options); -} -function prevent_default(fn) { - return function (event) { - event.preventDefault(); - // @ts-ignore - return fn.call(this, event); - }; -} -function stop_propagation(fn) { - return function (event) { - event.stopPropagation(); - // @ts-ignore - return fn.call(this, event); - }; -} -function self(fn) { - return function (event) { - // @ts-ignore - if (event.target === this) - fn.call(this, event); - }; -} -function trusted(fn) { - return function (event) { - // @ts-ignore - if (event.isTrusted) - fn.call(this, event); - }; -} -function attr(node, attribute, value) { - if (value == null) - node.removeAttribute(attribute); - else if (node.getAttribute(attribute) !== value) - node.setAttribute(attribute, value); -} -function set_attributes(node, attributes) { - // @ts-ignore - const descriptors = Object.getOwnPropertyDescriptors(node.__proto__); - for (const key in attributes) { - if (attributes[key] == null) { - node.removeAttribute(key); - } - else if (key === 'style') { - node.style.cssText = attributes[key]; - } - else if (key === '__value') { - node.value = node[key] = attributes[key]; - } - else if (descriptors[key] && descriptors[key].set) { - node[key] = attributes[key]; - } - else { - attr(node, key, attributes[key]); - } - } -} -function set_svg_attributes(node, attributes) { - for (const key in attributes) { - attr(node, key, attributes[key]); - } -} -function set_custom_element_data(node, prop, value) { - if (prop in node) { - node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value; - } - else { - attr(node, prop, value); - } -} -function xlink_attr(node, attribute, value) { - node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value); -} -function get_binding_group_value(group, __value, checked) { - const value = new Set(); - for (let i = 0; i < group.length; i += 1) { - if (group[i].checked) - value.add(group[i].__value); - } - if (!checked) { - value.delete(__value); - } - return Array.from(value); -} -function to_number(value) { - return value === '' ? null : +value; -} -function time_ranges_to_array(ranges) { - const array = []; - for (let i = 0; i < ranges.length; i += 1) { - array.push({ start: ranges.start(i), end: ranges.end(i) }); - } - return array; -} -function children(element) { - return Array.from(element.childNodes); -} -function init_claim_info(nodes) { - if (nodes.claim_info === undefined) { - nodes.claim_info = { last_index: 0, total_claimed: 0 }; - } -} -function claim_node(nodes, predicate, processNode, createNode, dontUpdateLastIndex = false) { - // Try to find nodes in an order such that we lengthen the longest increasing subsequence - init_claim_info(nodes); - const resultNode = (() => { - // We first try to find an element after the previous one - for (let i = nodes.claim_info.last_index; i < nodes.length; i++) { - const node = nodes[i]; - if (predicate(node)) { - const replacement = processNode(node); - if (replacement === undefined) { - nodes.splice(i, 1); - } - else { - nodes[i] = replacement; - } - if (!dontUpdateLastIndex) { - nodes.claim_info.last_index = i; - } - return node; - } - } - // Otherwise, we try to find one before - // We iterate in reverse so that we don't go too far back - for (let i = nodes.claim_info.last_index - 1; i >= 0; i--) { - const node = nodes[i]; - if (predicate(node)) { - const replacement = processNode(node); - if (replacement === undefined) { - nodes.splice(i, 1); - } - else { - nodes[i] = replacement; - } - if (!dontUpdateLastIndex) { - nodes.claim_info.last_index = i; - } - else if (replacement === undefined) { - // Since we spliced before the last_index, we decrease it - nodes.claim_info.last_index--; - } - return node; - } - } - // If we can't find any matching node, we create a new one - return createNode(); - })(); - resultNode.claim_order = nodes.claim_info.total_claimed; - nodes.claim_info.total_claimed += 1; - return resultNode; -} -function claim_element_base(nodes, name, attributes, create_element) { - return claim_node(nodes, (node) => node.nodeName === name, (node) => { - const remove = []; - for (let j = 0; j < node.attributes.length; j++) { - const attribute = node.attributes[j]; - if (!attributes[attribute.name]) { - remove.push(attribute.name); - } - } - remove.forEach(v => node.removeAttribute(v)); - return undefined; - }, () => create_element(name)); -} -function claim_element(nodes, name, attributes) { - return claim_element_base(nodes, name, attributes, element); -} -function claim_svg_element(nodes, name, attributes) { - return claim_element_base(nodes, name, attributes, svg_element); -} -function claim_text(nodes, data) { - return claim_node(nodes, (node) => node.nodeType === 3, (node) => { - const dataStr = '' + data; - if (node.data.startsWith(dataStr)) { - if (node.data.length !== dataStr.length) { - return node.splitText(dataStr.length); - } - } - else { - node.data = dataStr; - } - }, () => text(data), true // Text nodes should not update last index since it is likely not worth it to eliminate an increasing subsequence of actual elements - ); -} -function claim_space(nodes) { - return claim_text(nodes, ' '); -} -function find_comment(nodes, text, start) { - for (let i = start; i < nodes.length; i += 1) { - const node = nodes[i]; - if (node.nodeType === 8 /* comment node */ && node.textContent.trim() === text) { - return i; - } - } - return nodes.length; -} -function claim_html_tag(nodes) { - // find html opening tag - const start_index = find_comment(nodes, 'HTML_TAG_START', 0); - const end_index = find_comment(nodes, 'HTML_TAG_END', start_index); - if (start_index === end_index) { - return new HtmlTagHydration(); - } - init_claim_info(nodes); - const html_tag_nodes = nodes.splice(start_index, end_index - start_index + 1); - detach(html_tag_nodes[0]); - detach(html_tag_nodes[html_tag_nodes.length - 1]); - const claimed_nodes = html_tag_nodes.slice(1, html_tag_nodes.length - 1); - for (const n of claimed_nodes) { - n.claim_order = nodes.claim_info.total_claimed; - nodes.claim_info.total_claimed += 1; - } - return new HtmlTagHydration(claimed_nodes); -} -function set_data(text, data) { - data = '' + data; - if (text.wholeText !== data) - text.data = data; -} -function set_input_value(input, value) { - input.value = value == null ? '' : value; -} -function set_input_type(input, type) { - try { - input.type = type; - } - catch (e) { - // do nothing - } -} -function set_style(node, key, value, important) { - if (value === null) { - node.style.removeProperty(key); - } - else { - node.style.setProperty(key, value, important ? 'important' : ''); - } -} -function select_option(select, value) { - for (let i = 0; i < select.options.length; i += 1) { - const option = select.options[i]; - if (option.__value === value) { - option.selected = true; - return; - } - } - select.selectedIndex = -1; // no option should be selected -} -function select_options(select, value) { - for (let i = 0; i < select.options.length; i += 1) { - const option = select.options[i]; - option.selected = ~value.indexOf(option.__value); - } -} -function select_value(select) { - const selected_option = select.querySelector(':checked') || select.options[0]; - return selected_option && selected_option.__value; -} -function select_multiple_value(select) { - return [].map.call(select.querySelectorAll(':checked'), option => option.__value); -} -// unfortunately this can't be a constant as that wouldn't be tree-shakeable -// so we cache the result instead -let crossorigin; -function is_crossorigin() { - if (crossorigin === undefined) { - crossorigin = false; - try { - if (typeof window !== 'undefined' && window.parent) { - void window.parent.document; - } - } - catch (error) { - crossorigin = true; - } - } - return crossorigin; -} -function add_resize_listener(node, fn) { - const computed_style = getComputedStyle(node); - if (computed_style.position === 'static') { - node.style.position = 'relative'; - } - const iframe = element('iframe'); - iframe.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' + - 'overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;'); - iframe.setAttribute('aria-hidden', 'true'); - iframe.tabIndex = -1; - const crossorigin = is_crossorigin(); - let unsubscribe; - if (crossorigin) { - iframe.src = "data:text/html,"; - unsubscribe = listen(window, 'message', (event) => { - if (event.source === iframe.contentWindow) - fn(); - }); - } - else { - iframe.src = 'about:blank'; - iframe.onload = () => { - unsubscribe = listen(iframe.contentWindow, 'resize', fn); - }; - } - append(node, iframe); - return () => { - if (crossorigin) { - unsubscribe(); - } - else if (unsubscribe && iframe.contentWindow) { - unsubscribe(); - } - detach(iframe); - }; -} -function toggle_class(element, name, toggle) { - element.classList[toggle ? 'add' : 'remove'](name); -} -function custom_event(type, detail, bubbles = false) { - const e = document.createEvent('CustomEvent'); - e.initCustomEvent(type, bubbles, false, detail); - return e; -} -function query_selector_all(selector, parent = document.body) { - return Array.from(parent.querySelectorAll(selector)); -} -class HtmlTag { - constructor() { - this.e = this.n = null; - } - c(html) { - this.h(html); - } - m(html, target, anchor = null) { - if (!this.e) { - this.e = element(target.nodeName); - this.t = target; - this.c(html); - } - this.i(anchor); - } - h(html) { - this.e.innerHTML = html; - this.n = Array.from(this.e.childNodes); - } - i(anchor) { - for (let i = 0; i < this.n.length; i += 1) { - insert(this.t, this.n[i], anchor); - } - } - p(html) { - this.d(); - this.h(html); - this.i(this.a); - } - d() { - this.n.forEach(detach); - } -} -class HtmlTagHydration extends HtmlTag { - constructor(claimed_nodes) { - super(); - this.e = this.n = null; - this.l = claimed_nodes; - } - c(html) { - if (this.l) { - this.n = this.l; - } - else { - super.c(html); - } - } - i(anchor) { - for (let i = 0; i < this.n.length; i += 1) { - insert_hydration(this.t, this.n[i], anchor); - } - } -} -function attribute_to_object(attributes) { - const result = {}; - for (const attribute of attributes) { - result[attribute.name] = attribute.value; - } - return result; -} -function get_custom_elements_slots(element) { - const result = {}; - element.childNodes.forEach((node) => { - result[node.slot || 'default'] = true; - }); - return result; -} - -// we need to store the information for multiple documents because a Svelte application could also contain iframes -// https://github.com/sveltejs/svelte/issues/3624 -const managed_styles = new Map(); -let active = 0; -// https://github.com/darkskyapp/string-hash/blob/master/index.js -function hash(str) { - let hash = 5381; - let i = str.length; - while (i--) - hash = ((hash << 5) - hash) ^ str.charCodeAt(i); - return hash >>> 0; -} -function create_style_information(doc, node) { - const info = { stylesheet: append_empty_stylesheet(node), rules: {} }; - managed_styles.set(doc, info); - return info; -} -function create_rule(node, a, b, duration, delay, ease, fn, uid = 0) { - const step = 16.666 / duration; - let keyframes = '{\n'; - for (let p = 0; p <= 1; p += step) { - const t = a + (b - a) * ease(p); - keyframes += p * 100 + `%{${fn(t, 1 - t)}}\n`; - } - const rule = keyframes + `100% {${fn(b, 1 - b)}}\n}`; - const name = `__svelte_${hash(rule)}_${uid}`; - const doc = get_root_for_style(node); - const { stylesheet, rules } = managed_styles.get(doc) || create_style_information(doc, node); - if (!rules[name]) { - rules[name] = true; - stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length); - } - const animation = node.style.animation || ''; - node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`; - active += 1; - return name; -} -function delete_rule(node, name) { - const previous = (node.style.animation || '').split(', '); - const next = previous.filter(name - ? anim => anim.indexOf(name) < 0 // remove specific animation - : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations - ); - const deleted = previous.length - next.length; - if (deleted) { - node.style.animation = next.join(', '); - active -= deleted; - if (!active) - clear_rules(); - } -} -function clear_rules() { - raf(() => { - if (active) - return; - managed_styles.forEach(info => { - const { stylesheet } = info; - let i = stylesheet.cssRules.length; - while (i--) - stylesheet.deleteRule(i); - info.rules = {}; - }); - managed_styles.clear(); - }); -} - -function create_animation(node, from, fn, params) { - if (!from) - return noop; - const to = node.getBoundingClientRect(); - if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom) - return noop; - const { delay = 0, duration = 300, easing = identity, - // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation? - start: start_time = now() + delay, - // @ts-ignore todo: - end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params); - let running = true; - let started = false; - let name; - function start() { - if (css) { - name = create_rule(node, 0, 1, duration, delay, easing, css); - } - if (!delay) { - started = true; - } - } - function stop() { - if (css) - delete_rule(node, name); - running = false; - } - loop(now => { - if (!started && now >= start_time) { - started = true; - } - if (started && now >= end) { - tick(1, 0); - stop(); - } - if (!running) { - return false; - } - if (started) { - const p = now - start_time; - const t = 0 + 1 * easing(p / duration); - tick(t, 1 - t); - } - return true; - }); - start(); - tick(0, 1); - return stop; -} -function fix_position(node) { - const style = getComputedStyle(node); - if (style.position !== 'absolute' && style.position !== 'fixed') { - const { width, height } = style; - const a = node.getBoundingClientRect(); - node.style.position = 'absolute'; - node.style.width = width; - node.style.height = height; - add_transform(node, a); - } -} -function add_transform(node, a) { - const b = node.getBoundingClientRect(); - if (a.left !== b.left || a.top !== b.top) { - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`; - } -} - -let current_component; -function set_current_component(component) { - current_component = component; -} -function get_current_component() { - if (!current_component) - throw new Error('Function called outside component initialization'); - return current_component; -} -function beforeUpdate(fn) { - get_current_component().$$.before_update.push(fn); -} -function onMount(fn) { - get_current_component().$$.on_mount.push(fn); -} -function afterUpdate(fn) { - get_current_component().$$.after_update.push(fn); -} -function onDestroy(fn) { - get_current_component().$$.on_destroy.push(fn); -} -function createEventDispatcher() { - const component = get_current_component(); - return (type, detail) => { - const callbacks = component.$$.callbacks[type]; - if (callbacks) { - // TODO are there situations where events could be dispatched - // in a server (non-DOM) environment? - const event = custom_event(type, detail); - callbacks.slice().forEach(fn => { - fn.call(component, event); - }); - } - }; -} -function setContext(key, context) { - get_current_component().$$.context.set(key, context); -} -function getContext(key) { - return get_current_component().$$.context.get(key); -} -function getAllContexts() { - return get_current_component().$$.context; -} -function hasContext(key) { - return get_current_component().$$.context.has(key); -} -// TODO figure out if we still want to support -// shorthand events, or if we want to implement -// a real bubbling mechanism -function bubble(component, event) { - const callbacks = component.$$.callbacks[event.type]; - if (callbacks) { - // @ts-ignore - callbacks.slice().forEach(fn => fn.call(this, event)); - } -} - -const dirty_components = []; -const intros = { enabled: false }; -const binding_callbacks = []; -const render_callbacks = []; -const flush_callbacks = []; -const resolved_promise = Promise.resolve(); -let update_scheduled = false; -function schedule_update() { - if (!update_scheduled) { - update_scheduled = true; - resolved_promise.then(flush); - } -} -function tick() { - schedule_update(); - return resolved_promise; -} -function add_render_callback(fn) { - render_callbacks.push(fn); -} -function add_flush_callback(fn) { - flush_callbacks.push(fn); -} -// flush() calls callbacks in this order: -// 1. All beforeUpdate callbacks, in order: parents before children -// 2. All bind:this callbacks, in reverse order: children before parents. -// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT -// for afterUpdates called during the initial onMount, which are called in -// reverse order: children before parents. -// Since callbacks might update component values, which could trigger another -// call to flush(), the following steps guard against this: -// 1. During beforeUpdate, any updated components will be added to the -// dirty_components array and will cause a reentrant call to flush(). Because -// the flush index is kept outside the function, the reentrant call will pick -// up where the earlier call left off and go through all dirty components. The -// current_component value is saved and restored so that the reentrant call will -// not interfere with the "parent" flush() call. -// 2. bind:this callbacks cannot trigger new flush() calls. -// 3. During afterUpdate, any updated components will NOT have their afterUpdate -// callback called a second time; the seen_callbacks set, outside the flush() -// function, guarantees this behavior. -const seen_callbacks = new Set(); -let flushidx = 0; // Do *not* move this inside the flush() function -function flush() { - const saved_component = current_component; - do { - // first, call beforeUpdate functions - // and update components - while (flushidx < dirty_components.length) { - const component = dirty_components[flushidx]; - flushidx++; - set_current_component(component); - update(component.$$); - } - set_current_component(null); - dirty_components.length = 0; - flushidx = 0; - while (binding_callbacks.length) - binding_callbacks.pop()(); - // then, once components are updated, call - // afterUpdate functions. This may cause - // subsequent updates... - for (let i = 0; i < render_callbacks.length; i += 1) { - const callback = render_callbacks[i]; - if (!seen_callbacks.has(callback)) { - // ...so guard against infinite loops - seen_callbacks.add(callback); - callback(); - } - } - render_callbacks.length = 0; - } while (dirty_components.length); - while (flush_callbacks.length) { - flush_callbacks.pop()(); - } - update_scheduled = false; - seen_callbacks.clear(); - set_current_component(saved_component); -} -function update($$) { - if ($$.fragment !== null) { - $$.update(); - run_all($$.before_update); - const dirty = $$.dirty; - $$.dirty = [-1]; - $$.fragment && $$.fragment.p($$.ctx, dirty); - $$.after_update.forEach(add_render_callback); - } -} - -let promise; -function wait() { - if (!promise) { - promise = Promise.resolve(); - promise.then(() => { - promise = null; - }); - } - return promise; -} -function dispatch(node, direction, kind) { - node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`)); -} -const outroing = new Set(); -let outros; -function group_outros() { - outros = { - r: 0, - c: [], - p: outros // parent group - }; -} -function check_outros() { - if (!outros.r) { - run_all(outros.c); - } - outros = outros.p; -} -function transition_in(block, local) { - if (block && block.i) { - outroing.delete(block); - block.i(local); - } -} -function transition_out(block, local, detach, callback) { - if (block && block.o) { - if (outroing.has(block)) - return; - outroing.add(block); - outros.c.push(() => { - outroing.delete(block); - if (callback) { - if (detach) - block.d(1); - callback(); - } - }); - block.o(local); - } -} -const null_transition = { duration: 0 }; -function create_in_transition(node, fn, params) { - let config = fn(node, params); - let running = false; - let animation_name; - let task; - let uid = 0; - function cleanup() { - if (animation_name) - delete_rule(node, animation_name); - } - function go() { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - if (css) - animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++); - tick(0, 1); - const start_time = now() + delay; - const end_time = start_time + duration; - if (task) - task.abort(); - running = true; - add_render_callback(() => dispatch(node, true, 'start')); - task = loop(now => { - if (running) { - if (now >= end_time) { - tick(1, 0); - dispatch(node, true, 'end'); - cleanup(); - return running = false; - } - if (now >= start_time) { - const t = easing((now - start_time) / duration); - tick(t, 1 - t); - } - } - return running; - }); - } - let started = false; - return { - start() { - if (started) - return; - started = true; - delete_rule(node); - if (is_function(config)) { - config = config(); - wait().then(go); - } - else { - go(); - } - }, - invalidate() { - started = false; - }, - end() { - if (running) { - cleanup(); - running = false; - } - } - }; -} -function create_out_transition(node, fn, params) { - let config = fn(node, params); - let running = true; - let animation_name; - const group = outros; - group.r += 1; - function go() { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - if (css) - animation_name = create_rule(node, 1, 0, duration, delay, easing, css); - const start_time = now() + delay; - const end_time = start_time + duration; - add_render_callback(() => dispatch(node, false, 'start')); - loop(now => { - if (running) { - if (now >= end_time) { - tick(0, 1); - dispatch(node, false, 'end'); - if (!--group.r) { - // this will result in `end()` being called, - // so we don't need to clean up here - run_all(group.c); - } - return false; - } - if (now >= start_time) { - const t = easing((now - start_time) / duration); - tick(1 - t, t); - } - } - return running; - }); - } - if (is_function(config)) { - wait().then(() => { - // @ts-ignore - config = config(); - go(); - }); - } - else { - go(); - } - return { - end(reset) { - if (reset && config.tick) { - config.tick(1, 0); - } - if (running) { - if (animation_name) - delete_rule(node, animation_name); - running = false; - } - } - }; -} -function create_bidirectional_transition(node, fn, params, intro) { - let config = fn(node, params); - let t = intro ? 0 : 1; - let running_program = null; - let pending_program = null; - let animation_name = null; - function clear_animation() { - if (animation_name) - delete_rule(node, animation_name); - } - function init(program, duration) { - const d = (program.b - t); - duration *= Math.abs(d); - return { - a: t, - b: program.b, - d, - duration, - start: program.start, - end: program.start + duration, - group: program.group - }; - } - function go(b) { - const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition; - const program = { - start: now() + delay, - b - }; - if (!b) { - // @ts-ignore todo: improve typings - program.group = outros; - outros.r += 1; - } - if (running_program || pending_program) { - pending_program = program; - } - else { - // if this is an intro, and there's a delay, we need to do - // an initial tick and/or apply CSS animation immediately - if (css) { - clear_animation(); - animation_name = create_rule(node, t, b, duration, delay, easing, css); - } - if (b) - tick(0, 1); - running_program = init(program, duration); - add_render_callback(() => dispatch(node, b, 'start')); - loop(now => { - if (pending_program && now > pending_program.start) { - running_program = init(pending_program, duration); - pending_program = null; - dispatch(node, running_program.b, 'start'); - if (css) { - clear_animation(); - animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css); - } - } - if (running_program) { - if (now >= running_program.end) { - tick(t = running_program.b, 1 - t); - dispatch(node, running_program.b, 'end'); - if (!pending_program) { - // we're done - if (running_program.b) { - // intro — we can tidy up immediately - clear_animation(); - } - else { - // outro — needs to be coordinated - if (!--running_program.group.r) - run_all(running_program.group.c); - } - } - running_program = null; - } - else if (now >= running_program.start) { - const p = now - running_program.start; - t = running_program.a + running_program.d * easing(p / running_program.duration); - tick(t, 1 - t); - } - } - return !!(running_program || pending_program); - }); - } - } - return { - run(b) { - if (is_function(config)) { - wait().then(() => { - // @ts-ignore - config = config(); - go(b); - }); - } - else { - go(b); - } - }, - end() { - clear_animation(); - running_program = pending_program = null; - } - }; -} - -function handle_promise(promise, info) { - const token = info.token = {}; - function update(type, index, key, value) { - if (info.token !== token) - return; - info.resolved = value; - let child_ctx = info.ctx; - if (key !== undefined) { - child_ctx = child_ctx.slice(); - child_ctx[key] = value; - } - const block = type && (info.current = type)(child_ctx); - let needs_flush = false; - if (info.block) { - if (info.blocks) { - info.blocks.forEach((block, i) => { - if (i !== index && block) { - group_outros(); - transition_out(block, 1, 1, () => { - if (info.blocks[i] === block) { - info.blocks[i] = null; - } - }); - check_outros(); - } - }); - } - else { - info.block.d(1); - } - block.c(); - transition_in(block, 1); - block.m(info.mount(), info.anchor); - needs_flush = true; - } - info.block = block; - if (info.blocks) - info.blocks[index] = block; - if (needs_flush) { - flush(); - } - } - if (is_promise(promise)) { - const current_component = get_current_component(); - promise.then(value => { - set_current_component(current_component); - update(info.then, 1, info.value, value); - set_current_component(null); - }, error => { - set_current_component(current_component); - update(info.catch, 2, info.error, error); - set_current_component(null); - if (!info.hasCatch) { - throw error; - } - }); - // if we previously had a then/catch block, destroy it - if (info.current !== info.pending) { - update(info.pending, 0); - return true; - } - } - else { - if (info.current !== info.then) { - update(info.then, 1, info.value, promise); - return true; - } - info.resolved = promise; - } -} -function update_await_block_branch(info, ctx, dirty) { - const child_ctx = ctx.slice(); - const { resolved } = info; - if (info.current === info.then) { - child_ctx[info.value] = resolved; - } - if (info.current === info.catch) { - child_ctx[info.error] = resolved; - } - info.block.p(child_ctx, dirty); -} - -const globals = (typeof window !== 'undefined' - ? window - : typeof globalThis !== 'undefined' - ? globalThis - : global); - -function destroy_block(block, lookup) { - block.d(1); - lookup.delete(block.key); -} -function outro_and_destroy_block(block, lookup) { - transition_out(block, 1, 1, () => { - lookup.delete(block.key); - }); -} -function fix_and_destroy_block(block, lookup) { - block.f(); - destroy_block(block, lookup); -} -function fix_and_outro_and_destroy_block(block, lookup) { - block.f(); - outro_and_destroy_block(block, lookup); -} -function update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) { - let o = old_blocks.length; - let n = list.length; - let i = o; - const old_indexes = {}; - while (i--) - old_indexes[old_blocks[i].key] = i; - const new_blocks = []; - const new_lookup = new Map(); - const deltas = new Map(); - i = n; - while (i--) { - const child_ctx = get_context(ctx, list, i); - const key = get_key(child_ctx); - let block = lookup.get(key); - if (!block) { - block = create_each_block(key, child_ctx); - block.c(); - } - else if (dynamic) { - block.p(child_ctx, dirty); - } - new_lookup.set(key, new_blocks[i] = block); - if (key in old_indexes) - deltas.set(key, Math.abs(i - old_indexes[key])); - } - const will_move = new Set(); - const did_move = new Set(); - function insert(block) { - transition_in(block, 1); - block.m(node, next); - lookup.set(block.key, block); - next = block.first; - n--; - } - while (o && n) { - const new_block = new_blocks[n - 1]; - const old_block = old_blocks[o - 1]; - const new_key = new_block.key; - const old_key = old_block.key; - if (new_block === old_block) { - // do nothing - next = new_block.first; - o--; - n--; - } - else if (!new_lookup.has(old_key)) { - // remove old block - destroy(old_block, lookup); - o--; - } - else if (!lookup.has(new_key) || will_move.has(new_key)) { - insert(new_block); - } - else if (did_move.has(old_key)) { - o--; - } - else if (deltas.get(new_key) > deltas.get(old_key)) { - did_move.add(new_key); - insert(new_block); - } - else { - will_move.add(old_key); - o--; - } - } - while (o--) { - const old_block = old_blocks[o]; - if (!new_lookup.has(old_block.key)) - destroy(old_block, lookup); - } - while (n) - insert(new_blocks[n - 1]); - return new_blocks; -} -function validate_each_keys(ctx, list, get_context, get_key) { - const keys = new Set(); - for (let i = 0; i < list.length; i++) { - const key = get_key(get_context(ctx, list, i)); - if (keys.has(key)) { - throw new Error('Cannot have duplicate keys in a keyed each'); - } - keys.add(key); - } -} - -function get_spread_update(levels, updates) { - const update = {}; - const to_null_out = {}; - const accounted_for = { $$scope: 1 }; - let i = levels.length; - while (i--) { - const o = levels[i]; - const n = updates[i]; - if (n) { - for (const key in o) { - if (!(key in n)) - to_null_out[key] = 1; - } - for (const key in n) { - if (!accounted_for[key]) { - update[key] = n[key]; - accounted_for[key] = 1; - } - } - levels[i] = n; - } - else { - for (const key in o) { - accounted_for[key] = 1; - } - } - } - for (const key in to_null_out) { - if (!(key in update)) - update[key] = undefined; - } - return update; -} -function get_spread_object(spread_props) { - return typeof spread_props === 'object' && spread_props !== null ? spread_props : {}; -} - -// source: https://html.spec.whatwg.org/multipage/indices.html -const boolean_attributes = new Set([ - 'allowfullscreen', - 'allowpaymentrequest', - 'async', - 'autofocus', - 'autoplay', - 'checked', - 'controls', - 'default', - 'defer', - 'disabled', - 'formnovalidate', - 'hidden', - 'ismap', - 'loop', - 'multiple', - 'muted', - 'nomodule', - 'novalidate', - 'open', - 'playsinline', - 'readonly', - 'required', - 'reversed', - 'selected' -]); - -const invalid_attribute_name_character = /[\s'">/=\u{FDD0}-\u{FDEF}\u{FFFE}\u{FFFF}\u{1FFFE}\u{1FFFF}\u{2FFFE}\u{2FFFF}\u{3FFFE}\u{3FFFF}\u{4FFFE}\u{4FFFF}\u{5FFFE}\u{5FFFF}\u{6FFFE}\u{6FFFF}\u{7FFFE}\u{7FFFF}\u{8FFFE}\u{8FFFF}\u{9FFFE}\u{9FFFF}\u{AFFFE}\u{AFFFF}\u{BFFFE}\u{BFFFF}\u{CFFFE}\u{CFFFF}\u{DFFFE}\u{DFFFF}\u{EFFFE}\u{EFFFF}\u{FFFFE}\u{FFFFF}\u{10FFFE}\u{10FFFF}]/u; -// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 -// https://infra.spec.whatwg.org/#noncharacter -function spread(args, attrs_to_add) { - const attributes = Object.assign({}, ...args); - if (attrs_to_add) { - const classes_to_add = attrs_to_add.classes; - const styles_to_add = attrs_to_add.styles; - if (classes_to_add) { - if (attributes.class == null) { - attributes.class = classes_to_add; - } - else { - attributes.class += ' ' + classes_to_add; - } - } - if (styles_to_add) { - if (attributes.style == null) { - attributes.style = style_object_to_string(styles_to_add); - } - else { - attributes.style = style_object_to_string(merge_ssr_styles(attributes.style, styles_to_add)); - } - } - } - let str = ''; - Object.keys(attributes).forEach(name => { - if (invalid_attribute_name_character.test(name)) - return; - const value = attributes[name]; - if (value === true) - str += ' ' + name; - else if (boolean_attributes.has(name.toLowerCase())) { - if (value) - str += ' ' + name; - } - else if (value != null) { - str += ` ${name}="${value}"`; - } - }); - return str; -} -function merge_ssr_styles(style_attribute, style_directive) { - const style_object = {}; - for (const individual_style of style_attribute.split(';')) { - const colon_index = individual_style.indexOf(':'); - const name = individual_style.slice(0, colon_index).trim(); - const value = individual_style.slice(colon_index + 1).trim(); - if (!name) - continue; - style_object[name] = value; - } - for (const name in style_directive) { - const value = style_directive[name]; - if (value) { - style_object[name] = value; - } - else { - delete style_object[name]; - } - } - return style_object; -} -const escaped = { - '"': '"', - "'": ''', - '&': '&', - '<': '<', - '>': '>' -}; -function escape(html) { - return String(html).replace(/["'&<>]/g, match => escaped[match]); -} -function escape_attribute_value(value) { - return typeof value === 'string' ? escape(value) : value; -} -function escape_object(obj) { - const result = {}; - for (const key in obj) { - result[key] = escape_attribute_value(obj[key]); - } - return result; -} -function each(items, fn) { - let str = ''; - for (let i = 0; i < items.length; i += 1) { - str += fn(items[i], i); - } - return str; -} -const missing_component = { - $$render: () => '' -}; -function validate_component(component, name) { - if (!component || !component.$$render) { - if (name === 'svelte:component') - name += ' this={...}'; - throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`); - } - return component; -} -function debug(file, line, column, values) { - console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console - console.log(values); // eslint-disable-line no-console - return ''; -} -let on_destroy; -function create_ssr_component(fn) { - function $$render(result, props, bindings, slots, context) { - const parent_component = current_component; - const $$ = { - on_destroy, - context: new Map(context || (parent_component ? parent_component.$$.context : [])), - // these will be immediately discarded - on_mount: [], - before_update: [], - after_update: [], - callbacks: blank_object() - }; - set_current_component({ $$ }); - const html = fn(result, props, bindings, slots); - set_current_component(parent_component); - return html; - } - return { - render: (props = {}, { $$slots = {}, context = new Map() } = {}) => { - on_destroy = []; - const result = { title: '', head: '', css: new Set() }; - const html = $$render(result, props, {}, $$slots, context); - run_all(on_destroy); - return { - html, - css: { - code: Array.from(result.css).map(css => css.code).join('\n'), - map: null // TODO - }, - head: result.title + result.head - }; - }, - $$render - }; -} -function add_attribute(name, value, boolean) { - if (value == null || (boolean && !value)) - return ''; - return ` ${name}${value === true && boolean_attributes.has(name) ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `"${value}"`}`}`; -} -function add_classes(classes) { - return classes ? ` class="${classes}"` : ''; -} -function style_object_to_string(style_object) { - return Object.keys(style_object) - .filter(key => style_object[key]) - .map(key => `${key}: ${style_object[key]};`) - .join(' '); -} -function add_styles(style_object) { - const styles = style_object_to_string(style_object); - return styles ? ` style="${styles}"` : ''; -} - -function bind(component, name, callback) { - const index = component.$$.props[name]; - if (index !== undefined) { - component.$$.bound[index] = callback; - callback(component.$$.ctx[index]); - } -} -function create_component(block) { - block && block.c(); -} -function claim_component(block, parent_nodes) { - block && block.l(parent_nodes); -} -function mount_component(component, target, anchor, customElement) { - const { fragment, on_mount, on_destroy, after_update } = component.$$; - fragment && fragment.m(target, anchor); - if (!customElement) { - // onMount happens before the initial afterUpdate - add_render_callback(() => { - const new_on_destroy = on_mount.map(run).filter(is_function); - if (on_destroy) { - on_destroy.push(...new_on_destroy); - } - else { - // Edge case - component was destroyed immediately, - // most likely as a result of a binding initialising - run_all(new_on_destroy); - } - component.$$.on_mount = []; - }); - } - after_update.forEach(add_render_callback); -} -function destroy_component(component, detaching) { - const $$ = component.$$; - if ($$.fragment !== null) { - run_all($$.on_destroy); - $$.fragment && $$.fragment.d(detaching); - // TODO null out other refs, including component.$$ (but need to - // preserve final state?) - $$.on_destroy = $$.fragment = null; - $$.ctx = []; - } -} -function make_dirty(component, i) { - if (component.$$.dirty[0] === -1) { - dirty_components.push(component); - schedule_update(); - component.$$.dirty.fill(0); - } - component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31)); -} -function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) { - const parent_component = current_component; - set_current_component(component); - const $$ = component.$$ = { - fragment: null, - ctx: null, - // state - props, - update: noop, - not_equal, - bound: blank_object(), - // lifecycle - on_mount: [], - on_destroy: [], - on_disconnect: [], - before_update: [], - after_update: [], - context: new Map(options.context || (parent_component ? parent_component.$$.context : [])), - // everything else - callbacks: blank_object(), - dirty, - skip_bound: false, - root: options.target || parent_component.$$.root - }; - append_styles && append_styles($$.root); - let ready = false; - $$.ctx = instance - ? instance(component, options.props || {}, (i, ret, ...rest) => { - const value = rest.length ? rest[0] : ret; - if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) { - if (!$$.skip_bound && $$.bound[i]) - $$.bound[i](value); - if (ready) - make_dirty(component, i); - } - return ret; - }) - : []; - $$.update(); - ready = true; - run_all($$.before_update); - // `false` as a special case of no DOM component - $$.fragment = create_fragment ? create_fragment($$.ctx) : false; - if (options.target) { - if (options.hydrate) { - start_hydrating(); - const nodes = children(options.target); - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.l(nodes); - nodes.forEach(detach); - } - else { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.c(); - } - if (options.intro) - transition_in(component.$$.fragment); - mount_component(component, options.target, options.anchor, options.customElement); - end_hydrating(); - flush(); - } - set_current_component(parent_component); -} -let SvelteElement; -if (typeof HTMLElement === 'function') { - SvelteElement = class extends HTMLElement { - constructor() { - super(); - this.attachShadow({ mode: 'open' }); - } - connectedCallback() { - const { on_mount } = this.$$; - this.$$.on_disconnect = on_mount.map(run).filter(is_function); - // @ts-ignore todo: improve typings - for (const key in this.$$.slotted) { - // @ts-ignore todo: improve typings - this.appendChild(this.$$.slotted[key]); - } - } - attributeChangedCallback(attr, _oldValue, newValue) { - this[attr] = newValue; - } - disconnectedCallback() { - run_all(this.$$.on_disconnect); - } - $destroy() { - destroy_component(this, 1); - this.$destroy = noop; - } - $on(type, callback) { - // TODO should this delegate to addEventListener? - const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = [])); - callbacks.push(callback); - return () => { - const index = callbacks.indexOf(callback); - if (index !== -1) - callbacks.splice(index, 1); - }; - } - $set($$props) { - if (this.$$set && !is_empty($$props)) { - this.$$.skip_bound = true; - this.$$set($$props); - this.$$.skip_bound = false; - } - } - }; -} -/** - * Base class for Svelte components. Used when dev=false. - */ -class SvelteComponent { - $destroy() { - destroy_component(this, 1); - this.$destroy = noop; - } - $on(type, callback) { - const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = [])); - callbacks.push(callback); - return () => { - const index = callbacks.indexOf(callback); - if (index !== -1) - callbacks.splice(index, 1); - }; - } - $set($$props) { - if (this.$$set && !is_empty($$props)) { - this.$$.skip_bound = true; - this.$$set($$props); - this.$$.skip_bound = false; - } - } -} - -function dispatch_dev(type, detail) { - document.dispatchEvent(custom_event(type, Object.assign({ version: '3.46.2' }, detail), true)); -} -function append_dev(target, node) { - dispatch_dev('SvelteDOMInsert', { target, node }); - append(target, node); -} -function append_hydration_dev(target, node) { - dispatch_dev('SvelteDOMInsert', { target, node }); - append_hydration(target, node); -} -function insert_dev(target, node, anchor) { - dispatch_dev('SvelteDOMInsert', { target, node, anchor }); - insert(target, node, anchor); -} -function insert_hydration_dev(target, node, anchor) { - dispatch_dev('SvelteDOMInsert', { target, node, anchor }); - insert_hydration(target, node, anchor); -} -function detach_dev(node) { - dispatch_dev('SvelteDOMRemove', { node }); - detach(node); -} -function detach_between_dev(before, after) { - while (before.nextSibling && before.nextSibling !== after) { - detach_dev(before.nextSibling); - } -} -function detach_before_dev(after) { - while (after.previousSibling) { - detach_dev(after.previousSibling); - } -} -function detach_after_dev(before) { - while (before.nextSibling) { - detach_dev(before.nextSibling); - } -} -function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) { - const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : []; - if (has_prevent_default) - modifiers.push('preventDefault'); - if (has_stop_propagation) - modifiers.push('stopPropagation'); - dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers }); - const dispose = listen(node, event, handler, options); - return () => { - dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers }); - dispose(); - }; -} -function attr_dev(node, attribute, value) { - attr(node, attribute, value); - if (value == null) - dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute }); - else - dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value }); -} -function prop_dev(node, property, value) { - node[property] = value; - dispatch_dev('SvelteDOMSetProperty', { node, property, value }); -} -function dataset_dev(node, property, value) { - node.dataset[property] = value; - dispatch_dev('SvelteDOMSetDataset', { node, property, value }); -} -function set_data_dev(text, data) { - data = '' + data; - if (text.wholeText === data) - return; - dispatch_dev('SvelteDOMSetData', { node: text, data }); - text.data = data; -} -function validate_each_argument(arg) { - if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) { - let msg = '{#each} only iterates over array-like objects.'; - if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) { - msg += ' You can use a spread to convert this iterable into an array.'; - } - throw new Error(msg); - } -} -function validate_slots(name, slot, keys) { - for (const slot_key of Object.keys(slot)) { - if (!~keys.indexOf(slot_key)) { - console.warn(`<${name}> received an unexpected slot "${slot_key}".`); - } - } -} -/** - * Base class for Svelte components with some minor dev-enhancements. Used when dev=true. - */ -class SvelteComponentDev extends SvelteComponent { - constructor(options) { - if (!options || (!options.target && !options.$$inline)) { - throw new Error("'target' is a required option"); - } - super(); - } - $destroy() { - super.$destroy(); - this.$destroy = () => { - console.warn('Component was already destroyed'); // eslint-disable-line no-console - }; - } - $capture_state() { } - $inject_state() { } -} -/** - * Base class to create strongly typed Svelte components. - * This only exists for typing purposes and should be used in `.d.ts` files. - * - * ### Example: - * - * You have component library on npm called `component-library`, from which - * you export a component called `MyComponent`. For Svelte+TypeScript users, - * you want to provide typings. Therefore you create a `index.d.ts`: - * ```ts - * import { SvelteComponentTyped } from "svelte"; - * export class MyComponent extends SvelteComponentTyped<{foo: string}> {} - * ``` - * Typing this makes it possible for IDEs like VS Code with the Svelte extension - * to provide intellisense and to use the component like this in a Svelte file - * with TypeScript: - * ```svelte - * - * - * ``` - * - * #### Why not make this part of `SvelteComponent(Dev)`? - * Because - * ```ts - * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {} - * const component: typeof SvelteComponent = ASubclassOfSvelteComponent; - * ``` - * will throw a type error, so we need to separate the more strictly typed class. - */ -class SvelteComponentTyped extends SvelteComponentDev { - constructor(options) { - super(options); - } -} -function loop_guard(timeout) { - const start = Date.now(); - return () => { - if (Date.now() - start > timeout) { - throw new Error('Infinite loop detected'); - } - }; -} - -export { HtmlTag, HtmlTagHydration, SvelteComponent, SvelteComponentDev, SvelteComponentTyped, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_styles, add_transform, afterUpdate, append, append_dev, append_empty_stylesheet, append_hydration, append_hydration_dev, append_styles, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_html_tag, claim_space, claim_svg_element, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, end_hydrating, escape, escape_attribute_value, escape_object, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getAllContexts, getContext, get_all_dirty_from_scope, get_binding_group_value, get_current_component, get_custom_elements_slots, get_root_for_style, get_slot_changes, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, insert_hydration, insert_hydration_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, merge_ssr_styles, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, src_url_equal, start_hydrating, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, trusted, update_await_block_branch, update_keyed_each, update_slot, update_slot_base, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr }; diff --git a/packages/frontend-core/node_modules/svelte/internal/package.json b/packages/frontend-core/node_modules/svelte/internal/package.json deleted file mode 100644 index 598aeeaf51..0000000000 --- a/packages/frontend-core/node_modules/svelte/internal/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/motion/index.d.ts b/packages/frontend-core/node_modules/svelte/motion/index.d.ts deleted file mode 100644 index 8fd1d8b2da..0000000000 --- a/packages/frontend-core/node_modules/svelte/motion/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/motion/index'; \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/motion/index.js b/packages/frontend-core/node_modules/svelte/motion/index.js deleted file mode 100644 index b1840e41c6..0000000000 --- a/packages/frontend-core/node_modules/svelte/motion/index.js +++ /dev/null @@ -1,216 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var store = require('../store/index.js'); -var internal = require('../internal/index.js'); -var easing = require('../easing/index.js'); - -function is_date(obj) { - return Object.prototype.toString.call(obj) === '[object Date]'; -} - -function tick_spring(ctx, last_value, current_value, target_value) { - if (typeof current_value === 'number' || is_date(current_value)) { - // @ts-ignore - const delta = target_value - current_value; - // @ts-ignore - const velocity = (current_value - last_value) / (ctx.dt || 1 / 60); // guard div by 0 - const spring = ctx.opts.stiffness * delta; - const damper = ctx.opts.damping * velocity; - const acceleration = (spring - damper) * ctx.inv_mass; - const d = (velocity + acceleration) * ctx.dt; - if (Math.abs(d) < ctx.opts.precision && Math.abs(delta) < ctx.opts.precision) { - return target_value; // settled - } - else { - ctx.settled = false; // signal loop to keep ticking - // @ts-ignore - return is_date(current_value) ? - new Date(current_value.getTime() + d) : current_value + d; - } - } - else if (Array.isArray(current_value)) { - // @ts-ignore - return current_value.map((_, i) => tick_spring(ctx, last_value[i], current_value[i], target_value[i])); - } - else if (typeof current_value === 'object') { - const next_value = {}; - for (const k in current_value) { - // @ts-ignore - next_value[k] = tick_spring(ctx, last_value[k], current_value[k], target_value[k]); - } - // @ts-ignore - return next_value; - } - else { - throw new Error(`Cannot spring ${typeof current_value} values`); - } -} -function spring(value, opts = {}) { - const store$1 = store.writable(value); - const { stiffness = 0.15, damping = 0.8, precision = 0.01 } = opts; - let last_time; - let task; - let current_token; - let last_value = value; - let target_value = value; - let inv_mass = 1; - let inv_mass_recovery_rate = 0; - let cancel_task = false; - function set(new_value, opts = {}) { - target_value = new_value; - const token = current_token = {}; - if (value == null || opts.hard || (spring.stiffness >= 1 && spring.damping >= 1)) { - cancel_task = true; // cancel any running animation - last_time = internal.now(); - last_value = new_value; - store$1.set(value = target_value); - return Promise.resolve(); - } - else if (opts.soft) { - const rate = opts.soft === true ? .5 : +opts.soft; - inv_mass_recovery_rate = 1 / (rate * 60); - inv_mass = 0; // infinite mass, unaffected by spring forces - } - if (!task) { - last_time = internal.now(); - cancel_task = false; - task = internal.loop(now => { - if (cancel_task) { - cancel_task = false; - task = null; - return false; - } - inv_mass = Math.min(inv_mass + inv_mass_recovery_rate, 1); - const ctx = { - inv_mass, - opts: spring, - settled: true, - dt: (now - last_time) * 60 / 1000 - }; - const next_value = tick_spring(ctx, last_value, value, target_value); - last_time = now; - last_value = value; - store$1.set(value = next_value); - if (ctx.settled) { - task = null; - } - return !ctx.settled; - }); - } - return new Promise(fulfil => { - task.promise.then(() => { - if (token === current_token) - fulfil(); - }); - }); - } - const spring = { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store$1.subscribe, - stiffness, - damping, - precision - }; - return spring; -} - -function get_interpolator(a, b) { - if (a === b || a !== a) - return () => a; - const type = typeof a; - if (type !== typeof b || Array.isArray(a) !== Array.isArray(b)) { - throw new Error('Cannot interpolate values of different type'); - } - if (Array.isArray(a)) { - const arr = b.map((bi, i) => { - return get_interpolator(a[i], bi); - }); - return t => arr.map(fn => fn(t)); - } - if (type === 'object') { - if (!a || !b) - throw new Error('Object cannot be null'); - if (is_date(a) && is_date(b)) { - a = a.getTime(); - b = b.getTime(); - const delta = b - a; - return t => new Date(a + t * delta); - } - const keys = Object.keys(b); - const interpolators = {}; - keys.forEach(key => { - interpolators[key] = get_interpolator(a[key], b[key]); - }); - return t => { - const result = {}; - keys.forEach(key => { - result[key] = interpolators[key](t); - }); - return result; - }; - } - if (type === 'number') { - const delta = b - a; - return t => a + t * delta; - } - throw new Error(`Cannot interpolate ${type} values`); -} -function tweened(value, defaults = {}) { - const store$1 = store.writable(value); - let task; - let target_value = value; - function set(new_value, opts) { - if (value == null) { - store$1.set(value = new_value); - return Promise.resolve(); - } - target_value = new_value; - let previous_task = task; - let started = false; - let { delay = 0, duration = 400, easing: easing$1 = easing.linear, interpolate = get_interpolator } = internal.assign(internal.assign({}, defaults), opts); - if (duration === 0) { - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - store$1.set(value = target_value); - return Promise.resolve(); - } - const start = internal.now() + delay; - let fn; - task = internal.loop(now => { - if (now < start) - return true; - if (!started) { - fn = interpolate(value, new_value); - if (typeof duration === 'function') - duration = duration(value, new_value); - started = true; - } - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - const elapsed = now - start; - if (elapsed > duration) { - store$1.set(value = new_value); - return false; - } - // @ts-ignore - store$1.set(value = fn(easing$1(elapsed / duration))); - return true; - }); - return task.promise; - } - return { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store$1.subscribe - }; -} - -exports.spring = spring; -exports.tweened = tweened; diff --git a/packages/frontend-core/node_modules/svelte/motion/index.mjs b/packages/frontend-core/node_modules/svelte/motion/index.mjs deleted file mode 100644 index 6c4ecbe621..0000000000 --- a/packages/frontend-core/node_modules/svelte/motion/index.mjs +++ /dev/null @@ -1,211 +0,0 @@ -import { writable } from '../store/index.mjs'; -import { now, loop, assign } from '../internal/index.mjs'; -import { linear } from '../easing/index.mjs'; - -function is_date(obj) { - return Object.prototype.toString.call(obj) === '[object Date]'; -} - -function tick_spring(ctx, last_value, current_value, target_value) { - if (typeof current_value === 'number' || is_date(current_value)) { - // @ts-ignore - const delta = target_value - current_value; - // @ts-ignore - const velocity = (current_value - last_value) / (ctx.dt || 1 / 60); // guard div by 0 - const spring = ctx.opts.stiffness * delta; - const damper = ctx.opts.damping * velocity; - const acceleration = (spring - damper) * ctx.inv_mass; - const d = (velocity + acceleration) * ctx.dt; - if (Math.abs(d) < ctx.opts.precision && Math.abs(delta) < ctx.opts.precision) { - return target_value; // settled - } - else { - ctx.settled = false; // signal loop to keep ticking - // @ts-ignore - return is_date(current_value) ? - new Date(current_value.getTime() + d) : current_value + d; - } - } - else if (Array.isArray(current_value)) { - // @ts-ignore - return current_value.map((_, i) => tick_spring(ctx, last_value[i], current_value[i], target_value[i])); - } - else if (typeof current_value === 'object') { - const next_value = {}; - for (const k in current_value) { - // @ts-ignore - next_value[k] = tick_spring(ctx, last_value[k], current_value[k], target_value[k]); - } - // @ts-ignore - return next_value; - } - else { - throw new Error(`Cannot spring ${typeof current_value} values`); - } -} -function spring(value, opts = {}) { - const store = writable(value); - const { stiffness = 0.15, damping = 0.8, precision = 0.01 } = opts; - let last_time; - let task; - let current_token; - let last_value = value; - let target_value = value; - let inv_mass = 1; - let inv_mass_recovery_rate = 0; - let cancel_task = false; - function set(new_value, opts = {}) { - target_value = new_value; - const token = current_token = {}; - if (value == null || opts.hard || (spring.stiffness >= 1 && spring.damping >= 1)) { - cancel_task = true; // cancel any running animation - last_time = now(); - last_value = new_value; - store.set(value = target_value); - return Promise.resolve(); - } - else if (opts.soft) { - const rate = opts.soft === true ? .5 : +opts.soft; - inv_mass_recovery_rate = 1 / (rate * 60); - inv_mass = 0; // infinite mass, unaffected by spring forces - } - if (!task) { - last_time = now(); - cancel_task = false; - task = loop(now => { - if (cancel_task) { - cancel_task = false; - task = null; - return false; - } - inv_mass = Math.min(inv_mass + inv_mass_recovery_rate, 1); - const ctx = { - inv_mass, - opts: spring, - settled: true, - dt: (now - last_time) * 60 / 1000 - }; - const next_value = tick_spring(ctx, last_value, value, target_value); - last_time = now; - last_value = value; - store.set(value = next_value); - if (ctx.settled) { - task = null; - } - return !ctx.settled; - }); - } - return new Promise(fulfil => { - task.promise.then(() => { - if (token === current_token) - fulfil(); - }); - }); - } - const spring = { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store.subscribe, - stiffness, - damping, - precision - }; - return spring; -} - -function get_interpolator(a, b) { - if (a === b || a !== a) - return () => a; - const type = typeof a; - if (type !== typeof b || Array.isArray(a) !== Array.isArray(b)) { - throw new Error('Cannot interpolate values of different type'); - } - if (Array.isArray(a)) { - const arr = b.map((bi, i) => { - return get_interpolator(a[i], bi); - }); - return t => arr.map(fn => fn(t)); - } - if (type === 'object') { - if (!a || !b) - throw new Error('Object cannot be null'); - if (is_date(a) && is_date(b)) { - a = a.getTime(); - b = b.getTime(); - const delta = b - a; - return t => new Date(a + t * delta); - } - const keys = Object.keys(b); - const interpolators = {}; - keys.forEach(key => { - interpolators[key] = get_interpolator(a[key], b[key]); - }); - return t => { - const result = {}; - keys.forEach(key => { - result[key] = interpolators[key](t); - }); - return result; - }; - } - if (type === 'number') { - const delta = b - a; - return t => a + t * delta; - } - throw new Error(`Cannot interpolate ${type} values`); -} -function tweened(value, defaults = {}) { - const store = writable(value); - let task; - let target_value = value; - function set(new_value, opts) { - if (value == null) { - store.set(value = new_value); - return Promise.resolve(); - } - target_value = new_value; - let previous_task = task; - let started = false; - let { delay = 0, duration = 400, easing = linear, interpolate = get_interpolator } = assign(assign({}, defaults), opts); - if (duration === 0) { - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - store.set(value = target_value); - return Promise.resolve(); - } - const start = now() + delay; - let fn; - task = loop(now => { - if (now < start) - return true; - if (!started) { - fn = interpolate(value, new_value); - if (typeof duration === 'function') - duration = duration(value, new_value); - started = true; - } - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - const elapsed = now - start; - if (elapsed > duration) { - store.set(value = new_value); - return false; - } - // @ts-ignore - store.set(value = fn(easing(elapsed / duration))); - return true; - }); - return task.promise; - } - return { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store.subscribe - }; -} - -export { spring, tweened }; diff --git a/packages/frontend-core/node_modules/svelte/motion/package.json b/packages/frontend-core/node_modules/svelte/motion/package.json deleted file mode 100644 index 598aeeaf51..0000000000 --- a/packages/frontend-core/node_modules/svelte/motion/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/package.json b/packages/frontend-core/node_modules/svelte/package.json deleted file mode 100644 index dfba5a0a3f..0000000000 --- a/packages/frontend-core/node_modules/svelte/package.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "name": "svelte", - "version": "3.46.2", - "description": "Cybernetically enhanced web apps", - "module": "index.mjs", - "main": "index", - "files": [ - "types", - "compiler.*", - "register.js", - "index.*", - "ssr.*", - "internal", - "store", - "animate", - "transition", - "easing", - "motion", - "svelte", - "README.md" - ], - "exports": { - "./package.json": "./package.json", - ".": { - "types": "./types/runtime/index.d.ts", - "browser": { - "import": "./index.mjs", - "require": "./index.js" - }, - "node": { - "import": "./ssr.mjs", - "require": "./ssr.js" - }, - "import": "./index.mjs", - "require": "./index.js" - }, - "./compiler": { - "types": "./types/compiler/index.d.ts", - "import": "./compiler.mjs", - "require": "./compiler.js" - }, - "./animate": { - "types": "./types/runtime/animate/index.d.ts", - "import": "./animate/index.mjs", - "require": "./animate/index.js" - }, - "./easing": { - "types": "./types/runtime/easing/index.d.ts", - "import": "./easing/index.mjs", - "require": "./easing/index.js" - }, - "./internal": { - "types": "./types/runtime/internal/index.d.ts", - "import": "./internal/index.mjs", - "require": "./internal/index.js" - }, - "./motion": { - "types": "./types/runtime/motion/index.d.ts", - "import": "./motion/index.mjs", - "require": "./motion/index.js" - }, - "./register": { - "require": "./register.js" - }, - "./store": { - "types": "./types/runtime/store/index.d.ts", - "import": "./store/index.mjs", - "require": "./store/index.js" - }, - "./transition": { - "types": "./types/runtime/transition/index.d.ts", - "import": "./transition/index.mjs", - "require": "./transition/index.js" - }, - "./ssr": { - "types": "./types/runtime/index.d.ts", - "import": "./ssr.mjs", - "require": "./ssr.js" - } - }, - "engines": { - "node": ">= 8" - }, - "types": "types/runtime/index.d.ts", - "scripts": { - "test": "mocha --exit", - "test:unit": "mocha --require sucrase/register --recursive src/**/__test__.ts --exit", - "quicktest": "mocha", - "precoverage": "c8 mocha", - "coverage": "c8 report --reporter=text-lcov > coverage.lcov && c8 report --reporter=html", - "codecov": "codecov", - "precodecov": "npm run coverage", - "build": "rollup -c && npm run tsd", - "prepare": "npm run build", - "dev": "rollup -cw", - "pretest": "npm run build", - "posttest": "agadoo internal/index.mjs", - "prepublishOnly": "node check_publish_env.js && npm run lint && npm test", - "tsd": "tsc -p src/compiler --emitDeclarationOnly && tsc -p src/runtime --emitDeclarationOnly", - "lint": "eslint \"{src,test}/**/*.{ts,js}\"" - }, - "repository": { - "type": "git", - "url": "https://github.com/sveltejs/svelte.git" - }, - "keywords": [ - "UI", - "framework", - "templates", - "templating" - ], - "author": "Rich Harris", - "license": "MIT", - "bugs": { - "url": "https://github.com/sveltejs/svelte/issues" - }, - "homepage": "https://github.com/sveltejs/svelte#README", - "devDependencies": { - "@ampproject/remapping": "^0.3.0", - "@rollup/plugin-commonjs": "^11.0.0", - "@rollup/plugin-json": "^4.0.1", - "@rollup/plugin-node-resolve": "^6.0.0", - "@rollup/plugin-replace": "^2.3.0", - "@rollup/plugin-sucrase": "^3.1.0", - "@rollup/plugin-typescript": "^2.0.1", - "@rollup/plugin-virtual": "^2.0.0", - "@sveltejs/eslint-config": "github:sveltejs/eslint-config#v5.8.0", - "@types/mocha": "^7.0.0", - "@types/node": "^8.10.53", - "@typescript-eslint/eslint-plugin": "^4.31.2", - "@typescript-eslint/parser": "^4.31.2", - "acorn": "^8.4.1", - "agadoo": "^1.1.0", - "c8": "^5.0.1", - "code-red": "^0.2.4", - "codecov": "^3.5.0", - "css-tree": "^1.1.2", - "eslint": "^7.32.0", - "eslint-plugin-import": "^2.24.2", - "eslint-plugin-svelte3": "^3.2.1", - "estree-walker": "^3.0.0", - "is-reference": "^3.0.0", - "jsdom": "^15.2.1", - "kleur": "^3.0.3", - "locate-character": "^2.0.5", - "magic-string": "^0.25.3", - "mocha": "^7.0.0", - "periscopic": "^3.0.4", - "puppeteer": "^2.0.0", - "rollup": "^1.27.14", - "source-map": "^0.7.3", - "source-map-support": "^0.5.13", - "sourcemap-codec": "^1.4.8", - "tiny-glob": "^0.2.6", - "tslib": "^2.0.3", - "typescript": "^3.7.5" - }, - "nyc": { - "include": [ - "compiler/svelte.js", - "shared.js" - ], - "sourceMap": true, - "instrument": true - } -} diff --git a/packages/frontend-core/node_modules/svelte/register.js b/packages/frontend-core/node_modules/svelte/register.js deleted file mode 100644 index 25f8aa4309..0000000000 --- a/packages/frontend-core/node_modules/svelte/register.js +++ /dev/null @@ -1,56 +0,0 @@ -const fs = require('fs'); -const path = require('path'); -const { compile } = require('./compiler.js'); - -const extensions = ['.svelte', '.html']; -let compileOptions = {}; - -function capitalise(name) { - return name[0].toUpperCase() + name.slice(1); -} - -function register(options = {}) { - if (options.extensions) { - extensions.forEach(deregisterExtension); - options.extensions.forEach(registerExtension); - } - - compileOptions = Object.assign({}, options); - delete compileOptions.extensions; -} - -function deregisterExtension(extension) { - delete require.extensions[extension]; -} - -function registerExtension(extension) { - require.extensions[extension] = function(module, filename) { - const name = path.parse(filename).name - .replace(/^\d/, '_$&') - .replace(/[^a-zA-Z0-9_$]/g, ''); - - const options = Object.assign({}, compileOptions, { - filename, - name: capitalise(name), - generate: 'ssr', - format: 'cjs' - }); - - const { js, warnings } = compile(fs.readFileSync(filename, 'utf-8'), options); - - if (options.dev) { - warnings.forEach(warning => { - console.warn(`\nSvelte Warning in ${warning.filename}:`); - console.warn(warning.message); - console.warn(warning.frame); - }) - } - - return module._compile(js.code, filename); - }; -} - -registerExtension('.svelte'); -registerExtension('.html'); - -module.exports = register; diff --git a/packages/frontend-core/node_modules/svelte/ssr.js b/packages/frontend-core/node_modules/svelte/ssr.js deleted file mode 100644 index a8f9bfc36e..0000000000 --- a/packages/frontend-core/node_modules/svelte/ssr.js +++ /dev/null @@ -1,67 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var internal = require('./internal/index.js'); - -function onMount() { } -function beforeUpdate() { } -function afterUpdate() { } - -Object.defineProperty(exports, 'SvelteComponent', { - enumerable: true, - get: function () { - return internal.SvelteComponentDev; - } -}); -Object.defineProperty(exports, 'SvelteComponentTyped', { - enumerable: true, - get: function () { - return internal.SvelteComponentTyped; - } -}); -Object.defineProperty(exports, 'createEventDispatcher', { - enumerable: true, - get: function () { - return internal.createEventDispatcher; - } -}); -Object.defineProperty(exports, 'getAllContexts', { - enumerable: true, - get: function () { - return internal.getAllContexts; - } -}); -Object.defineProperty(exports, 'getContext', { - enumerable: true, - get: function () { - return internal.getContext; - } -}); -Object.defineProperty(exports, 'hasContext', { - enumerable: true, - get: function () { - return internal.hasContext; - } -}); -Object.defineProperty(exports, 'onDestroy', { - enumerable: true, - get: function () { - return internal.onDestroy; - } -}); -Object.defineProperty(exports, 'setContext', { - enumerable: true, - get: function () { - return internal.setContext; - } -}); -Object.defineProperty(exports, 'tick', { - enumerable: true, - get: function () { - return internal.tick; - } -}); -exports.afterUpdate = afterUpdate; -exports.beforeUpdate = beforeUpdate; -exports.onMount = onMount; diff --git a/packages/frontend-core/node_modules/svelte/ssr.mjs b/packages/frontend-core/node_modules/svelte/ssr.mjs deleted file mode 100644 index b072a07816..0000000000 --- a/packages/frontend-core/node_modules/svelte/ssr.mjs +++ /dev/null @@ -1,7 +0,0 @@ -export { SvelteComponentDev as SvelteComponent, SvelteComponentTyped, createEventDispatcher, getAllContexts, getContext, hasContext, onDestroy, setContext, tick } from './internal/index.mjs'; - -function onMount() { } -function beforeUpdate() { } -function afterUpdate() { } - -export { afterUpdate, beforeUpdate, onMount }; diff --git a/packages/frontend-core/node_modules/svelte/store/index.d.ts b/packages/frontend-core/node_modules/svelte/store/index.d.ts deleted file mode 100644 index fd7820553b..0000000000 --- a/packages/frontend-core/node_modules/svelte/store/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/store/index'; \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/store/index.js b/packages/frontend-core/node_modules/svelte/store/index.js deleted file mode 100644 index bce780ef0f..0000000000 --- a/packages/frontend-core/node_modules/svelte/store/index.js +++ /dev/null @@ -1,114 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var internal = require('../internal/index.js'); - -const subscriber_queue = []; -/** - * Creates a `Readable` store that allows reading by subscription. - * @param value initial value - * @param {StartStopNotifier}start start and stop notifications for subscriptions - */ -function readable(value, start) { - return { - subscribe: writable(value, start).subscribe - }; -} -/** - * Create a `Writable` store that allows both updating and reading by subscription. - * @param {*=}value initial value - * @param {StartStopNotifier=}start start and stop notifications for subscriptions - */ -function writable(value, start = internal.noop) { - let stop; - const subscribers = new Set(); - function set(new_value) { - if (internal.safe_not_equal(value, new_value)) { - value = new_value; - if (stop) { // store is ready - const run_queue = !subscriber_queue.length; - for (const subscriber of subscribers) { - subscriber[1](); - subscriber_queue.push(subscriber, value); - } - if (run_queue) { - for (let i = 0; i < subscriber_queue.length; i += 2) { - subscriber_queue[i][0](subscriber_queue[i + 1]); - } - subscriber_queue.length = 0; - } - } - } - } - function update(fn) { - set(fn(value)); - } - function subscribe(run, invalidate = internal.noop) { - const subscriber = [run, invalidate]; - subscribers.add(subscriber); - if (subscribers.size === 1) { - stop = start(set) || internal.noop; - } - run(value); - return () => { - subscribers.delete(subscriber); - if (subscribers.size === 0) { - stop(); - stop = null; - } - }; - } - return { set, update, subscribe }; -} -function derived(stores, fn, initial_value) { - const single = !Array.isArray(stores); - const stores_array = single - ? [stores] - : stores; - const auto = fn.length < 2; - return readable(initial_value, (set) => { - let inited = false; - const values = []; - let pending = 0; - let cleanup = internal.noop; - const sync = () => { - if (pending) { - return; - } - cleanup(); - const result = fn(single ? values[0] : values, set); - if (auto) { - set(result); - } - else { - cleanup = internal.is_function(result) ? result : internal.noop; - } - }; - const unsubscribers = stores_array.map((store, i) => internal.subscribe(store, (value) => { - values[i] = value; - pending &= ~(1 << i); - if (inited) { - sync(); - } - }, () => { - pending |= (1 << i); - })); - inited = true; - sync(); - return function stop() { - internal.run_all(unsubscribers); - cleanup(); - }; - }); -} - -Object.defineProperty(exports, 'get', { - enumerable: true, - get: function () { - return internal.get_store_value; - } -}); -exports.derived = derived; -exports.readable = readable; -exports.writable = writable; diff --git a/packages/frontend-core/node_modules/svelte/store/index.mjs b/packages/frontend-core/node_modules/svelte/store/index.mjs deleted file mode 100644 index 0b4a7b414b..0000000000 --- a/packages/frontend-core/node_modules/svelte/store/index.mjs +++ /dev/null @@ -1,103 +0,0 @@ -import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs'; -export { get_store_value as get } from '../internal/index.mjs'; - -const subscriber_queue = []; -/** - * Creates a `Readable` store that allows reading by subscription. - * @param value initial value - * @param {StartStopNotifier}start start and stop notifications for subscriptions - */ -function readable(value, start) { - return { - subscribe: writable(value, start).subscribe - }; -} -/** - * Create a `Writable` store that allows both updating and reading by subscription. - * @param {*=}value initial value - * @param {StartStopNotifier=}start start and stop notifications for subscriptions - */ -function writable(value, start = noop) { - let stop; - const subscribers = new Set(); - function set(new_value) { - if (safe_not_equal(value, new_value)) { - value = new_value; - if (stop) { // store is ready - const run_queue = !subscriber_queue.length; - for (const subscriber of subscribers) { - subscriber[1](); - subscriber_queue.push(subscriber, value); - } - if (run_queue) { - for (let i = 0; i < subscriber_queue.length; i += 2) { - subscriber_queue[i][0](subscriber_queue[i + 1]); - } - subscriber_queue.length = 0; - } - } - } - } - function update(fn) { - set(fn(value)); - } - function subscribe(run, invalidate = noop) { - const subscriber = [run, invalidate]; - subscribers.add(subscriber); - if (subscribers.size === 1) { - stop = start(set) || noop; - } - run(value); - return () => { - subscribers.delete(subscriber); - if (subscribers.size === 0) { - stop(); - stop = null; - } - }; - } - return { set, update, subscribe }; -} -function derived(stores, fn, initial_value) { - const single = !Array.isArray(stores); - const stores_array = single - ? [stores] - : stores; - const auto = fn.length < 2; - return readable(initial_value, (set) => { - let inited = false; - const values = []; - let pending = 0; - let cleanup = noop; - const sync = () => { - if (pending) { - return; - } - cleanup(); - const result = fn(single ? values[0] : values, set); - if (auto) { - set(result); - } - else { - cleanup = is_function(result) ? result : noop; - } - }; - const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => { - values[i] = value; - pending &= ~(1 << i); - if (inited) { - sync(); - } - }, () => { - pending |= (1 << i); - })); - inited = true; - sync(); - return function stop() { - run_all(unsubscribers); - cleanup(); - }; - }); -} - -export { derived, readable, writable }; diff --git a/packages/frontend-core/node_modules/svelte/store/package.json b/packages/frontend-core/node_modules/svelte/store/package.json deleted file mode 100644 index 598aeeaf51..0000000000 --- a/packages/frontend-core/node_modules/svelte/store/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/transition/index.d.ts b/packages/frontend-core/node_modules/svelte/transition/index.d.ts deleted file mode 100644 index 096460ee47..0000000000 --- a/packages/frontend-core/node_modules/svelte/transition/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/transition/index'; \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/transition/index.js b/packages/frontend-core/node_modules/svelte/transition/index.js deleted file mode 100644 index ce54b6e29b..0000000000 --- a/packages/frontend-core/node_modules/svelte/transition/index.js +++ /dev/null @@ -1,192 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var easing = require('../easing/index.js'); -var internal = require('../internal/index.js'); - -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ - -function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} - -function blur(node, { delay = 0, duration = 400, easing: easing$1 = easing.cubicInOut, amount = 5, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const f = style.filter === 'none' ? '' : style.filter; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing: easing$1, - css: (_t, u) => `opacity: ${target_opacity - (od * u)}; filter: ${f} blur(${u * amount}px);` - }; -} -function fade(node, { delay = 0, duration = 400, easing: easing$1 = easing.linear } = {}) { - const o = +getComputedStyle(node).opacity; - return { - delay, - duration, - easing: easing$1, - css: t => `opacity: ${t * o}` - }; -} -function fly(node, { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut, x = 0, y = 0, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing: easing$1, - css: (t, u) => ` - transform: ${transform} translate(${(1 - t) * x}px, ${(1 - t) * y}px); - opacity: ${target_opacity - (od * u)}` - }; -} -function slide(node, { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut } = {}) { - const style = getComputedStyle(node); - const opacity = +style.opacity; - const height = parseFloat(style.height); - const padding_top = parseFloat(style.paddingTop); - const padding_bottom = parseFloat(style.paddingBottom); - const margin_top = parseFloat(style.marginTop); - const margin_bottom = parseFloat(style.marginBottom); - const border_top_width = parseFloat(style.borderTopWidth); - const border_bottom_width = parseFloat(style.borderBottomWidth); - return { - delay, - duration, - easing: easing$1, - css: t => 'overflow: hidden;' + - `opacity: ${Math.min(t * 20, 1) * opacity};` + - `height: ${t * height}px;` + - `padding-top: ${t * padding_top}px;` + - `padding-bottom: ${t * padding_bottom}px;` + - `margin-top: ${t * margin_top}px;` + - `margin-bottom: ${t * margin_bottom}px;` + - `border-top-width: ${t * border_top_width}px;` + - `border-bottom-width: ${t * border_bottom_width}px;` - }; -} -function scale(node, { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut, start = 0, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const sd = 1 - start; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing: easing$1, - css: (_t, u) => ` - transform: ${transform} scale(${1 - (sd * u)}); - opacity: ${target_opacity - (od * u)} - ` - }; -} -function draw(node, { delay = 0, speed, duration, easing: easing$1 = easing.cubicInOut } = {}) { - let len = node.getTotalLength(); - const style = getComputedStyle(node); - if (style.strokeLinecap !== 'butt') { - len += parseInt(style.strokeWidth); - } - if (duration === undefined) { - if (speed === undefined) { - duration = 800; - } - else { - duration = len / speed; - } - } - else if (typeof duration === 'function') { - duration = duration(len); - } - return { - delay, - duration, - easing: easing$1, - css: (t, u) => `stroke-dasharray: ${t * len} ${u * len}` - }; -} -function crossfade(_a) { - var { fallback } = _a, defaults = __rest(_a, ["fallback"]); - const to_receive = new Map(); - const to_send = new Map(); - function crossfade(from, node, params) { - const { delay = 0, duration = d => Math.sqrt(d) * 30, easing: easing$1 = easing.cubicOut } = internal.assign(internal.assign({}, defaults), params); - const to = node.getBoundingClientRect(); - const dx = from.left - to.left; - const dy = from.top - to.top; - const dw = from.width / to.width; - const dh = from.height / to.height; - const d = Math.sqrt(dx * dx + dy * dy); - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const opacity = +style.opacity; - return { - delay, - duration: internal.is_function(duration) ? duration(d) : duration, - easing: easing$1, - css: (t, u) => ` - opacity: ${t * opacity}; - transform-origin: top left; - transform: ${transform} translate(${u * dx}px,${u * dy}px) scale(${t + (1 - t) * dw}, ${t + (1 - t) * dh}); - ` - }; - } - function transition(items, counterparts, intro) { - return (node, params) => { - items.set(params.key, { - rect: node.getBoundingClientRect() - }); - return () => { - if (counterparts.has(params.key)) { - const { rect } = counterparts.get(params.key); - counterparts.delete(params.key); - return crossfade(rect, node, params); - } - // if the node is disappearing altogether - // (i.e. wasn't claimed by the other list) - // then we need to supply an outro - items.delete(params.key); - return fallback && fallback(node, params, intro); - }; - }; - } - return [ - transition(to_send, to_receive, false), - transition(to_receive, to_send, true) - ]; -} - -exports.blur = blur; -exports.crossfade = crossfade; -exports.draw = draw; -exports.fade = fade; -exports.fly = fly; -exports.scale = scale; -exports.slide = slide; diff --git a/packages/frontend-core/node_modules/svelte/transition/index.mjs b/packages/frontend-core/node_modules/svelte/transition/index.mjs deleted file mode 100644 index ebc6eb958b..0000000000 --- a/packages/frontend-core/node_modules/svelte/transition/index.mjs +++ /dev/null @@ -1,182 +0,0 @@ -import { cubicInOut, linear, cubicOut } from '../easing/index.mjs'; -import { is_function, assign } from '../internal/index.mjs'; - -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ - -function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} - -function blur(node, { delay = 0, duration = 400, easing = cubicInOut, amount = 5, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const f = style.filter === 'none' ? '' : style.filter; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing, - css: (_t, u) => `opacity: ${target_opacity - (od * u)}; filter: ${f} blur(${u * amount}px);` - }; -} -function fade(node, { delay = 0, duration = 400, easing = linear } = {}) { - const o = +getComputedStyle(node).opacity; - return { - delay, - duration, - easing, - css: t => `opacity: ${t * o}` - }; -} -function fly(node, { delay = 0, duration = 400, easing = cubicOut, x = 0, y = 0, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing, - css: (t, u) => ` - transform: ${transform} translate(${(1 - t) * x}px, ${(1 - t) * y}px); - opacity: ${target_opacity - (od * u)}` - }; -} -function slide(node, { delay = 0, duration = 400, easing = cubicOut } = {}) { - const style = getComputedStyle(node); - const opacity = +style.opacity; - const height = parseFloat(style.height); - const padding_top = parseFloat(style.paddingTop); - const padding_bottom = parseFloat(style.paddingBottom); - const margin_top = parseFloat(style.marginTop); - const margin_bottom = parseFloat(style.marginBottom); - const border_top_width = parseFloat(style.borderTopWidth); - const border_bottom_width = parseFloat(style.borderBottomWidth); - return { - delay, - duration, - easing, - css: t => 'overflow: hidden;' + - `opacity: ${Math.min(t * 20, 1) * opacity};` + - `height: ${t * height}px;` + - `padding-top: ${t * padding_top}px;` + - `padding-bottom: ${t * padding_bottom}px;` + - `margin-top: ${t * margin_top}px;` + - `margin-bottom: ${t * margin_bottom}px;` + - `border-top-width: ${t * border_top_width}px;` + - `border-bottom-width: ${t * border_bottom_width}px;` - }; -} -function scale(node, { delay = 0, duration = 400, easing = cubicOut, start = 0, opacity = 0 } = {}) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const sd = 1 - start; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing, - css: (_t, u) => ` - transform: ${transform} scale(${1 - (sd * u)}); - opacity: ${target_opacity - (od * u)} - ` - }; -} -function draw(node, { delay = 0, speed, duration, easing = cubicInOut } = {}) { - let len = node.getTotalLength(); - const style = getComputedStyle(node); - if (style.strokeLinecap !== 'butt') { - len += parseInt(style.strokeWidth); - } - if (duration === undefined) { - if (speed === undefined) { - duration = 800; - } - else { - duration = len / speed; - } - } - else if (typeof duration === 'function') { - duration = duration(len); - } - return { - delay, - duration, - easing, - css: (t, u) => `stroke-dasharray: ${t * len} ${u * len}` - }; -} -function crossfade(_a) { - var { fallback } = _a, defaults = __rest(_a, ["fallback"]); - const to_receive = new Map(); - const to_send = new Map(); - function crossfade(from, node, params) { - const { delay = 0, duration = d => Math.sqrt(d) * 30, easing = cubicOut } = assign(assign({}, defaults), params); - const to = node.getBoundingClientRect(); - const dx = from.left - to.left; - const dy = from.top - to.top; - const dw = from.width / to.width; - const dh = from.height / to.height; - const d = Math.sqrt(dx * dx + dy * dy); - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const opacity = +style.opacity; - return { - delay, - duration: is_function(duration) ? duration(d) : duration, - easing, - css: (t, u) => ` - opacity: ${t * opacity}; - transform-origin: top left; - transform: ${transform} translate(${u * dx}px,${u * dy}px) scale(${t + (1 - t) * dw}, ${t + (1 - t) * dh}); - ` - }; - } - function transition(items, counterparts, intro) { - return (node, params) => { - items.set(params.key, { - rect: node.getBoundingClientRect() - }); - return () => { - if (counterparts.has(params.key)) { - const { rect } = counterparts.get(params.key); - counterparts.delete(params.key); - return crossfade(rect, node, params); - } - // if the node is disappearing altogether - // (i.e. wasn't claimed by the other list) - // then we need to supply an outro - items.delete(params.key); - return fallback && fallback(node, params, intro); - }; - }; - } - return [ - transition(to_send, to_receive, false), - transition(to_receive, to_send, true) - ]; -} - -export { blur, crossfade, draw, fade, fly, scale, slide }; diff --git a/packages/frontend-core/node_modules/svelte/transition/package.json b/packages/frontend-core/node_modules/svelte/transition/package.json deleted file mode 100644 index 598aeeaf51..0000000000 --- a/packages/frontend-core/node_modules/svelte/transition/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/Stats.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/Stats.d.ts deleted file mode 100644 index 0e01e61f98..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/Stats.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -interface Timing { - label: string; - start: number; - end: number; - children: Timing[]; -} -export default class Stats { - start_time: number; - current_timing: Timing; - current_children: Timing[]; - timings: Timing[]; - stack: Timing[]; - constructor(); - start(label: any): void; - stop(label: any): void; - render(): { - timings: { - total: number; - }; - }; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/Component.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/Component.d.ts deleted file mode 100644 index 8ed8da940d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/Component.d.ts +++ /dev/null @@ -1,124 +0,0 @@ -import Stats from '../Stats'; -import { Scope } from './utils/scope'; -import Stylesheet from './css/Stylesheet'; -import Fragment from './nodes/Fragment'; -import { Ast, CompileOptions, Var, Warning, CssResult } from '../interfaces'; -import TemplateScope from './nodes/shared/TemplateScope'; -import Slot from './nodes/Slot'; -import { Node, ImportDeclaration, ExportNamedDeclaration, Identifier, FunctionDeclaration } from 'estree'; -import Element from './nodes/Element'; -interface ComponentOptions { - namespace?: string; - tag?: string; - immutable?: boolean; - accessors?: boolean; - preserveWhitespace?: boolean; -} -export default class Component { - stats: Stats; - warnings: Warning[]; - ignores: Set; - ignore_stack: Array>; - ast: Ast; - original_ast: Ast; - source: string; - name: Identifier; - compile_options: CompileOptions; - fragment: Fragment; - module_scope: Scope; - instance_scope: Scope; - instance_scope_map: WeakMap; - component_options: ComponentOptions; - namespace: string; - tag: string; - accessors: boolean; - vars: Var[]; - var_lookup: Map; - imports: ImportDeclaration[]; - exports_from: ExportNamedDeclaration[]; - instance_exports_from: ExportNamedDeclaration[]; - hoistable_nodes: Set; - node_for_declaration: Map; - partly_hoisted: Array<(Node | Node[])>; - fully_hoisted: Array<(Node | Node[])>; - reactive_declarations: Array<{ - assignees: Set; - dependencies: Set; - node: Node; - declaration: Node; - }>; - reactive_declaration_nodes: Set; - has_reactive_assignments: boolean; - injected_reactive_declaration_vars: Set; - helpers: Map; - globals: Map; - indirect_dependencies: Map>; - file: string; - locate: (c: number) => { - line: number; - column: number; - }; - elements: Element[]; - stylesheet: Stylesheet; - aliases: Map; - used_names: Set; - globally_used_names: Set; - slots: Map; - slot_outlets: Set; - constructor(ast: Ast, source: string, name: string, compile_options: CompileOptions, stats: Stats, warnings: Warning[]); - add_var(variable: Var, add_to_lookup?: boolean): void; - add_reference(name: string): void; - alias(name: string): Identifier; - apply_stylesheet(element: Element): void; - global(name: string): Identifier; - generate(result?: { - js: Node[]; - css: CssResult; - }): { - js: any; - css: any; - ast: Ast; - warnings: Warning[]; - vars: Var[]; - stats: { - timings: { - total: number; - }; - }; - }; - get_unique_name(name: string, scope?: Scope): Identifier; - get_unique_name_maker(): (name: string) => Identifier; - get_vars_report(): Var[]; - error(pos: { - start: number; - end: number; - }, e: { - code: string; - message: string; - }): void; - warn(pos: { - start: number; - end: number; - }, warning: { - code: string; - message: string; - }): void; - extract_imports(node: any): void; - extract_exports(node: any, module_script?: boolean): void | FunctionDeclaration | import("estree").VariableDeclaration | import("estree").ClassDeclaration; - private _extract_exports; - extract_javascript(script: any): any; - walk_module_js(): void; - walk_instance_js_pre_template(): void; - walk_instance_js_post_template(): void; - post_template_walk(): void; - track_references_and_mutations(): void; - warn_on_undefined_store_value_references(node: Node, parent: Node, prop: string, scope: Scope): void; - loop_protect(node: any, scope: Scope, timeout: number): Node | null; - rewrite_props(get_insert: (variable: Var) => Node[]): void; - hoist_instance_declarations(): void; - extract_reactive_declarations(): void; - warn_if_undefined(name: string, node: any, template_scope: TemplateScope): void; - push_ignores(ignores: any): void; - pop_ignores(): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_errors.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_errors.d.ts deleted file mode 100644 index cb0ff5c3b5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_errors.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_warnings.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_warnings.d.ts deleted file mode 100644 index cb0ff5c3b5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/compiler_warnings.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/create_module.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/create_module.d.ts deleted file mode 100644 index 05654ec6bb..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/create_module.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ModuleFormat } from '../interfaces'; -import { Identifier, ImportDeclaration, ExportNamedDeclaration } from 'estree'; -interface Export { - name: string; - as: string; -} -export default function create_module(program: any, format: ModuleFormat, name: Identifier, banner: string, sveltePath: string, helpers: Array<{ - name: string; - alias: Identifier; -}>, globals: Array<{ - name: string; - alias: Identifier; -}>, imports: ImportDeclaration[], module_exports: Export[], exports_from: ExportNamedDeclaration[]): void; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Selector.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Selector.d.ts deleted file mode 100644 index ee5339a9dc..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Selector.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import MagicString from 'magic-string'; -import Stylesheet from './Stylesheet'; -import { CssNode } from './interfaces'; -import Component from '../Component'; -import Element from '../nodes/Element'; -export default class Selector { - node: CssNode; - stylesheet: Stylesheet; - blocks: Block[]; - local_blocks: Block[]; - used: boolean; - constructor(node: CssNode, stylesheet: Stylesheet); - apply(node: Element): void; - minify(code: MagicString): void; - transform(code: MagicString, attr: string, max_amount_class_specificity_increased: number): void; - validate(component: Component): void; - validate_global_with_multiple_selectors(component: Component): void; - get_amount_class_specificity_increased(): number; -} -declare class Block { - host: boolean; - root: boolean; - combinator: CssNode; - selectors: CssNode[]; - start: number; - end: number; - should_encapsulate: boolean; - constructor(combinator: CssNode); - add(selector: CssNode): void; - get global(): boolean; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Stylesheet.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Stylesheet.d.ts deleted file mode 100644 index 5f80d2a27f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/Stylesheet.d.ts +++ /dev/null @@ -1,67 +0,0 @@ -import MagicString from 'magic-string'; -import Selector from './Selector'; -import Element from '../nodes/Element'; -import { Ast, CssHashGetter } from '../../interfaces'; -import Component from '../Component'; -import { CssNode } from './interfaces'; -declare class Rule { - selectors: Selector[]; - declarations: Declaration[]; - node: CssNode; - parent: Atrule; - constructor(node: CssNode, stylesheet: any, parent?: Atrule); - apply(node: Element): void; - is_used(dev: boolean): boolean; - minify(code: MagicString, _dev: boolean): void; - transform(code: MagicString, id: string, keyframes: Map, max_amount_class_specificity_increased: number): boolean; - validate(component: Component): void; - warn_on_unused_selector(handler: (selector: Selector) => void): void; - get_max_amount_class_specificity_increased(): number; -} -declare class Declaration { - node: CssNode; - constructor(node: CssNode); - transform(code: MagicString, keyframes: Map): void; - minify(code: MagicString): void; -} -declare class Atrule { - node: CssNode; - children: Array; - declarations: Declaration[]; - constructor(node: CssNode); - apply(node: Element): void; - is_used(_dev: boolean): boolean; - minify(code: MagicString, dev: boolean): void; - transform(code: MagicString, id: string, keyframes: Map, max_amount_class_specificity_increased: number): void; - validate(component: Component): void; - warn_on_unused_selector(handler: (selector: Selector) => void): void; - get_max_amount_class_specificity_increased(): any; -} -export default class Stylesheet { - source: string; - ast: Ast; - filename: string; - dev: boolean; - has_styles: boolean; - id: string; - children: Array; - keyframes: Map; - nodes_with_css_class: Set; - constructor({ source, ast, component_name, filename, dev, get_css_hash }: { - source: string; - ast: Ast; - filename: string | undefined; - component_name: string | undefined; - dev: boolean; - get_css_hash: CssHashGetter; - }); - apply(node: Element): void; - reify(): void; - render(file: string, should_transform_selectors: boolean): { - code: string; - map: import("magic-string").SourceMap; - }; - validate(component: Component): void; - warn_on_unused_selectors(component: Component): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/gather_possible_values.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/gather_possible_values.d.ts deleted file mode 100644 index ca26ba94b3..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/gather_possible_values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Node } from 'estree'; -export declare const UNKNOWN: {}; -export declare function gather_possible_values(node: Node, set: Set): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/interfaces.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/interfaces.d.ts deleted file mode 100644 index 6bbee64160..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/css/interfaces.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export interface CssNode { - type: string; - start: number; - end: number; - [prop_name: string]: any; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/index.d.ts deleted file mode 100644 index d5764b0a64..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/index.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { CompileOptions, Warning } from '../interfaces'; -export default function compile(source: string, options?: CompileOptions): { - js: any; - css: any; - ast: import("../interfaces").Ast; - warnings: Warning[]; - vars: import("../interfaces").Var[]; - stats: { - timings: { - total: number; - }; - }; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/internal_exports.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/internal_exports.d.ts deleted file mode 100644 index 1829c318fb..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/internal_exports.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare const _default: Set; -export default _default; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Action.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Action.d.ts deleted file mode 100644 index cfbf7e7746..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Action.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { Directive } from '../../interfaces'; -export default class Action extends Node { - type: 'Action'; - name: string; - expression: Expression; - uses_context: boolean; - template_scope: TemplateScope; - constructor(component: Component, parent: Node, scope: TemplateScope, info: Directive); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Animation.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Animation.d.ts deleted file mode 100644 index 2bc43379ce..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Animation.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Element from './Element'; -export default class Animation extends Node { - type: 'Animation'; - name: string; - expression: Expression; - constructor(component: Component, parent: Element, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Attribute.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Attribute.d.ts deleted file mode 100644 index ed53713307..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Attribute.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import Component from '../Component'; -import Node from './shared/Node'; -import Element from './Element'; -import Text from './Text'; -import Expression from './shared/Expression'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class Attribute extends Node { - type: 'Attribute' | 'Spread'; - start: number; - end: number; - scope: TemplateScope; - component: Component; - parent: Element; - name: string; - is_spread: boolean; - is_true: boolean; - is_static: boolean; - expression?: Expression; - chunks: Array; - dependencies: Set; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); - get_dependencies(): string[]; - get_value(block: any): import("estree").Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier | { - type: string; - value: string; - }; - get_static_value(): string | true; - should_cache(): boolean; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/AwaitBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/AwaitBlock.d.ts deleted file mode 100644 index 0a5130787f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/AwaitBlock.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import Node from './shared/Node'; -import PendingBlock from './PendingBlock'; -import ThenBlock from './ThenBlock'; -import CatchBlock from './CatchBlock'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import { Context } from './shared/Context'; -import { Node as ESTreeNode } from 'estree'; -export default class AwaitBlock extends Node { - type: 'AwaitBlock'; - expression: Expression; - then_contexts: Context[]; - catch_contexts: Context[]; - then_node: ESTreeNode | null; - catch_node: ESTreeNode | null; - pending: PendingBlock; - then: ThenBlock; - catch: CatchBlock; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Binding.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Binding.d.ts deleted file mode 100644 index 43769b2ac6..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Binding.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { Node as ESTreeNode } from 'estree'; -import { TemplateNode } from '../../interfaces'; -import Element from './Element'; -import InlineComponent from './InlineComponent'; -import Window from './Window'; -export default class Binding extends Node { - type: 'Binding'; - name: string; - expression: Expression; - raw_expression: ESTreeNode; - is_contextual: boolean; - is_readonly: boolean; - constructor(component: Component, parent: Element | InlineComponent | Window, scope: TemplateScope, info: TemplateNode); - is_readonly_media_attribute(): boolean; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Body.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Body.d.ts deleted file mode 100644 index f4e2420a2f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Body.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Node from './shared/Node'; -import EventHandler from './EventHandler'; -import Action from './Action'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { Element } from '../../interfaces'; -export default class Body extends Node { - type: 'Body'; - handlers: EventHandler[]; - actions: Action[]; - constructor(component: Component, parent: Node, scope: TemplateScope, info: Element); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/CatchBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/CatchBlock.d.ts deleted file mode 100644 index 1b0ce28e8a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/CatchBlock.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import TemplateScope from './shared/TemplateScope'; -import AbstractBlock from './shared/AbstractBlock'; -import AwaitBlock from './AwaitBlock'; -import Component from '../Component'; -import { TemplateNode } from '../../interfaces'; -import ConstTag from './ConstTag'; -export default class CatchBlock extends AbstractBlock { - type: 'CatchBlock'; - scope: TemplateScope; - const_tags: ConstTag[]; - constructor(component: Component, parent: AwaitBlock, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Class.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Class.d.ts deleted file mode 100644 index d3365c7382..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Class.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import { TemplateNode } from '../../interfaces'; -import TemplateScope from './shared/TemplateScope'; -import Component from '../Component'; -export default class Class extends Node { - type: 'Class'; - name: string; - expression: Expression; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Comment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Comment.d.ts deleted file mode 100644 index 6fb0cea278..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Comment.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { TemplateNode } from '../../interfaces'; -import Component from '../Component'; -import Node from './shared/Node'; -import TemplateScope from './shared/TemplateScope'; -export default class Comment extends Node { - type: 'Comment'; - data: string; - ignores: string[]; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ConstTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ConstTag.d.ts deleted file mode 100644 index 1ecf2019c9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ConstTag.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { Context } from './shared/Context'; -import { ConstTag as ConstTagType } from '../../interfaces'; -import { INodeAllowConstTag } from './interfaces'; -export default class ConstTag extends Node { - type: 'ConstTag'; - expression: Expression; - contexts: Context[]; - node: ConstTagType; - scope: TemplateScope; - assignees: Set; - dependencies: Set; - constructor(component: Component, parent: INodeAllowConstTag, scope: TemplateScope, info: ConstTagType); - parse_expression(): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DebugTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DebugTag.d.ts deleted file mode 100644 index 2241e7ace2..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DebugTag.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import { INode } from './interfaces'; -export default class DebugTag extends Node { - type: 'DebugTag'; - expressions: Expression[]; - constructor(component: Component, parent: INode, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DefaultSlotTemplate.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DefaultSlotTemplate.d.ts deleted file mode 100644 index 77729362b6..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/DefaultSlotTemplate.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import Node from './shared/Node'; -import Let from './Let'; -import { INode } from './interfaces'; -export default class DefaultSlotTemplate extends Node { - type: 'SlotTemplate'; - scope: TemplateScope; - children: INode[]; - lets: Let[]; - slot_template_name: string; - constructor(component: Component, parent: INode, scope: TemplateScope, info: any, lets: Let[], children: INode[]); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EachBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EachBlock.d.ts deleted file mode 100644 index 079db9c832..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EachBlock.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import ElseBlock from './ElseBlock'; -import Expression from './shared/Expression'; -import TemplateScope from './shared/TemplateScope'; -import AbstractBlock from './shared/AbstractBlock'; -import ConstTag from './ConstTag'; -import { Context } from './shared/Context'; -import { Node } from 'estree'; -import Component from '../Component'; -import { TemplateNode } from '../../interfaces'; -export default class EachBlock extends AbstractBlock { - type: 'EachBlock'; - expression: Expression; - context_node: Node; - iterations: string; - index: string; - context: string; - key: Expression; - scope: TemplateScope; - contexts: Context[]; - const_tags: ConstTag[]; - has_animation: boolean; - has_binding: boolean; - has_index_binding: boolean; - else?: ElseBlock; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Element.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Element.d.ts deleted file mode 100644 index 318ab3b128..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Element.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import Node from './shared/Node'; -import Attribute from './Attribute'; -import Binding from './Binding'; -import EventHandler from './EventHandler'; -import Transition from './Transition'; -import Animation from './Animation'; -import Action from './Action'; -import Class from './Class'; -import StyleDirective from './StyleDirective'; -import Let from './Let'; -import TemplateScope from './shared/TemplateScope'; -import { INode } from './interfaces'; -import Component from '../Component'; -export default class Element extends Node { - type: 'Element'; - name: string; - scope: TemplateScope; - attributes: Attribute[]; - actions: Action[]; - bindings: Binding[]; - classes: Class[]; - styles: StyleDirective[]; - handlers: EventHandler[]; - lets: Let[]; - intro?: Transition; - outro?: Transition; - animation?: Animation; - children: INode[]; - namespace: string; - needs_manual_style_scoping: boolean; - constructor(component: Component, parent: Node, scope: TemplateScope, info: any); - validate(): void; - validate_attributes(): void; - validate_attributes_a11y(): void; - validate_special_cases(): void; - validate_bindings_foreign(): void; - validate_bindings(): void; - validate_content(): void; - validate_event_handlers(): void; - is_media_node(): boolean; - add_css_class(): void; - get slot_template_name(): string; - optimise(): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ElseBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ElseBlock.d.ts deleted file mode 100644 index bc371e0e9a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ElseBlock.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import AbstractBlock from './shared/AbstractBlock'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Node from './shared/Node'; -export default class ElseBlock extends AbstractBlock { - type: 'ElseBlock'; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EventHandler.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EventHandler.d.ts deleted file mode 100644 index d7c58de006..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/EventHandler.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import { Identifier } from 'estree'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class EventHandler extends Node { - type: 'EventHandler'; - name: string; - modifiers: Set; - expression: Expression; - handler_name: Identifier; - uses_context: boolean; - can_make_passive: boolean; - constructor(component: Component, parent: Node, template_scope: TemplateScope, info: TemplateNode); - get reassigned(): boolean; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Fragment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Fragment.d.ts deleted file mode 100644 index a382218d80..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Fragment.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Node from './shared/Node'; -import Component from '../Component'; -import Block from '../render_dom/Block'; -import TemplateScope from './shared/TemplateScope'; -import { INode } from './interfaces'; -import { TemplateNode } from '../../interfaces'; -export default class Fragment extends Node { - type: 'Fragment'; - block: Block; - children: INode[]; - scope: TemplateScope; - constructor(component: Component, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Head.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Head.d.ts deleted file mode 100644 index 736bbc4a95..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Head.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import Node from './shared/Node'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class Head extends Node { - type: 'Head'; - children: any[]; - id: string; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/IfBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/IfBlock.d.ts deleted file mode 100644 index 14418cb073..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/IfBlock.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import ElseBlock from './ElseBlock'; -import Expression from './shared/Expression'; -import AbstractBlock from './shared/AbstractBlock'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Node from './shared/Node'; -export default class IfBlock extends AbstractBlock { - type: 'IfBlock'; - expression: Expression; - else: ElseBlock; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/InlineComponent.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/InlineComponent.d.ts deleted file mode 100644 index f09552bb52..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/InlineComponent.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import Node from './shared/Node'; -import Attribute from './Attribute'; -import Binding from './Binding'; -import EventHandler from './EventHandler'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import Let from './Let'; -import TemplateScope from './shared/TemplateScope'; -import { INode } from './interfaces'; -import { TemplateNode } from '../../interfaces'; -export default class InlineComponent extends Node { - type: 'InlineComponent'; - name: string; - expression: Expression; - attributes: Attribute[]; - bindings: Binding[]; - handlers: EventHandler[]; - lets: Let[]; - css_custom_properties: Attribute[]; - children: INode[]; - scope: TemplateScope; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); - get slot_template_name(): string; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/KeyBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/KeyBlock.d.ts deleted file mode 100644 index 38c62be80f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/KeyBlock.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import Expression from './shared/Expression'; -import AbstractBlock from './shared/AbstractBlock'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Node from './shared/Node'; -export default class KeyBlock extends AbstractBlock { - type: 'KeyBlock'; - expression: Expression; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Let.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Let.d.ts deleted file mode 100644 index 6fb24b118b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Let.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Node from './shared/Node'; -import Component from '../Component'; -import { Identifier } from 'estree'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class Let extends Node { - type: 'Let'; - name: Identifier; - value: Identifier; - names: string[]; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/MustacheTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/MustacheTag.d.ts deleted file mode 100644 index f659e3d443..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/MustacheTag.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import Tag from './shared/Tag'; -export default class MustacheTag extends Tag { - type: 'MustacheTag'; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Options.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Options.d.ts deleted file mode 100644 index d114122fb5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Options.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import Node from './shared/Node'; -export default class Options extends Node { - type: 'Options'; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/PendingBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/PendingBlock.d.ts deleted file mode 100644 index 3b3ffa36da..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/PendingBlock.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import AbstractBlock from './shared/AbstractBlock'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Node from './shared/Node'; -export default class PendingBlock extends AbstractBlock { - type: 'PendingBlock'; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/RawMustacheTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/RawMustacheTag.d.ts deleted file mode 100644 index 98b279d86b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/RawMustacheTag.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import Tag from './shared/Tag'; -export default class RawMustacheTag extends Tag { - type: 'RawMustacheTag'; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Slot.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Slot.d.ts deleted file mode 100644 index b27476b3c4..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Slot.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Element from './Element'; -import Attribute from './Attribute'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { INode } from './interfaces'; -import { TemplateNode } from '../../interfaces'; -export default class Slot extends Element { - type: 'Element'; - name: string; - children: INode[]; - slot_name: string; - values: Map; - constructor(component: Component, parent: INode, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/SlotTemplate.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/SlotTemplate.d.ts deleted file mode 100644 index d7aa649e5d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/SlotTemplate.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import Node from './shared/Node'; -import Let from './Let'; -import Attribute from './Attribute'; -import { INode } from './interfaces'; -import ConstTag from './ConstTag'; -export default class SlotTemplate extends Node { - type: 'SlotTemplate'; - scope: TemplateScope; - children: INode[]; - lets: Let[]; - const_tags: ConstTag[]; - slot_attribute: Attribute; - slot_template_name: string; - constructor(component: Component, parent: INode, scope: TemplateScope, info: any); - validate_slot_template_placement(): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Style.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Style.d.ts deleted file mode 100644 index 72b4f73a44..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Style.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import { TemplateNode } from '../../interfaces'; -import TemplateScope from './shared/TemplateScope'; -import Component from '../Component'; -export default class Style extends Node { - type: 'Style'; - name: string; - expression: Expression; - should_cache: boolean; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/StyleDirective.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/StyleDirective.d.ts deleted file mode 100644 index c7f36a2e6f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/StyleDirective.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { TemplateNode } from '../../interfaces'; -import Component from '../Component'; -import Expression from './shared/Expression'; -import Node from './shared/Node'; -import TemplateScope from './shared/TemplateScope'; -export default class StyleDirective extends Node { - type: 'StyleDirective'; - name: string; - expression: Expression; - should_cache: boolean; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Text.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Text.d.ts deleted file mode 100644 index e0f4570d09..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Text.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Node from './shared/Node'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { INode } from './interfaces'; -import { TemplateNode } from '../../interfaces'; -export default class Text extends Node { - type: 'Text'; - data: string; - synthetic: boolean; - constructor(component: Component, parent: INode, scope: TemplateScope, info: TemplateNode); - should_skip(): any; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ThenBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ThenBlock.d.ts deleted file mode 100644 index 5f72d357a5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/ThenBlock.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import TemplateScope from './shared/TemplateScope'; -import AbstractBlock from './shared/AbstractBlock'; -import AwaitBlock from './AwaitBlock'; -import Component from '../Component'; -import { TemplateNode } from '../../interfaces'; -import ConstTag from './ConstTag'; -export default class ThenBlock extends AbstractBlock { - type: 'ThenBlock'; - scope: TemplateScope; - const_tags: ConstTag[]; - constructor(component: Component, parent: AwaitBlock, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Title.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Title.d.ts deleted file mode 100644 index 8288a0583a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Title.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import Node from './shared/Node'; -import { Children } from './shared/map_children'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class Title extends Node { - type: 'Title'; - children: Children; - should_cache: boolean; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Transition.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Transition.d.ts deleted file mode 100644 index 7ce9dc7b08..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Transition.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Node from './shared/Node'; -import Expression from './shared/Expression'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -import Element from './Element'; -export default class Transition extends Node { - type: 'Transition'; - name: string; - directive: string; - expression: Expression; - is_local: boolean; - constructor(component: Component, parent: Element, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Window.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Window.d.ts deleted file mode 100644 index 183a8cc13f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/Window.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Node from './shared/Node'; -import Binding from './Binding'; -import EventHandler from './EventHandler'; -import Action from './Action'; -import Component from '../Component'; -import TemplateScope from './shared/TemplateScope'; -import { TemplateNode } from '../../interfaces'; -export default class Window extends Node { - type: 'Window'; - handlers: EventHandler[]; - bindings: Binding[]; - actions: Action[]; - constructor(component: Component, parent: Node, scope: TemplateScope, info: TemplateNode); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/interfaces.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/interfaces.d.ts deleted file mode 100644 index 0c14b80577..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/interfaces.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import Tag from './shared/Tag'; -import Action from './Action'; -import Animation from './Animation'; -import Attribute from './Attribute'; -import AwaitBlock from './AwaitBlock'; -import Binding from './Binding'; -import Body from './Body'; -import CatchBlock from './CatchBlock'; -import Class from './Class'; -import StyleDirective from './StyleDirective'; -import Comment from './Comment'; -import ConstTag from './ConstTag'; -import DebugTag from './DebugTag'; -import EachBlock from './EachBlock'; -import Element from './Element'; -import ElseBlock from './ElseBlock'; -import EventHandler from './EventHandler'; -import Fragment from './Fragment'; -import Head from './Head'; -import IfBlock from './IfBlock'; -import InlineComponent from './InlineComponent'; -import KeyBlock from './KeyBlock'; -import Let from './Let'; -import MustacheTag from './MustacheTag'; -import Options from './Options'; -import PendingBlock from './PendingBlock'; -import RawMustacheTag from './RawMustacheTag'; -import Slot from './Slot'; -import SlotTemplate from './SlotTemplate'; -import Text from './Text'; -import ThenBlock from './ThenBlock'; -import Title from './Title'; -import Transition from './Transition'; -import Window from './Window'; -export declare type INode = Action | Animation | Attribute | AwaitBlock | Binding | Body | CatchBlock | Class | Comment | ConstTag | DebugTag | EachBlock | Element | ElseBlock | EventHandler | Fragment | Head | IfBlock | InlineComponent | KeyBlock | Let | MustacheTag | Options | PendingBlock | RawMustacheTag | Slot | SlotTemplate | StyleDirective | Tag | Text | ThenBlock | Title | Transition | Window; -export declare type INodeAllowConstTag = EachBlock | CatchBlock | ThenBlock | InlineComponent | SlotTemplate; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/AbstractBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/AbstractBlock.d.ts deleted file mode 100644 index 9dea594b80..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/AbstractBlock.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import Block from '../../render_dom/Block'; -import Component from '../../Component'; -import Node from './Node'; -import { INode } from '../interfaces'; -export default class AbstractBlock extends Node { - block: Block; - children: INode[]; - constructor(component: Component, parent: any, scope: any, info: any); - warn_if_empty_block(): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Context.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Context.d.ts deleted file mode 100644 index 592c780610..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Context.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Node, Identifier } from 'estree'; -import Component from '../../Component'; -import TemplateScope from './TemplateScope'; -export interface Context { - key: Identifier; - name?: string; - modifier: (node: Node) => Node; - default_modifier: (node: Node, to_ctx: (name: string) => Node) => Node; -} -export declare function unpack_destructuring({ contexts, node, modifier, default_modifier, scope, component }: { - contexts: Context[]; - node: Node; - modifier?: Context['modifier']; - default_modifier?: Context['default_modifier']; - scope: TemplateScope; - component: Component; -}): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Expression.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Expression.d.ts deleted file mode 100644 index 0f08767342..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Expression.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import Component from '../../Component'; -import { Scope } from '../../utils/scope'; -import TemplateScope from './TemplateScope'; -import Block from '../../render_dom/Block'; -import { Node } from 'estree'; -import { INode } from '../interfaces'; -declare type Owner = INode; -export default class Expression { - type: 'Expression'; - component: Component; - owner: Owner; - node: Node; - references: Set; - dependencies: Set; - contextual_dependencies: Set; - template_scope: TemplateScope; - scope: Scope; - scope_map: WeakMap; - declarations: Array<(Node | Node[])>; - uses_context: boolean; - manipulated: Node; - constructor(component: Component, owner: Owner, template_scope: TemplateScope, info: Node, lazy?: boolean); - dynamic_dependencies(): string[]; - manipulate(block?: Block, ctx?: string | void): Node; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Node.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Node.d.ts deleted file mode 100644 index 7830094418..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Node.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import Attribute from '../Attribute'; -import Component from '../../Component'; -import { INode } from '../interfaces'; -import { TemplateNode } from '../../../interfaces'; -export default class Node { - readonly start: number; - readonly end: number; - readonly component: Component; - readonly parent: INode; - readonly type: string; - prev?: INode; - next?: INode; - can_use_innerhtml: boolean; - var: string; - attributes: Attribute[]; - constructor(component: Component, parent: Node, _scope: any, info: TemplateNode); - cannot_use_innerhtml(): void; - find_nearest(selector: RegExp): any; - get_static_attribute_value(name: string): string | true; - has_ancestor(type: string): any; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Tag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Tag.d.ts deleted file mode 100644 index 8c5db18958..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/Tag.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import Node from './Node'; -import Expression from './Expression'; -export default class Tag extends Node { - type: 'MustacheTag' | 'RawMustacheTag'; - expression: Expression; - should_cache: boolean; - constructor(component: any, parent: any, scope: any, info: any); -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/TemplateScope.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/TemplateScope.d.ts deleted file mode 100644 index 9ac015c704..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/TemplateScope.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import EachBlock from '../EachBlock'; -import ThenBlock from '../ThenBlock'; -import CatchBlock from '../CatchBlock'; -import InlineComponent from '../InlineComponent'; -import Element from '../Element'; -import SlotTemplate from '../SlotTemplate'; -import ConstTag from '../ConstTag'; -declare type NodeWithScope = EachBlock | ThenBlock | CatchBlock | InlineComponent | Element | SlotTemplate | ConstTag; -export default class TemplateScope { - names: Set; - dependencies_for_name: Map>; - owners: Map; - parent?: TemplateScope; - constructor(parent?: TemplateScope); - add(name: any, dependencies: Set, owner: any): this; - child(): TemplateScope; - is_top_level(name: string): any; - get_owner(name: string): NodeWithScope; - is_let(name: string): boolean; - is_await(name: string): boolean; - is_const(name: string): boolean; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/get_const_tags.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/get_const_tags.d.ts deleted file mode 100644 index e02045df1e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/get_const_tags.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { TemplateNode } from '../../../interfaces'; -import Component from '../../Component'; -import ConstTag from '../ConstTag'; -import { INodeAllowConstTag, INode } from '../interfaces'; -export default function get_const_tags(children: TemplateNode[], component: Component, node: INodeAllowConstTag, parent: INode): [ConstTag[], Array>]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/is_contextual.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/is_contextual.d.ts deleted file mode 100644 index fde7b2ddce..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/is_contextual.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Component from '../../Component'; -import TemplateScope from './TemplateScope'; -export default function is_contextual(component: Component, scope: TemplateScope, name: string): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/map_children.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/map_children.d.ts deleted file mode 100644 index 91123e789c..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/nodes/shared/map_children.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import AwaitBlock from '../AwaitBlock'; -import Body from '../Body'; -import ConstTag from '../ConstTag'; -import Comment from '../Comment'; -import EachBlock from '../EachBlock'; -import Element from '../Element'; -import Head from '../Head'; -import IfBlock from '../IfBlock'; -import InlineComponent from '../InlineComponent'; -import KeyBlock from '../KeyBlock'; -import MustacheTag from '../MustacheTag'; -import Options from '../Options'; -import RawMustacheTag from '../RawMustacheTag'; -import DebugTag from '../DebugTag'; -import SlotTemplate from '../SlotTemplate'; -import Text from '../Text'; -import Title from '../Title'; -import Window from '../Window'; -import { TemplateNode } from '../../../interfaces'; -export declare type Children = ReturnType; -export default function map_children(component: any, parent: any, scope: any, children: TemplateNode[]): (AwaitBlock | Body | Comment | ConstTag | DebugTag | EachBlock | Element | Head | IfBlock | InlineComponent | KeyBlock | MustacheTag | Options | RawMustacheTag | SlotTemplate | Text | Title | Window)[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Block.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Block.d.ts deleted file mode 100644 index 7112395df7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Block.d.ts +++ /dev/null @@ -1,81 +0,0 @@ -import Renderer from './Renderer'; -import Wrapper from './wrappers/shared/Wrapper'; -import { Node, Identifier } from 'estree'; -export interface Bindings { - object: Identifier; - property: Identifier; - snippet: Node; - store: string; - modifier: (node: Node) => Node; -} -export interface BlockOptions { - parent?: Block; - name: Identifier; - type: string; - renderer?: Renderer; - comment?: string; - key?: Identifier; - bindings?: Map; - dependencies?: Set; -} -export default class Block { - parent?: Block; - renderer: Renderer; - name: Identifier; - type: string; - comment?: string; - wrappers: Wrapper[]; - key: Identifier; - first: Identifier; - dependencies: Set; - bindings: Map; - binding_group_initialised: Set; - chunks: { - declarations: Array; - init: Array; - create: Array; - claim: Array; - hydrate: Array; - mount: Array; - measure: Array; - fix: Array; - animate: Array; - intro: Array; - update: Array; - outro: Array; - destroy: Array; - }; - event_listeners: Node[]; - maintain_context: boolean; - has_animation: boolean; - has_intros: boolean; - has_outros: boolean; - has_intro_method: boolean; - has_outro_method: boolean; - outros: number; - aliases: Map; - variables: Map; - get_unique_name: (name: string) => Identifier; - has_update_method: boolean; - autofocus?: { - element_var: string; - condition_expression?: any; - }; - constructor(options: BlockOptions); - assign_variable_names(): void; - add_dependencies(dependencies: Set): void; - add_element(id: Identifier, render_statement: Node, claim_statement: Node, parent_node: Node, no_detach?: boolean): void; - add_intro(local?: boolean): void; - add_outro(local?: boolean): void; - add_animation(): void; - add_variable(id: Identifier, init?: Node): void; - alias(name: string): Identifier; - child(options: BlockOptions): Block; - get_contents(key?: any): Node[]; - has_content(): boolean; - render(): Node[]; - render_listeners(chunk?: string): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Renderer.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Renderer.d.ts deleted file mode 100644 index 909d9759f3..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/Renderer.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import Block from './Block'; -import { CompileOptions, Var } from '../../interfaces'; -import Component from '../Component'; -import FragmentWrapper from './wrappers/Fragment'; -import { Node, Identifier, MemberExpression, Literal, Expression, UnaryExpression, ArrayExpression } from 'estree'; -interface ContextMember { - name: string; - index: Literal; - is_contextual: boolean; - is_non_contextual: boolean; - variable: Var; - priority: number; -} -export default class Renderer { - component: Component; - options: CompileOptions; - context: ContextMember[]; - initial_context: ContextMember[]; - context_lookup: Map; - context_overflow: boolean; - blocks: Array; - readonly: Set; - meta_bindings: Array; - binding_groups: Map Node; - is_context: boolean; - contexts: string[]; - index: number; - keypath: string; - }>; - block: Block; - fragment: FragmentWrapper; - file_var: Identifier; - locate: (c: number) => { - line: number; - column: number; - }; - constructor(component: Component, options: CompileOptions); - add_to_context(name: string, contextual?: boolean): ContextMember; - invalidate(name: string, value?: any, main_execution_context?: boolean): any; - dirty(names: string[], is_reactive_declaration?: boolean): Expression; - get_initial_dirty(): UnaryExpression | ArrayExpression; - reference(node: string | Identifier | MemberExpression, ctx?: string | void): any; - remove_block(block: Block | Node | Node[]): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/index.d.ts deleted file mode 100644 index 406561f4b4..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import Component from '../Component'; -import { CompileOptions, CssResult } from '../../interfaces'; -import { Node } from 'estree'; -export default function dom(component: Component, options: CompileOptions): { - js: Node[]; - css: CssResult; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/invalidate.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/invalidate.d.ts deleted file mode 100644 index a55c910653..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/invalidate.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Scope } from 'periscopic'; -import { Node } from 'estree'; -import Renderer from './Renderer'; -export declare function invalidate(renderer: Renderer, scope: Scope, node: Node, names: Set, main_execution_context?: boolean): any; -export declare function renderer_invalidate(renderer: Renderer, name: string, value?: any, main_execution_context?: boolean): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/AwaitBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/AwaitBlock.d.ts deleted file mode 100644 index 3222071002..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/AwaitBlock.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import AwaitBlock from '../../nodes/AwaitBlock'; -import FragmentWrapper from './Fragment'; -import PendingBlock from '../../nodes/PendingBlock'; -import ThenBlock from '../../nodes/ThenBlock'; -import CatchBlock from '../../nodes/CatchBlock'; -import { Context } from '../../nodes/shared/Context'; -import { Identifier, Literal, Node } from 'estree'; -declare type Status = 'pending' | 'then' | 'catch'; -declare class AwaitBlockBranch extends Wrapper { - parent: AwaitBlockWrapper; - node: PendingBlock | ThenBlock | CatchBlock; - block: Block; - fragment: FragmentWrapper; - is_dynamic: boolean; - var: any; - status: Status; - value: string; - value_index: Literal; - value_contexts: Context[]; - is_destructured: boolean; - constructor(status: Status, renderer: Renderer, block: Block, parent: AwaitBlockWrapper, node: PendingBlock | ThenBlock | CatchBlock, strip_whitespace: boolean, next_sibling: Wrapper); - add_context(node: Node | null, contexts: Context[]): void; - has_consts(node: PendingBlock | ThenBlock | CatchBlock): node is ThenBlock | CatchBlock; - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - render_get_context(): void; -} -export default class AwaitBlockWrapper extends Wrapper { - node: AwaitBlock; - pending: AwaitBlockBranch; - then: AwaitBlockBranch; - catch: AwaitBlockBranch; - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: AwaitBlock, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Body.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Body.d.ts deleted file mode 100644 index e00cfdf071..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Body.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Block from '../Block'; -import Wrapper from './shared/Wrapper'; -import Body from '../../nodes/Body'; -import { Identifier } from 'estree'; -import EventHandler from './Element/EventHandler'; -import { TemplateNode } from '../../../interfaces'; -import Renderer from '../Renderer'; -export default class BodyWrapper extends Wrapper { - node: Body; - handlers: EventHandler[]; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: TemplateNode); - render(block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/DebugTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/DebugTag.d.ts deleted file mode 100644 index bf68ea9629..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/DebugTag.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import Renderer from '../Renderer'; -import Wrapper from './shared/Wrapper'; -import Block from '../Block'; -import DebugTag from '../../nodes/DebugTag'; -import { Identifier } from 'estree'; -export default class DebugTagWrapper extends Wrapper { - node: DebugTag; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: DebugTag, _strip_whitespace: boolean, _next_sibling: Wrapper); - render(block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/EachBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/EachBlock.d.ts deleted file mode 100644 index 573b7c1a55..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/EachBlock.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import Renderer from '../Renderer'; -import Block from '../Block'; -import Wrapper from './shared/Wrapper'; -import EachBlock from '../../nodes/EachBlock'; -import FragmentWrapper from './Fragment'; -import ElseBlock from '../../nodes/ElseBlock'; -import { Identifier, Node } from 'estree'; -export declare class ElseBlockWrapper extends Wrapper { - node: ElseBlock; - block: Block; - fragment: FragmentWrapper; - is_dynamic: boolean; - var: any; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: ElseBlock, strip_whitespace: boolean, next_sibling: Wrapper); -} -export default class EachBlockWrapper extends Wrapper { - block: Block; - node: EachBlock; - fragment: FragmentWrapper; - else?: ElseBlockWrapper; - vars: { - create_each_block: Identifier; - each_block_value: Identifier; - get_each_context: Identifier; - iterations: Identifier; - fixed_length: number; - data_length: Node | number; - view_length: Node | number; - }; - context_props: Array; - index_name: Identifier; - updates: Array; - dependencies: Set; - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: EachBlock, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - render_keyed({ block, parent_node, parent_nodes, snippet, initial_anchor_node, initial_mount_node, update_anchor_node, update_mount_node }: { - block: Block; - parent_node: Identifier; - parent_nodes: Identifier; - snippet: Node; - initial_anchor_node: Identifier; - initial_mount_node: Identifier; - update_anchor_node: Identifier; - update_mount_node: Identifier; - }): void; - render_unkeyed({ block, parent_nodes, snippet, initial_anchor_node, initial_mount_node, update_anchor_node, update_mount_node }: { - block: Block; - parent_nodes: Identifier; - snippet: Node; - initial_anchor_node: Identifier; - initial_mount_node: Identifier; - update_anchor_node: Identifier; - update_mount_node: Identifier; - }): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Attribute.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Attribute.d.ts deleted file mode 100644 index ed7fe8a8fd..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Attribute.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import Attribute from '../../../nodes/Attribute'; -import Block from '../../Block'; -import ElementWrapper from './index'; -import { Identifier, Node } from 'estree'; -export declare class BaseAttributeWrapper { - node: Attribute; - parent: ElementWrapper; - constructor(parent: ElementWrapper, block: Block, node: Attribute); - render(_block: Block): void; -} -export default class AttributeWrapper extends BaseAttributeWrapper { - node: Attribute; - parent: ElementWrapper; - metadata: any; - name: string; - property_name: string; - is_indirectly_bound_value: boolean; - is_src: boolean; - is_select_value_attribute: boolean; - is_input_value: boolean; - should_cache: boolean; - last: Identifier; - constructor(parent: ElementWrapper, block: Block, node: Attribute); - render(block: Block): void; - get_init(block: Block, value: any): any; - get_dom_update_conditions(block: Block, dependency_condition: Node): Node; - get_dependencies(): string[]; - get_metadata(): any; - get_value(block: any): Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier | { - type: string; - value: string; - }; - get_class_name_text(block: any): Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier | { - type: string; - value: string; - }; - render_chunks(block: Block): (Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier | { - type: string; - value: string; - })[]; - stringify(): string; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Binding.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Binding.d.ts deleted file mode 100644 index 01f4d44909..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/Binding.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import Binding from '../../../nodes/Binding'; -import ElementWrapper from '../Element'; -import InlineComponentWrapper from '../InlineComponent'; -import Block from '../../Block'; -import { Node, Identifier } from 'estree'; -export default class BindingWrapper { - node: Binding; - parent: ElementWrapper | InlineComponentWrapper; - object: string; - handler: { - uses_context: boolean; - mutation: (Node | Node[]); - contextual_dependencies: Set; - lhs?: Node; - }; - snippet: Node; - is_readonly: boolean; - needs_lock: boolean; - constructor(block: Block, node: Binding, parent: ElementWrapper | InlineComponentWrapper); - get_dependencies(): Set; - get_update_dependencies(): Set; - is_readonly_media_attribute(): boolean; - render(block: Block, lock: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/EventHandler.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/EventHandler.d.ts deleted file mode 100644 index 2ee41296ef..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/EventHandler.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import EventHandler from '../../../nodes/EventHandler'; -import Wrapper from '../shared/Wrapper'; -import Block from '../../Block'; -import { Expression } from 'estree'; -export default class EventHandlerWrapper { - node: EventHandler; - parent: Wrapper; - constructor(node: EventHandler, parent: Wrapper); - get_snippet(block: any): any; - render(block: Block, target: string | Expression): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/SpreadAttribute.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/SpreadAttribute.d.ts deleted file mode 100644 index be5f05691e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/SpreadAttribute.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { BaseAttributeWrapper } from './Attribute'; -export default class SpreadAttributeWrapper extends BaseAttributeWrapper { -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/StyleAttribute.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/StyleAttribute.d.ts deleted file mode 100644 index 8d87aa16ff..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/StyleAttribute.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import Attribute from '../../../nodes/Attribute'; -import Block from '../../Block'; -import AttributeWrapper from './Attribute'; -import ElementWrapper from '../Element'; -import Expression from '../../../nodes/shared/Expression'; -import Text from '../../../nodes/Text'; -export interface StyleProp { - key: string; - value: Array; - important: boolean; -} -export default class StyleAttributeWrapper extends AttributeWrapper { - node: Attribute; - parent: ElementWrapper; - render(block: Block): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/fix_attribute_casing.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/fix_attribute_casing.d.ts deleted file mode 100644 index fb7c2f6fc1..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/fix_attribute_casing.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function fix_attribute_casing(name: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/handle_select_value_binding.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/handle_select_value_binding.d.ts deleted file mode 100644 index baf19adf1e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/handle_select_value_binding.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import AttributeWrapper from './Attribute'; -import BindingWrapper from './Binding'; -export default function handle_select_value_binding(attr: AttributeWrapper | BindingWrapper, dependencies: Set): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/index.d.ts deleted file mode 100644 index c28da5c636..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Element/index.d.ts +++ /dev/null @@ -1,204 +0,0 @@ -import Renderer from '../../Renderer'; -import Element from '../../../nodes/Element'; -import Wrapper from '../shared/Wrapper'; -import Block from '../../Block'; -import FragmentWrapper from '../Fragment'; -import AttributeWrapper from './Attribute'; -import StyleAttributeWrapper from './StyleAttribute'; -import SpreadAttributeWrapper from './SpreadAttribute'; -import Binding from './Binding'; -import { Identifier } from 'estree'; -import EventHandler from './EventHandler'; -interface BindingGroup { - events: string[]; - bindings: Binding[]; -} -export default class ElementWrapper extends Wrapper { - node: Element; - fragment: FragmentWrapper; - attributes: Array; - bindings: Binding[]; - event_handlers: EventHandler[]; - class_dependencies: string[]; - select_binding_dependencies?: Set; - var: any; - void: boolean; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Element, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - can_use_textcontent(): boolean; - get_render_statement(block: Block): (Identifier & { - start: number; - end: number; - }) | (import("estree").SimpleLiteral & { - start: number; - end: number; - }) | (import("estree").RegExpLiteral & { - start: number; - end: number; - }) | (import("estree").BigIntLiteral & { - start: number; - end: number; - }) | (import("estree").FunctionExpression & { - start: number; - end: number; - }) | (import("estree").ArrowFunctionExpression & { - start: number; - end: number; - }) | (import("estree").ThisExpression & { - start: number; - end: number; - }) | (import("estree").ArrayExpression & { - start: number; - end: number; - }) | (import("estree").ObjectExpression & { - start: number; - end: number; - }) | (import("estree").YieldExpression & { - start: number; - end: number; - }) | (import("estree").UnaryExpression & { - start: number; - end: number; - }) | (import("estree").UpdateExpression & { - start: number; - end: number; - }) | (import("estree").BinaryExpression & { - start: number; - end: number; - }) | (import("estree").AssignmentExpression & { - start: number; - end: number; - }) | (import("estree").LogicalExpression & { - start: number; - end: number; - }) | (import("estree").MemberExpression & { - start: number; - end: number; - }) | (import("estree").ConditionalExpression & { - start: number; - end: number; - }) | (import("estree").SimpleCallExpression & { - start: number; - end: number; - }) | (import("estree").NewExpression & { - start: number; - end: number; - }) | (import("estree").SequenceExpression & { - start: number; - end: number; - }) | (import("estree").TemplateLiteral & { - start: number; - end: number; - }) | (import("estree").TaggedTemplateExpression & { - start: number; - end: number; - }) | (import("estree").ClassExpression & { - start: number; - end: number; - }) | (import("estree").MetaProperty & { - start: number; - end: number; - }) | (import("estree").AwaitExpression & { - start: number; - end: number; - }) | (import("estree").ImportExpression & { - start: number; - end: number; - }) | (import("estree").ChainExpression & { - start: number; - end: number; - }); - get_claim_statement(nodes: Identifier): (Identifier & { - start: number; - end: number; - }) | (import("estree").SimpleLiteral & { - start: number; - end: number; - }) | (import("estree").RegExpLiteral & { - start: number; - end: number; - }) | (import("estree").BigIntLiteral & { - start: number; - end: number; - }) | (import("estree").FunctionExpression & { - start: number; - end: number; - }) | (import("estree").ArrowFunctionExpression & { - start: number; - end: number; - }) | (import("estree").ThisExpression & { - start: number; - end: number; - }) | (import("estree").ArrayExpression & { - start: number; - end: number; - }) | (import("estree").ObjectExpression & { - start: number; - end: number; - }) | (import("estree").YieldExpression & { - start: number; - end: number; - }) | (import("estree").UnaryExpression & { - start: number; - end: number; - }) | (import("estree").UpdateExpression & { - start: number; - end: number; - }) | (import("estree").BinaryExpression & { - start: number; - end: number; - }) | (import("estree").AssignmentExpression & { - start: number; - end: number; - }) | (import("estree").LogicalExpression & { - start: number; - end: number; - }) | (import("estree").MemberExpression & { - start: number; - end: number; - }) | (import("estree").ConditionalExpression & { - start: number; - end: number; - }) | (import("estree").SimpleCallExpression & { - start: number; - end: number; - }) | (import("estree").NewExpression & { - start: number; - end: number; - }) | (import("estree").SequenceExpression & { - start: number; - end: number; - }) | (import("estree").TemplateLiteral & { - start: number; - end: number; - }) | (import("estree").TaggedTemplateExpression & { - start: number; - end: number; - }) | (import("estree").ClassExpression & { - start: number; - end: number; - }) | (import("estree").MetaProperty & { - start: number; - end: number; - }) | (import("estree").AwaitExpression & { - start: number; - end: number; - }) | (import("estree").ImportExpression & { - start: number; - end: number; - }) | (import("estree").ChainExpression & { - start: number; - end: number; - }); - add_directives_in_order(block: Block): void; - add_bindings(block: Block, binding_group: BindingGroup): void; - add_this_binding(block: Block, this_binding: Binding): void; - add_attributes(block: Block): void; - add_spread_attributes(block: Block): void; - add_transitions(block: Block): void; - add_animation(block: Block): void; - add_classes(block: Block): void; - add_styles(block: Block): void; - add_manual_style_scoping(block: any): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Fragment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Fragment.d.ts deleted file mode 100644 index d320e7c7a3..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Fragment.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import { INode } from '../../nodes/interfaces'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import { Identifier } from 'estree'; -export default class FragmentWrapper { - nodes: Wrapper[]; - constructor(renderer: Renderer, block: Block, nodes: INode[], parent: Wrapper, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Head.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Head.d.ts deleted file mode 100644 index e21de0349f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Head.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import Head from '../../nodes/Head'; -import FragmentWrapper from './Fragment'; -import { Identifier } from 'estree'; -export default class HeadWrapper extends Wrapper { - fragment: FragmentWrapper; - node: Head; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Head, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/IfBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/IfBlock.d.ts deleted file mode 100644 index 9fbbd50a83..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/IfBlock.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import EachBlock from '../../nodes/EachBlock'; -import IfBlock from '../../nodes/IfBlock'; -import ElseBlock from '../../nodes/ElseBlock'; -import FragmentWrapper from './Fragment'; -import { Identifier, Node } from 'estree'; -declare class IfBlockBranch extends Wrapper { - block: Block; - fragment: FragmentWrapper; - dependencies?: string[]; - condition?: any; - snippet?: Node; - is_dynamic: boolean; - var: any; - constructor(renderer: Renderer, block: Block, parent: IfBlockWrapper, node: IfBlock | ElseBlock, strip_whitespace: boolean, next_sibling: Wrapper); -} -export default class IfBlockWrapper extends Wrapper { - node: IfBlock; - branches: IfBlockBranch[]; - needs_update: boolean; - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: EachBlock, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - render_compound(block: Block, parent_node: Identifier, _parent_nodes: Identifier, dynamic: any, { name, anchor, has_else, if_exists_condition, has_transitions }: { - name: any; - anchor: any; - has_else: any; - if_exists_condition: any; - has_transitions: any; - }, detaching: any): void; - render_compound_with_outros(block: Block, parent_node: Identifier, _parent_nodes: Identifier, dynamic: any, { name, anchor, has_else, has_transitions, if_exists_condition }: { - name: any; - anchor: any; - has_else: any; - has_transitions: any; - if_exists_condition: any; - }, detaching: any): void; - render_simple(block: Block, parent_node: Identifier, _parent_nodes: Identifier, dynamic: any, { name, anchor, if_exists_condition, has_transitions }: { - name: any; - anchor: any; - if_exists_condition: any; - has_transitions: any; - }, detaching: any): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/InlineComponent/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/InlineComponent/index.d.ts deleted file mode 100644 index 6d7993bb31..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/InlineComponent/index.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import Wrapper from '../shared/Wrapper'; -import Renderer from '../../Renderer'; -import Block from '../../Block'; -import InlineComponent from '../../../nodes/InlineComponent'; -import FragmentWrapper from '../Fragment'; -import TemplateScope from '../../../nodes/shared/TemplateScope'; -import { Node, Identifier } from 'estree'; -declare type SlotDefinition = { - block: Block; - scope: TemplateScope; - get_context?: Node; - get_changes?: Node; -}; -export default class InlineComponentWrapper extends Wrapper { - var: Identifier; - slots: Map; - node: InlineComponent; - fragment: FragmentWrapper; - children: Array; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: InlineComponent, strip_whitespace: boolean, next_sibling: Wrapper); - set_slot(name: string, slot_definition: SlotDefinition): void; - warn_if_reactive(): void; - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/KeyBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/KeyBlock.d.ts deleted file mode 100644 index 0dda974e0a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/KeyBlock.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import EachBlock from '../../nodes/EachBlock'; -import KeyBlock from '../../nodes/KeyBlock'; -import FragmentWrapper from './Fragment'; -import { Identifier } from 'estree'; -export default class KeyBlockWrapper extends Wrapper { - node: KeyBlock; - fragment: FragmentWrapper; - block: Block; - dependencies: string[]; - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: EachBlock, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - render_static_key(_block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - render_dynamic_key(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/MustacheTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/MustacheTag.d.ts deleted file mode 100644 index 32decd6ee4..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/MustacheTag.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Renderer from '../Renderer'; -import Block from '../Block'; -import Tag from './shared/Tag'; -import Wrapper from './shared/Wrapper'; -import MustacheTag from '../../nodes/MustacheTag'; -import RawMustacheTag from '../../nodes/RawMustacheTag'; -import { Identifier } from 'estree'; -export default class MustacheTagWrapper extends Tag { - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: MustacheTag | RawMustacheTag); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/RawMustacheTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/RawMustacheTag.d.ts deleted file mode 100644 index e1b0842ea4..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/RawMustacheTag.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import Renderer from '../Renderer'; -import Block from '../Block'; -import Tag from './shared/Tag'; -import Wrapper from './shared/Wrapper'; -import MustacheTag from '../../nodes/MustacheTag'; -import RawMustacheTag from '../../nodes/RawMustacheTag'; -import { Identifier } from 'estree'; -export default class RawMustacheTagWrapper extends Tag { - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: MustacheTag | RawMustacheTag); - render(block: Block, parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Slot.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Slot.d.ts deleted file mode 100644 index dbfb324da3..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Slot.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import Slot from '../../nodes/Slot'; -import FragmentWrapper from './Fragment'; -import { Identifier } from 'estree'; -export default class SlotWrapper extends Wrapper { - node: Slot; - fragment: FragmentWrapper; - fallback: Block | null; - slot_block: Block; - var: Identifier; - dependencies: Set; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Slot, strip_whitespace: boolean, next_sibling: Wrapper); - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; - is_dependency_dynamic(name: string): boolean; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/SlotTemplate.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/SlotTemplate.d.ts deleted file mode 100644 index e8f27a0068..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/SlotTemplate.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import FragmentWrapper from './Fragment'; -import InlineComponentWrapper from './InlineComponent'; -import SlotTemplate from '../../nodes/SlotTemplate'; -export default class SlotTemplateWrapper extends Wrapper { - node: SlotTemplate; - fragment: FragmentWrapper; - block: Block; - parent: InlineComponentWrapper; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: SlotTemplate, strip_whitespace: boolean, next_sibling: Wrapper); - render(): void; - render_get_context(): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Text.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Text.d.ts deleted file mode 100644 index be0981fff1..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Text.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Renderer from '../Renderer'; -import Block from '../Block'; -import Text from '../../nodes/Text'; -import Wrapper from './shared/Wrapper'; -import { Identifier } from 'estree'; -export default class TextWrapper extends Wrapper { - node: Text; - data: string; - skip: boolean; - var: Identifier; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Text, data: string); - use_space(): boolean; - render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Title.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Title.d.ts deleted file mode 100644 index f4a6880b0a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Title.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import Wrapper from './shared/Wrapper'; -import Renderer from '../Renderer'; -import Block from '../Block'; -import Title from '../../nodes/Title'; -import { Identifier } from 'estree'; -export default class TitleWrapper extends Wrapper { - node: Title; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Title, _strip_whitespace: boolean, _next_sibling: Wrapper); - render(block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Window.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Window.d.ts deleted file mode 100644 index 14cc85988a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/Window.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Renderer from '../Renderer'; -import Block from '../Block'; -import Wrapper from './shared/Wrapper'; -import Window from '../../nodes/Window'; -import { Identifier } from 'estree'; -import { TemplateNode } from '../../../interfaces'; -import EventHandler from './Element/EventHandler'; -export default class WindowWrapper extends Wrapper { - node: Window; - handlers: EventHandler[]; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: TemplateNode); - render(block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Tag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Tag.d.ts deleted file mode 100644 index ea1b75f208..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Tag.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Wrapper from './Wrapper'; -import Renderer from '../../Renderer'; -import Block from '../../Block'; -import MustacheTag from '../../../nodes/MustacheTag'; -import RawMustacheTag from '../../../nodes/RawMustacheTag'; -import { Node } from 'estree'; -export default class Tag extends Wrapper { - node: MustacheTag | RawMustacheTag; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: MustacheTag | RawMustacheTag); - is_dependencies_static(): boolean; - rename_this_method(block: Block, update: ((value: Node) => (Node | Node[]))): { - init: import("estree").Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier; - }; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Wrapper.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Wrapper.d.ts deleted file mode 100644 index 411bf0f603..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/Wrapper.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import Renderer from '../../Renderer'; -import Block from '../../Block'; -import { TemplateNode } from '../../../../interfaces'; -import { Identifier } from 'estree'; -export default class Wrapper { - renderer: Renderer; - parent: Wrapper; - node: TemplateNode; - prev: Wrapper | null; - next: Wrapper | null; - var: Identifier; - can_use_innerhtml: boolean; - is_static_content: boolean; - constructor(renderer: Renderer, block: Block, parent: Wrapper, node: TemplateNode); - cannot_use_innerhtml(): void; - not_static_content(): void; - get_or_create_anchor(block: Block, parent_node: Identifier, parent_nodes: Identifier): Identifier; - get_update_mount_node(anchor: Identifier): Identifier; - is_dom_node(): boolean; - render(_block: Block, _parent_node: Identifier, _parent_nodes: Identifier): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_actions.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_actions.d.ts deleted file mode 100644 index fb310cacc1..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_actions.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Block from '../../Block'; -import Action from '../../../nodes/Action'; -import { Expression } from 'estree'; -export default function add_actions(block: Block, target: string | Expression, actions: Action[]): void; -export declare function add_action(block: Block, target: string | Expression, action: Action): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_const_tags.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_const_tags.d.ts deleted file mode 100644 index ebad3cc58b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_const_tags.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import ConstTag from '../../../nodes/ConstTag'; -import Block from '../../Block'; -import Renderer from '../../Renderer'; -export declare function add_const_tags(block: Block, const_tags: ConstTag[], ctx: string): any[]; -export declare function add_const_tags_context(renderer: Renderer, const_tags: ConstTag[]): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_event_handlers.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_event_handlers.d.ts deleted file mode 100644 index 2f48107f07..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/add_event_handlers.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Block from '../../Block'; -import EventHandler from '../Element/EventHandler'; -import { Expression } from 'estree'; -export default function add_event_handlers(block: Block, target: string | Expression, handlers: EventHandler[]): void; -export declare function add_event_handler(block: Block, target: string | Expression, handler: EventHandler): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/bind_this.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/bind_this.d.ts deleted file mode 100644 index ebe3178598..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/bind_this.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Component from '../../../Component'; -import Block from '../../Block'; -import BindingWrapper from '../Element/Binding'; -import { Identifier } from 'estree'; -export default function bind_this(component: Component, block: Block, binding: BindingWrapper, variable: Identifier): import("estree").Node[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/create_debugging_comment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/create_debugging_comment.d.ts deleted file mode 100644 index a8155e0712..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/create_debugging_comment.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Component from '../../../Component'; -import { INode } from '../../../nodes/interfaces'; -export default function create_debugging_comment(node: INode, component: Component): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/get_slot_definition.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/get_slot_definition.d.ts deleted file mode 100644 index 9ef196c2bd..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/get_slot_definition.d.ts +++ /dev/null @@ -1,177 +0,0 @@ -import Let from '../../../nodes/Let'; -import Block from '../../Block'; -import TemplateScope from '../../../nodes/shared/TemplateScope'; -import { BinaryExpression } from 'estree'; -export declare function get_slot_definition(block: Block, scope: TemplateScope, lets: Let[]): { - block: Block; - scope: TemplateScope; - get_context?: undefined; - get_changes?: undefined; -} | { - block: Block; - scope: TemplateScope; - get_context: (import("estree").Identifier & { - start: number; - end: number; - }) | (import("estree").SimpleLiteral & { - start: number; - end: number; - }) | (import("estree").RegExpLiteral & { - start: number; - end: number; - }) | (import("estree").BigIntLiteral & { - start: number; - end: number; - }) | (import("estree").FunctionExpression & { - start: number; - end: number; - }) | (import("estree").ArrowFunctionExpression & { - start: number; - end: number; - }) | (import("estree").ThisExpression & { - start: number; - end: number; - }) | (import("estree").ArrayExpression & { - start: number; - end: number; - }) | (import("estree").ObjectExpression & { - start: number; - end: number; - }) | (import("estree").YieldExpression & { - start: number; - end: number; - }) | (import("estree").UnaryExpression & { - start: number; - end: number; - }) | (import("estree").UpdateExpression & { - start: number; - end: number; - }) | (BinaryExpression & { - start: number; - end: number; - }) | (import("estree").AssignmentExpression & { - start: number; - end: number; - }) | (import("estree").LogicalExpression & { - start: number; - end: number; - }) | (import("estree").MemberExpression & { - start: number; - end: number; - }) | (import("estree").ConditionalExpression & { - start: number; - end: number; - }) | (import("estree").SimpleCallExpression & { - start: number; - end: number; - }) | (import("estree").NewExpression & { - start: number; - end: number; - }) | (import("estree").SequenceExpression & { - start: number; - end: number; - }) | (import("estree").TemplateLiteral & { - start: number; - end: number; - }) | (import("estree").TaggedTemplateExpression & { - start: number; - end: number; - }) | (import("estree").ClassExpression & { - start: number; - end: number; - }) | (import("estree").MetaProperty & { - start: number; - end: number; - }) | (import("estree").AwaitExpression & { - start: number; - end: number; - }) | (import("estree").ImportExpression & { - start: number; - end: number; - }) | (import("estree").ChainExpression & { - start: number; - end: number; - }); - get_changes: (import("estree").Identifier & { - start: number; - end: number; - }) | (import("estree").SimpleLiteral & { - start: number; - end: number; - }) | (import("estree").RegExpLiteral & { - start: number; - end: number; - }) | (import("estree").BigIntLiteral & { - start: number; - end: number; - }) | (import("estree").FunctionExpression & { - start: number; - end: number; - }) | (import("estree").ArrowFunctionExpression & { - start: number; - end: number; - }) | (import("estree").ThisExpression & { - start: number; - end: number; - }) | (import("estree").ArrayExpression & { - start: number; - end: number; - }) | (import("estree").ObjectExpression & { - start: number; - end: number; - }) | (import("estree").YieldExpression & { - start: number; - end: number; - }) | (import("estree").UnaryExpression & { - start: number; - end: number; - }) | (import("estree").UpdateExpression & { - start: number; - end: number; - }) | (BinaryExpression & { - start: number; - end: number; - }) | (import("estree").AssignmentExpression & { - start: number; - end: number; - }) | (import("estree").LogicalExpression & { - start: number; - end: number; - }) | (import("estree").MemberExpression & { - start: number; - end: number; - }) | (import("estree").ConditionalExpression & { - start: number; - end: number; - }) | (import("estree").SimpleCallExpression & { - start: number; - end: number; - }) | (import("estree").NewExpression & { - start: number; - end: number; - }) | (import("estree").SequenceExpression & { - start: number; - end: number; - }) | (import("estree").TemplateLiteral & { - start: number; - end: number; - }) | (import("estree").TaggedTemplateExpression & { - start: number; - end: number; - }) | (import("estree").ClassExpression & { - start: number; - end: number; - }) | (import("estree").MetaProperty & { - start: number; - end: number; - }) | (import("estree").AwaitExpression & { - start: number; - end: number; - }) | (import("estree").ImportExpression & { - start: number; - end: number; - }) | (import("estree").ChainExpression & { - start: number; - end: number; - }); -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_dynamic.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_dynamic.d.ts deleted file mode 100644 index ccc3a7115e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_dynamic.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Var } from '../../../../interfaces'; -export default function is_dynamic(variable: Var): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_head.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_head.d.ts deleted file mode 100644 index 2808651cef..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/is_head.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function is_head(node: any): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/mark_each_block_bindings.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/mark_each_block_bindings.d.ts deleted file mode 100644 index e2aa830978..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_dom/wrappers/shared/mark_each_block_bindings.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import InlineComponentWrapper from '../InlineComponent'; -import ElementWrapper from '../Element'; -import Binding from '../../../nodes/Binding'; -export default function mark_each_block_bindings(parent: ElementWrapper | InlineComponentWrapper, binding: Binding): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/Renderer.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/Renderer.d.ts deleted file mode 100644 index 2a7f295519..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/Renderer.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { AppendTarget, CompileOptions } from '../../interfaces'; -import { INode } from '../nodes/interfaces'; -import { Expression, TemplateLiteral, Identifier } from 'estree'; -export interface RenderOptions extends CompileOptions { - locate: (c: number) => { - line: number; - column: number; - }; - head_id?: string; -} -export default class Renderer { - has_bindings: boolean; - name: Identifier; - stack: Array<{ - current: { - value: string; - }; - literal: TemplateLiteral; - }>; - current: { - value: string; - }; - literal: TemplateLiteral; - targets: AppendTarget[]; - constructor({ name }: { - name: any; - }); - add_string(str: string): void; - add_expression(node: Expression): void; - push(): void; - pop(): TemplateLiteral; - render(nodes: INode[], options: RenderOptions): void; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/AwaitBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/AwaitBlock.d.ts deleted file mode 100644 index 9ac74d6634..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/AwaitBlock.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import AwaitBlock from '../../nodes/AwaitBlock'; -export default function (node: AwaitBlock, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Comment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Comment.d.ts deleted file mode 100644 index 3ceb965c1c..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Comment.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Comment from '../../nodes/Comment'; -export default function (node: Comment, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/DebugTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/DebugTag.d.ts deleted file mode 100644 index 737c104d02..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/DebugTag.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import DebugTag from '../../nodes/DebugTag'; -import Renderer, { RenderOptions } from '../Renderer'; -export default function (node: DebugTag, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/EachBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/EachBlock.d.ts deleted file mode 100644 index 5ecd8599aa..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/EachBlock.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import EachBlock from '../../nodes/EachBlock'; -export default function (node: EachBlock, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Element.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Element.d.ts deleted file mode 100644 index c426b71b69..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Element.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Element from '../../nodes/Element'; -export default function (node: Element, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Head.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Head.d.ts deleted file mode 100644 index add6c178ec..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Head.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Head from '../../nodes/Head'; -export default function (node: Head, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/HtmlTag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/HtmlTag.d.ts deleted file mode 100644 index c86d6e87be..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/HtmlTag.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import RawMustacheTag from '../../nodes/RawMustacheTag'; -export default function (node: RawMustacheTag, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/IfBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/IfBlock.d.ts deleted file mode 100644 index c5be3d0920..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/IfBlock.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import IfBlock from '../../nodes/IfBlock'; -import Renderer, { RenderOptions } from '../Renderer'; -export default function (node: IfBlock, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/InlineComponent.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/InlineComponent.d.ts deleted file mode 100644 index fd52d3a187..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/InlineComponent.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import InlineComponent from '../../nodes/InlineComponent'; -export default function (node: InlineComponent, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/KeyBlock.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/KeyBlock.d.ts deleted file mode 100644 index ab71c23b1e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/KeyBlock.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import KeyBlock from '../../nodes/KeyBlock'; -import Renderer, { RenderOptions } from '../Renderer'; -export default function (node: KeyBlock, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Slot.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Slot.d.ts deleted file mode 100644 index b07dd1374e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Slot.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Slot from '../../nodes/Slot'; -export default function (node: Slot, renderer: Renderer, options: RenderOptions & { - slot_scopes: Map; -}): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/SlotTemplate.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/SlotTemplate.d.ts deleted file mode 100644 index 3eeecb2528..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/SlotTemplate.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import SlotTemplate from '../../nodes/SlotTemplate'; -export default function (node: SlotTemplate, renderer: Renderer, options: RenderOptions & { - slot_scopes: Map; -}): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Tag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Tag.d.ts deleted file mode 100644 index a37afab5ea..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Tag.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -export default function (node: any, renderer: Renderer, _options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Text.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Text.d.ts deleted file mode 100644 index 8b6a668f43..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Text.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Text from '../../nodes/Text'; -export default function (node: Text, renderer: Renderer, _options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Title.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Title.d.ts deleted file mode 100644 index 14d4b2d4d5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/Title.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Renderer, { RenderOptions } from '../Renderer'; -import Title from '../../nodes/Title'; -export default function (node: Title, renderer: Renderer, options: RenderOptions): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/boolean_attributes.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/boolean_attributes.d.ts deleted file mode 100644 index 5ae12c9c92..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/boolean_attributes.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const boolean_attributes: Set; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_attribute_value.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_attribute_value.d.ts deleted file mode 100644 index e1e6f9c220..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_attribute_value.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import Attribute from '../../../nodes/Attribute'; -import { Expression as ESTreeExpression } from 'estree'; -export declare function get_class_attribute_value(attribute: Attribute): ESTreeExpression; -export declare function get_attribute_value(attribute: Attribute): ESTreeExpression; -export declare function get_attribute_expression(attribute: Attribute): ESTreeExpression; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_const_tags.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_const_tags.d.ts deleted file mode 100644 index f90eb8bb8b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_const_tags.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import ConstTag from '../../../nodes/ConstTag'; -export declare function get_const_tags(const_tags: ConstTag[]): { - type: string; - kind: string; - declarations: { - type: string; - id: import("estree").Pattern; - init: import("estree").Expression; - }[]; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_slot_scope.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_slot_scope.d.ts deleted file mode 100644 index 7e092af60b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/shared/get_slot_scope.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import Let from '../../../nodes/Let'; -import { ObjectPattern } from 'estree'; -export declare function get_slot_scope(lets: Let[]): ObjectPattern; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/utils/remove_whitespace_children.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/utils/remove_whitespace_children.d.ts deleted file mode 100644 index 9776333b51..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/handlers/utils/remove_whitespace_children.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { INode } from '../../../nodes/interfaces'; -export default function remove_whitespace_children(children: INode[], next?: INode): INode[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/index.d.ts deleted file mode 100644 index 0113077360..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/render_ssr/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import Component from '../Component'; -import { CompileOptions, CssResult } from '../../interfaces'; -import { Node } from 'estree'; -export default function ssr(component: Component, options: CompileOptions): { - js: Node[]; - css: CssResult; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/__test__.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/__test__.d.ts deleted file mode 100644 index cb0ff5c3b5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/__test__.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/add_to_set.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/add_to_set.d.ts deleted file mode 100644 index b620fbcc21..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/add_to_set.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function add_to_set(a: Set, b: Set | T[]): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_enable_sourcemap.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_enable_sourcemap.d.ts deleted file mode 100644 index e384bc6b6f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_enable_sourcemap.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { EnableSourcemap } from '../../interfaces'; -export default function check_enable_sourcemap(enable_sourcemap: EnableSourcemap, namespace: keyof Extract): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_graph_for_cycles.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_graph_for_cycles.d.ts deleted file mode 100644 index 6660f10cf7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/check_graph_for_cycles.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function check_graph_for_cycles(edges: Array<[any, any]>): any[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/compare_node.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/compare_node.d.ts deleted file mode 100644 index 789f826082..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/compare_node.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Node } from 'estree'; -export declare function compare_node(a: Node | void, b: Node | void): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/flatten_reference.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/flatten_reference.d.ts deleted file mode 100644 index e074929820..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/flatten_reference.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { Node } from 'estree'; -export default function flatten_reference(node: Node): { - name: string; - nodes: any[]; - parts: any[]; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_name_from_filename.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_name_from_filename.d.ts deleted file mode 100644 index 25751c0f6e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_name_from_filename.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function get_name_from_filename(filename: string): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_object.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_object.d.ts deleted file mode 100644 index dea68fb42c..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_object.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Node, Identifier } from 'estree'; -export default function get_object(node: Node): Identifier; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_slot_data.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_slot_data.d.ts deleted file mode 100644 index 4df1542d8c..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/get_slot_data.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import Attribute from '../nodes/Attribute'; -import Block from '../render_dom/Block'; -export default function get_slot_data(values: Map, block?: Block): { - type: string; - properties: ((import("estree").Property & { - start: number; - end: number; - }) | (import("estree").SpreadElement & { - start: number; - end: number; - }) | { - type: string; - argument: import("estree").Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier; - })[]; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/hash.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/hash.d.ts deleted file mode 100644 index b1bb8bf71d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/hash.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function hash(str: string): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/is_used_as_reference.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/is_used_as_reference.d.ts deleted file mode 100644 index ea52dbbae7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/is_used_as_reference.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Node } from 'estree'; -export default function is_used_as_reference(node: Node, parent: Node): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/nodes_to_template_literal.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/nodes_to_template_literal.d.ts deleted file mode 100644 index cfdacb6c49..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/nodes_to_template_literal.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TemplateLiteral } from 'estree'; -import { MustacheTag, Text } from '../../interfaces'; -/** - * Transforms a list of Text and MustacheTags into a TemplateLiteral expression. - * Start/End positions on the elements of the expression are not set. - */ -export declare function nodes_to_template_literal(value: Array): TemplateLiteral; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/replace_object.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/replace_object.d.ts deleted file mode 100644 index 13fd021939..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/replace_object.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Node } from 'estree'; -export default function replace_object(node: Node, replacement: Node): import("estree").Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").BigIntLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").ImportExpression | import("estree").ChainExpression | import("estree").PrivateIdentifier | import("estree").Property | import("estree").PropertyDefinition | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/reserved_keywords.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/reserved_keywords.d.ts deleted file mode 100644 index 77d723625e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/reserved_keywords.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare const reserved_keywords: Set; -export declare function is_reserved_keyword(name: any): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/scope.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/scope.d.ts deleted file mode 100644 index e5b08f9d5c..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/scope.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { Node } from 'estree'; -import { Scope, extract_names, extract_identifiers } from 'periscopic'; -export declare function create_scopes(expression: Node): { - map: WeakMap; - scope: Scope; - globals: Map; -}; -export { Scope, extract_names, extract_identifiers }; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/string_to_member_expression.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/string_to_member_expression.d.ts deleted file mode 100644 index 76b07beec7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/string_to_member_expression.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { MemberExpression, Identifier } from 'estree'; -export declare function string_to_member_expression(name: string): Identifier | MemberExpression; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/stringify.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/stringify.d.ts deleted file mode 100644 index 471194a1be..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/compile/utils/stringify.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export declare function string_literal(data: string): { - type: string; - value: string; -}; -export declare function escape(data: string, { only_escape_at_symbol }?: { - only_escape_at_symbol?: boolean; -}): string; -export declare function escape_html(html: any): string; -export declare function escape_template(str: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/config.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/config.d.ts deleted file mode 100644 index 66cb4d4e88..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/config.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const test: string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/index.d.ts deleted file mode 100644 index 99fe8e027e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { default as compile } from './compile/index'; -export { default as parse } from './parse/index'; -export { default as preprocess } from './preprocess/index'; -export { walk } from 'estree-walker'; -export declare const VERSION = "__VERSION__"; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/interfaces.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/interfaces.d.ts deleted file mode 100644 index b6a3e1255e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/interfaces.d.ts +++ /dev/null @@ -1,186 +0,0 @@ -import { AssignmentExpression, Node, Program } from 'estree'; -import { SourceMap } from 'magic-string'; -interface BaseNode { - start: number; - end: number; - type: string; - children?: TemplateNode[]; - [prop_name: string]: any; -} -export interface Fragment extends BaseNode { - type: 'Fragment'; - children: TemplateNode[]; -} -export interface Text extends BaseNode { - type: 'Text'; - data: string; -} -export interface MustacheTag extends BaseNode { - type: 'MustacheTag' | 'RawMustacheTag'; - expression: Node; -} -export interface Comment extends BaseNode { - type: 'Comment'; - data: string; - ignores: string[]; -} -export interface ConstTag extends BaseNode { - type: 'ConstTag'; - expression: AssignmentExpression; -} -interface DebugTag extends BaseNode { - type: 'DebugTag'; - identifiers: Node[]; -} -export declare type DirectiveType = 'Action' | 'Animation' | 'Binding' | 'Class' | 'StyleDirective' | 'EventHandler' | 'Let' | 'Ref' | 'Transition'; -interface BaseDirective extends BaseNode { - type: DirectiveType; - name: string; -} -interface BaseExpressionDirective extends BaseDirective { - type: DirectiveType; - expression: null | Node; - name: string; - modifiers: string[]; -} -export interface Element extends BaseNode { - type: 'InlineComponent' | 'SlotTemplate' | 'Title' | 'Slot' | 'Element' | 'Head' | 'Options' | 'Window' | 'Body'; - attributes: Array; - name: string; -} -export interface Attribute extends BaseNode { - type: 'Attribute'; - name: string; - value: any[]; -} -export interface SpreadAttribute extends BaseNode { - type: 'Spread'; - expression: Node; -} -export interface Transition extends BaseExpressionDirective { - type: 'Transition'; - intro: boolean; - outro: boolean; -} -export declare type Directive = BaseDirective | BaseExpressionDirective | Transition; -export declare type TemplateNode = Text | ConstTag | DebugTag | MustacheTag | BaseNode | Element | Attribute | SpreadAttribute | Directive | Transition | Comment; -export interface Parser { - readonly template: string; - readonly filename?: string; - index: number; - stack: Node[]; - html: Node; - css: Node; - js: Node; - meta_tags: {}; -} -export interface Script extends BaseNode { - type: 'Script'; - context: string; - content: Program; -} -export interface Style extends BaseNode { - type: 'Style'; - attributes: any[]; - children: any[]; - content: { - start: number; - end: number; - styles: string; - }; -} -export interface Ast { - html: TemplateNode; - css: Style; - instance: Script; - module: Script; -} -export interface Warning { - start?: { - line: number; - column: number; - pos?: number; - }; - end?: { - line: number; - column: number; - }; - pos?: number; - code: string; - message: string; - filename?: string; - frame?: string; - toString: () => string; -} -export declare type ModuleFormat = 'esm' | 'cjs'; -export declare type EnableSourcemap = boolean | { - js: boolean; - css: boolean; -}; -export declare type CssHashGetter = (args: { - name: string; - filename: string | undefined; - css: string; - hash: (input: string) => string; -}) => string; -export interface CompileOptions { - format?: ModuleFormat; - name?: string; - filename?: string; - generate?: 'dom' | 'ssr' | false; - errorMode?: 'throw' | 'warn'; - varsReport?: 'full' | 'strict' | false; - sourcemap?: object | string; - enableSourcemap?: EnableSourcemap; - outputFilename?: string; - cssOutputFilename?: string; - sveltePath?: string; - dev?: boolean; - accessors?: boolean; - immutable?: boolean; - hydratable?: boolean; - legacy?: boolean; - customElement?: boolean; - tag?: string; - css?: boolean; - loopGuardTimeout?: number; - namespace?: string; - cssHash?: CssHashGetter; - preserveComments?: boolean; - preserveWhitespace?: boolean; -} -export interface ParserOptions { - filename?: string; - customElement?: boolean; -} -export interface Visitor { - enter: (node: Node) => void; - leave?: (node: Node) => void; -} -export interface AppendTarget { - slots: Record; - slot_stack: string[]; -} -export interface Var { - name: string; - export_name?: string; - injected?: boolean; - module?: boolean; - mutated?: boolean; - reassigned?: boolean; - referenced?: boolean; - referenced_from_script?: boolean; - writable?: boolean; - global?: boolean; - internal?: boolean; - initialised?: boolean; - hoistable?: boolean; - subscribable?: boolean; - is_reactive_dependency?: boolean; - imported?: boolean; -} -export interface CssResult { - code: string; - map: SourceMap; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/acorn.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/acorn.d.ts deleted file mode 100644 index aadad5669d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/acorn.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Node } from 'acorn'; -export declare const parse: (source: string) => Node; -export declare const parse_expression_at: (source: string, index: number) => Node; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/errors.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/errors.d.ts deleted file mode 100644 index cb0ff5c3b5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/errors.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/index.d.ts deleted file mode 100644 index f87e30c0c9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/index.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { TemplateNode, Ast, ParserOptions, Fragment, Style, Script } from '../interfaces'; -interface LastAutoClosedTag { - tag: string; - reason: string; - depth: number; -} -export declare class Parser { - readonly template: string; - readonly filename?: string; - readonly customElement: boolean; - index: number; - stack: TemplateNode[]; - html: Fragment; - css: Style[]; - js: Script[]; - meta_tags: {}; - last_auto_closed_tag?: LastAutoClosedTag; - constructor(template: string, options: ParserOptions); - current(): TemplateNode; - acorn_error(err: any): void; - error({ code, message }: { - code: string; - message: string; - }, index?: number): void; - eat(str: string, required?: boolean, error?: { - code: string; - message: string; - }): boolean; - match(str: string): boolean; - match_regex(pattern: RegExp): string; - allow_whitespace(): void; - read(pattern: RegExp): string; - read_identifier(allow_reserved?: boolean): string; - read_until(pattern: RegExp, error_message?: Parameters[0]): string; - require_whitespace(): void; -} -export default function parse(template: string, options?: ParserOptions): Ast; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/context.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/context.d.ts deleted file mode 100644 index e6d53f41dc..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/context.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { Parser } from '../index'; -import { Pattern } from 'estree'; -export default function read_context(parser: Parser): Pattern & { - start: number; - end: number; -}; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/expression.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/expression.d.ts deleted file mode 100644 index 2f74b1ae35..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/expression.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Parser } from '../index'; -import { Node } from 'estree'; -export default function read_expression(parser: Parser): Node; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/script.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/script.d.ts deleted file mode 100644 index aa99c5b8f9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/script.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { Parser } from '../index'; -import { Script } from '../../interfaces'; -import { Node } from 'estree'; -export default function read_script(parser: Parser, start: number, attributes: Node[]): Script; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/style.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/style.d.ts deleted file mode 100644 index 870d711ce9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/read/style.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { Parser } from '../index'; -import { Node } from 'estree'; -import { Style } from '../../interfaces'; -export default function read_style(parser: Parser, start: number, attributes: Node[]): Style; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/fragment.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/fragment.d.ts deleted file mode 100644 index ec6073ba7e..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/fragment.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import tag from './tag'; -import { Parser } from '../index'; -export default function fragment(parser: Parser): typeof tag; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/mustache.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/mustache.d.ts deleted file mode 100644 index 8a4b8b5390..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/mustache.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Parser } from '../index'; -export default function mustache(parser: Parser): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/tag.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/tag.d.ts deleted file mode 100644 index 1e0a29c571..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/tag.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Parser } from '../index'; -export default function tag(parser: Parser): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/text.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/text.d.ts deleted file mode 100644 index 88f2671f5d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/state/text.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Parser } from '../index'; -export default function text(parser: Parser): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/bracket.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/bracket.d.ts deleted file mode 100644 index e18f35279b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/bracket.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare function is_bracket_open(code: any): boolean; -export declare function is_bracket_close(code: any): boolean; -export declare function is_bracket_pair(open: any, close: any): boolean; -export declare function get_bracket_close(open: any): number; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/entities.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/entities.d.ts deleted file mode 100644 index 41902a6598..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/entities.d.ts +++ /dev/null @@ -1,2034 +0,0 @@ -declare const _default: { - CounterClockwiseContourIntegral: number; - ClockwiseContourIntegral: number; - DoubleLongLeftRightArrow: number; - DiacriticalDoubleAcute: number; - NotSquareSupersetEqual: number; - CloseCurlyDoubleQuote: number; - DoubleContourIntegral: number; - FilledVerySmallSquare: number; - NegativeVeryThinSpace: number; - NotPrecedesSlantEqual: number; - NotRightTriangleEqual: number; - NotSucceedsSlantEqual: number; - CapitalDifferentialD: number; - DoubleLeftRightArrow: number; - DoubleLongRightArrow: number; - EmptyVerySmallSquare: number; - NestedGreaterGreater: number; - NotDoubleVerticalBar: number; - NotLeftTriangleEqual: number; - NotSquareSubsetEqual: number; - OpenCurlyDoubleQuote: number; - ReverseUpEquilibrium: number; - DoubleLongLeftArrow: number; - DownLeftRightVector: number; - LeftArrowRightArrow: number; - NegativeMediumSpace: number; - RightArrowLeftArrow: number; - SquareSupersetEqual: number; - leftrightsquigarrow: number; - DownRightTeeVector: number; - DownRightVectorBar: number; - LongLeftRightArrow: number; - Longleftrightarrow: number; - NegativeThickSpace: number; - PrecedesSlantEqual: number; - ReverseEquilibrium: number; - RightDoubleBracket: number; - RightDownTeeVector: number; - RightDownVectorBar: number; - RightTriangleEqual: number; - SquareIntersection: number; - SucceedsSlantEqual: number; - blacktriangleright: number; - longleftrightarrow: number; - DoubleUpDownArrow: number; - DoubleVerticalBar: number; - DownLeftTeeVector: number; - DownLeftVectorBar: number; - FilledSmallSquare: number; - GreaterSlantEqual: number; - LeftDoubleBracket: number; - LeftDownTeeVector: number; - LeftDownVectorBar: number; - LeftTriangleEqual: number; - NegativeThinSpace: number; - NotReverseElement: number; - NotTildeFullEqual: number; - RightAngleBracket: number; - RightUpDownVector: number; - SquareSubsetEqual: number; - VerticalSeparator: number; - blacktriangledown: number; - blacktriangleleft: number; - leftrightharpoons: number; - rightleftharpoons: number; - twoheadrightarrow: number; - DiacriticalAcute: number; - DiacriticalGrave: number; - DiacriticalTilde: number; - DoubleRightArrow: number; - DownArrowUpArrow: number; - EmptySmallSquare: number; - GreaterEqualLess: number; - GreaterFullEqual: number; - LeftAngleBracket: number; - LeftUpDownVector: number; - LessEqualGreater: number; - NonBreakingSpace: number; - NotRightTriangle: number; - NotSupersetEqual: number; - RightTriangleBar: number; - RightUpTeeVector: number; - RightUpVectorBar: number; - UnderParenthesis: number; - UpArrowDownArrow: number; - circlearrowright: number; - downharpoonright: number; - ntrianglerighteq: number; - rightharpoondown: number; - rightrightarrows: number; - twoheadleftarrow: number; - vartriangleright: number; - CloseCurlyQuote: number; - ContourIntegral: number; - DoubleDownArrow: number; - DoubleLeftArrow: number; - DownRightVector: number; - LeftRightVector: number; - LeftTriangleBar: number; - LeftUpTeeVector: number; - LeftUpVectorBar: number; - LowerRightArrow: number; - NotGreaterEqual: number; - NotGreaterTilde: number; - NotLeftTriangle: number; - OverParenthesis: number; - RightDownVector: number; - ShortRightArrow: number; - UpperRightArrow: number; - bigtriangledown: number; - circlearrowleft: number; - curvearrowright: number; - downharpoonleft: number; - leftharpoondown: number; - leftrightarrows: number; - nLeftrightarrow: number; - nleftrightarrow: number; - ntrianglelefteq: number; - rightleftarrows: number; - rightsquigarrow: number; - rightthreetimes: number; - straightepsilon: number; - trianglerighteq: number; - vartriangleleft: number; - DiacriticalDot: number; - DoubleRightTee: number; - DownLeftVector: number; - GreaterGreater: number; - HorizontalLine: number; - InvisibleComma: number; - InvisibleTimes: number; - LeftDownVector: number; - LeftRightArrow: number; - Leftrightarrow: number; - LessSlantEqual: number; - LongRightArrow: number; - Longrightarrow: number; - LowerLeftArrow: number; - NestedLessLess: number; - NotGreaterLess: number; - NotLessGreater: number; - NotSubsetEqual: number; - NotVerticalBar: number; - OpenCurlyQuote: number; - ReverseElement: number; - RightTeeVector: number; - RightVectorBar: number; - ShortDownArrow: number; - ShortLeftArrow: number; - SquareSuperset: number; - TildeFullEqual: number; - UpperLeftArrow: number; - ZeroWidthSpace: number; - curvearrowleft: number; - doublebarwedge: number; - downdownarrows: number; - hookrightarrow: number; - leftleftarrows: number; - leftrightarrow: number; - leftthreetimes: number; - longrightarrow: number; - looparrowright: number; - nshortparallel: number; - ntriangleright: number; - rightarrowtail: number; - rightharpoonup: number; - trianglelefteq: number; - upharpoonright: number; - ApplyFunction: number; - DifferentialD: number; - DoubleLeftTee: number; - DoubleUpArrow: number; - LeftTeeVector: number; - LeftVectorBar: number; - LessFullEqual: number; - LongLeftArrow: number; - Longleftarrow: number; - NotTildeEqual: number; - NotTildeTilde: number; - Poincareplane: number; - PrecedesEqual: number; - PrecedesTilde: number; - RightArrowBar: number; - RightTeeArrow: number; - RightTriangle: number; - RightUpVector: number; - SucceedsEqual: number; - SucceedsTilde: number; - SupersetEqual: number; - UpEquilibrium: number; - VerticalTilde: number; - VeryThinSpace: number; - bigtriangleup: number; - blacktriangle: number; - divideontimes: number; - fallingdotseq: number; - hookleftarrow: number; - leftarrowtail: number; - leftharpoonup: number; - longleftarrow: number; - looparrowleft: number; - measuredangle: number; - ntriangleleft: number; - shortparallel: number; - smallsetminus: number; - triangleright: number; - upharpoonleft: number; - DownArrowBar: number; - DownTeeArrow: number; - ExponentialE: number; - GreaterEqual: number; - GreaterTilde: number; - HilbertSpace: number; - HumpDownHump: number; - Intersection: number; - LeftArrowBar: number; - LeftTeeArrow: number; - LeftTriangle: number; - LeftUpVector: number; - NotCongruent: number; - NotLessEqual: number; - NotLessTilde: number; - Proportional: number; - RightCeiling: number; - RoundImplies: number; - ShortUpArrow: number; - SquareSubset: number; - UnderBracket: number; - VerticalLine: number; - blacklozenge: number; - exponentiale: number; - risingdotseq: number; - triangledown: number; - triangleleft: number; - CircleMinus: number; - CircleTimes: number; - Equilibrium: number; - GreaterLess: number; - LeftCeiling: number; - LessGreater: number; - MediumSpace: number; - NotPrecedes: number; - NotSucceeds: number; - OverBracket: number; - RightVector: number; - Rrightarrow: number; - RuleDelayed: number; - SmallCircle: number; - SquareUnion: number; - SubsetEqual: number; - UpDownArrow: number; - Updownarrow: number; - VerticalBar: number; - backepsilon: number; - blacksquare: number; - circledcirc: number; - circleddash: number; - curlyeqprec: number; - curlyeqsucc: number; - diamondsuit: number; - eqslantless: number; - expectation: number; - nRightarrow: number; - nrightarrow: number; - preccurlyeq: number; - precnapprox: number; - quaternions: number; - straightphi: number; - succcurlyeq: number; - succnapprox: number; - thickapprox: number; - updownarrow: number; - Bernoullis: number; - CirclePlus: number; - EqualTilde: number; - Fouriertrf: number; - ImaginaryI: number; - Laplacetrf: number; - LeftVector: number; - Lleftarrow: number; - NotElement: number; - NotGreater: number; - Proportion: number; - RightArrow: number; - RightFloor: number; - Rightarrow: number; - TildeEqual: number; - TildeTilde: number; - UnderBrace: number; - UpArrowBar: number; - UpTeeArrow: number; - circledast: number; - complement: number; - curlywedge: number; - eqslantgtr: number; - gtreqqless: number; - lessapprox: number; - lesseqqgtr: number; - lmoustache: number; - longmapsto: number; - mapstodown: number; - mapstoleft: number; - nLeftarrow: number; - nleftarrow: number; - precapprox: number; - rightarrow: number; - rmoustache: number; - sqsubseteq: number; - sqsupseteq: number; - subsetneqq: number; - succapprox: number; - supsetneqq: number; - upuparrows: number; - varepsilon: number; - varnothing: number; - Backslash: number; - CenterDot: number; - CircleDot: number; - Congruent: number; - Coproduct: number; - DoubleDot: number; - DownArrow: number; - DownBreve: number; - Downarrow: number; - HumpEqual: number; - LeftArrow: number; - LeftFloor: number; - Leftarrow: number; - LessTilde: number; - Mellintrf: number; - MinusPlus: number; - NotCupCap: number; - NotExists: number; - OverBrace: number; - PlusMinus: number; - Therefore: number; - ThinSpace: number; - TripleDot: number; - UnionPlus: number; - backprime: number; - backsimeq: number; - bigotimes: number; - centerdot: number; - checkmark: number; - complexes: number; - dotsquare: number; - downarrow: number; - gtrapprox: number; - gtreqless: number; - heartsuit: number; - leftarrow: number; - lesseqgtr: number; - nparallel: number; - nshortmid: number; - nsubseteq: number; - nsupseteq: number; - pitchfork: number; - rationals: number; - spadesuit: number; - subseteqq: number; - subsetneq: number; - supseteqq: number; - supsetneq: number; - therefore: number; - triangleq: number; - varpropto: number; - DDotrahd: number; - DotEqual: number; - Integral: number; - LessLess: number; - NotEqual: number; - NotTilde: number; - PartialD: number; - Precedes: number; - RightTee: number; - Succeeds: number; - SuchThat: number; - Superset: number; - Uarrocir: number; - UnderBar: number; - andslope: number; - angmsdaa: number; - angmsdab: number; - angmsdac: number; - angmsdad: number; - angmsdae: number; - angmsdaf: number; - angmsdag: number; - angmsdah: number; - angrtvbd: number; - approxeq: number; - awconint: number; - backcong: number; - barwedge: number; - bbrktbrk: number; - bigoplus: number; - bigsqcup: number; - biguplus: number; - bigwedge: number; - boxminus: number; - boxtimes: number; - capbrcup: number; - circledR: number; - circledS: number; - cirfnint: number; - clubsuit: number; - cupbrcap: number; - curlyvee: number; - cwconint: number; - doteqdot: number; - dotminus: number; - drbkarow: number; - dzigrarr: number; - elinters: number; - emptyset: number; - eqvparsl: number; - fpartint: number; - geqslant: number; - gesdotol: number; - gnapprox: number; - hksearow: number; - hkswarow: number; - imagline: number; - imagpart: number; - infintie: number; - integers: number; - intercal: number; - intlarhk: number; - laemptyv: number; - ldrushar: number; - leqslant: number; - lesdotor: number; - llcorner: number; - lnapprox: number; - lrcorner: number; - lurdshar: number; - mapstoup: number; - multimap: number; - naturals: number; - otimesas: number; - parallel: number; - plusacir: number; - pointint: number; - precneqq: number; - precnsim: number; - profalar: number; - profline: number; - profsurf: number; - raemptyv: number; - realpart: number; - rppolint: number; - rtriltri: number; - scpolint: number; - setminus: number; - shortmid: number; - smeparsl: number; - sqsubset: number; - sqsupset: number; - subseteq: number; - succneqq: number; - succnsim: number; - supseteq: number; - thetasym: number; - thicksim: number; - timesbar: number; - triangle: number; - triminus: number; - trpezium: number; - ulcorner: number; - urcorner: number; - varkappa: number; - varsigma: number; - vartheta: number; - Because: number; - Cayleys: number; - Cconint: number; - Cedilla: number; - Diamond: number; - DownTee: number; - Element: number; - Epsilon: number; - Implies: number; - LeftTee: number; - NewLine: number; - NoBreak: number; - NotLess: number; - Omicron: number; - OverBar: number; - Product: number; - UpArrow: number; - Uparrow: number; - Upsilon: number; - alefsym: number; - angrtvb: number; - angzarr: number; - asympeq: number; - backsim: number; - because: number; - bemptyv: number; - between: number; - bigcirc: number; - bigodot: number; - bigstar: number; - boxplus: number; - ccupssm: number; - cemptyv: number; - cirscir: number; - coloneq: number; - congdot: number; - cudarrl: number; - cudarrr: number; - cularrp: number; - curarrm: number; - dbkarow: number; - ddagger: number; - ddotseq: number; - demptyv: number; - diamond: number; - digamma: number; - dotplus: number; - dwangle: number; - epsilon: number; - eqcolon: number; - equivDD: number; - gesdoto: number; - gtquest: number; - gtrless: number; - harrcir: number; - intprod: number; - isindot: number; - larrbfs: number; - larrsim: number; - lbrksld: number; - lbrkslu: number; - ldrdhar: number; - lesdoto: number; - lessdot: number; - lessgtr: number; - lesssim: number; - lotimes: number; - lozenge: number; - ltquest: number; - luruhar: number; - maltese: number; - minusdu: number; - napprox: number; - natural: number; - nearrow: number; - nexists: number; - notinva: number; - notinvb: number; - notinvc: number; - notniva: number; - notnivb: number; - notnivc: number; - npolint: number; - nsqsube: number; - nsqsupe: number; - nvinfin: number; - nwarrow: number; - olcross: number; - omicron: number; - orderof: number; - orslope: number; - pertenk: number; - planckh: number; - pluscir: number; - plussim: number; - plustwo: number; - precsim: number; - quatint: number; - questeq: number; - rarrbfs: number; - rarrsim: number; - rbrksld: number; - rbrkslu: number; - rdldhar: number; - realine: number; - rotimes: number; - ruluhar: number; - searrow: number; - simplus: number; - simrarr: number; - subedot: number; - submult: number; - subplus: number; - subrarr: number; - succsim: number; - supdsub: number; - supedot: number; - suphsub: number; - suplarr: number; - supmult: number; - supplus: number; - swarrow: number; - topfork: number; - triplus: number; - tritime: number; - uparrow: number; - upsilon: number; - uwangle: number; - vzigzag: number; - zigrarr: number; - Aacute: number; - Abreve: number; - Agrave: number; - Assign: number; - Atilde: number; - Barwed: number; - Bumpeq: number; - Cacute: number; - Ccaron: number; - Ccedil: number; - Colone: number; - Conint: number; - CupCap: number; - Dagger: number; - Dcaron: number; - DotDot: number; - Dstrok: number; - Eacute: number; - Ecaron: number; - Egrave: number; - Exists: number; - ForAll: number; - Gammad: number; - Gbreve: number; - Gcedil: number; - HARDcy: number; - Hstrok: number; - Iacute: number; - Igrave: number; - Itilde: number; - Jsercy: number; - Kcedil: number; - Lacute: number; - Lambda: number; - Lcaron: number; - Lcedil: number; - Lmidot: number; - Lstrok: number; - Nacute: number; - Ncaron: number; - Ncedil: number; - Ntilde: number; - Oacute: number; - Odblac: number; - Ograve: number; - Oslash: number; - Otilde: number; - Otimes: number; - Racute: number; - Rarrtl: number; - Rcaron: number; - Rcedil: number; - SHCHcy: number; - SOFTcy: number; - Sacute: number; - Scaron: number; - Scedil: number; - Square: number; - Subset: number; - Supset: number; - Tcaron: number; - Tcedil: number; - Tstrok: number; - Uacute: number; - Ubreve: number; - Udblac: number; - Ugrave: number; - Utilde: number; - Vdashl: number; - Verbar: number; - Vvdash: number; - Yacute: number; - Zacute: number; - Zcaron: number; - aacute: number; - abreve: number; - agrave: number; - andand: number; - angmsd: number; - angsph: number; - apacir: number; - approx: number; - atilde: number; - barvee: number; - barwed: number; - becaus: number; - bernou: number; - bigcap: number; - bigcup: number; - bigvee: number; - bkarow: number; - bottom: number; - bowtie: number; - boxbox: number; - bprime: number; - brvbar: number; - bullet: number; - bumpeq: number; - cacute: number; - capand: number; - capcap: number; - capcup: number; - capdot: number; - ccaron: number; - ccedil: number; - circeq: number; - cirmid: number; - colone: number; - commat: number; - compfn: number; - conint: number; - coprod: number; - copysr: number; - cularr: number; - cupcap: number; - cupcup: number; - cupdot: number; - curarr: number; - curren: number; - cylcty: number; - dagger: number; - daleth: number; - dcaron: number; - dfisht: number; - divide: number; - divonx: number; - dlcorn: number; - dlcrop: number; - dollar: number; - drcorn: number; - drcrop: number; - dstrok: number; - eacute: number; - easter: number; - ecaron: number; - ecolon: number; - egrave: number; - egsdot: number; - elsdot: number; - emptyv: number; - emsp13: number; - emsp14: number; - eparsl: number; - eqcirc: number; - equals: number; - equest: number; - female: number; - ffilig: number; - ffllig: number; - forall: number; - frac12: number; - frac13: number; - frac14: number; - frac15: number; - frac16: number; - frac18: number; - frac23: number; - frac25: number; - frac34: number; - frac35: number; - frac38: number; - frac45: number; - frac56: number; - frac58: number; - frac78: number; - gacute: number; - gammad: number; - gbreve: number; - gesdot: number; - gesles: number; - gtlPar: number; - gtrarr: number; - gtrdot: number; - gtrsim: number; - hairsp: number; - hamilt: number; - hardcy: number; - hearts: number; - hellip: number; - hercon: number; - homtht: number; - horbar: number; - hslash: number; - hstrok: number; - hybull: number; - hyphen: number; - iacute: number; - igrave: number; - iiiint: number; - iinfin: number; - incare: number; - inodot: number; - intcal: number; - iquest: number; - isinsv: number; - itilde: number; - jsercy: number; - kappav: number; - kcedil: number; - kgreen: number; - lAtail: number; - lacute: number; - lagran: number; - lambda: number; - langle: number; - larrfs: number; - larrhk: number; - larrlp: number; - larrpl: number; - larrtl: number; - latail: number; - lbrace: number; - lbrack: number; - lcaron: number; - lcedil: number; - ldquor: number; - lesdot: number; - lesges: number; - lfisht: number; - lfloor: number; - lharul: number; - llhard: number; - lmidot: number; - lmoust: number; - loplus: number; - lowast: number; - lowbar: number; - lparlt: number; - lrhard: number; - lsaquo: number; - lsquor: number; - lstrok: number; - lthree: number; - ltimes: number; - ltlarr: number; - ltrPar: number; - mapsto: number; - marker: number; - mcomma: number; - midast: number; - midcir: number; - middot: number; - minusb: number; - minusd: number; - mnplus: number; - models: number; - mstpos: number; - nVDash: number; - nVdash: number; - nacute: number; - ncaron: number; - ncedil: number; - nearhk: number; - nequiv: number; - nesear: number; - nexist: number; - nltrie: number; - nprcue: number; - nrtrie: number; - nsccue: number; - nsimeq: number; - ntilde: number; - numero: number; - nvDash: number; - nvHarr: number; - nvdash: number; - nvlArr: number; - nvrArr: number; - nwarhk: number; - nwnear: number; - oacute: number; - odblac: number; - odsold: number; - ograve: number; - ominus: number; - origof: number; - oslash: number; - otilde: number; - otimes: number; - parsim: number; - percnt: number; - period: number; - permil: number; - phmmat: number; - planck: number; - plankv: number; - plusdo: number; - plusdu: number; - plusmn: number; - preceq: number; - primes: number; - prnsim: number; - propto: number; - prurel: number; - puncsp: number; - qprime: number; - rAtail: number; - racute: number; - rangle: number; - rarrap: number; - rarrfs: number; - rarrhk: number; - rarrlp: number; - rarrpl: number; - rarrtl: number; - ratail: number; - rbrace: number; - rbrack: number; - rcaron: number; - rcedil: number; - rdquor: number; - rfisht: number; - rfloor: number; - rharul: number; - rmoust: number; - roplus: number; - rpargt: number; - rsaquo: number; - rsquor: number; - rthree: number; - rtimes: number; - sacute: number; - scaron: number; - scedil: number; - scnsim: number; - searhk: number; - seswar: number; - sfrown: number; - shchcy: number; - sigmaf: number; - sigmav: number; - simdot: number; - smashp: number; - softcy: number; - solbar: number; - spades: number; - sqsube: number; - sqsupe: number; - square: number; - squarf: number; - ssetmn: number; - ssmile: number; - sstarf: number; - subdot: number; - subset: number; - subsim: number; - subsub: number; - subsup: number; - succeq: number; - supdot: number; - supset: number; - supsim: number; - supsub: number; - supsup: number; - swarhk: number; - swnwar: number; - target: number; - tcaron: number; - tcedil: number; - telrec: number; - there4: number; - thetav: number; - thinsp: number; - thksim: number; - timesb: number; - timesd: number; - topbot: number; - topcir: number; - tprime: number; - tridot: number; - tstrok: number; - uacute: number; - ubreve: number; - udblac: number; - ufisht: number; - ugrave: number; - ulcorn: number; - ulcrop: number; - urcorn: number; - urcrop: number; - utilde: number; - vangrt: number; - varphi: number; - varrho: number; - veebar: number; - vellip: number; - verbar: number; - wedbar: number; - wedgeq: number; - weierp: number; - wreath: number; - xoplus: number; - xotime: number; - xsqcup: number; - xuplus: number; - xwedge: number; - yacute: number; - zacute: number; - zcaron: number; - zeetrf: number; - AElig: number; - Acirc: number; - Alpha: number; - Amacr: number; - Aogon: number; - Aring: number; - Breve: number; - Ccirc: number; - Colon: number; - Cross: number; - Dashv: number; - Delta: number; - Ecirc: number; - Emacr: number; - Eogon: number; - Equal: number; - Gamma: number; - Gcirc: number; - Hacek: number; - Hcirc: number; - IJlig: number; - Icirc: number; - Imacr: number; - Iogon: number; - Iukcy: number; - Jcirc: number; - Jukcy: number; - Kappa: number; - OElig: number; - Ocirc: number; - Omacr: number; - Omega: number; - Prime: number; - RBarr: number; - Scirc: number; - Sigma: number; - THORN: number; - TRADE: number; - TSHcy: number; - Theta: number; - Tilde: number; - Ubrcy: number; - Ucirc: number; - Umacr: number; - Union: number; - Uogon: number; - UpTee: number; - Uring: number; - VDash: number; - Vdash: number; - Wcirc: number; - Wedge: number; - Ycirc: number; - acirc: number; - acute: number; - aelig: number; - aleph: number; - alpha: number; - amacr: number; - amalg: number; - angle: number; - angrt: number; - angst: number; - aogon: number; - aring: number; - asymp: number; - awint: number; - bcong: number; - bdquo: number; - bepsi: number; - blank: number; - blk12: number; - blk14: number; - blk34: number; - block: number; - boxDL: number; - boxDR: number; - boxDl: number; - boxDr: number; - boxHD: number; - boxHU: number; - boxHd: number; - boxHu: number; - boxUL: number; - boxUR: number; - boxUl: number; - boxUr: number; - boxVH: number; - boxVL: number; - boxVR: number; - boxVh: number; - boxVl: number; - boxVr: number; - boxdL: number; - boxdR: number; - boxdl: number; - boxdr: number; - boxhD: number; - boxhU: number; - boxhd: number; - boxhu: number; - boxuL: number; - boxuR: number; - boxul: number; - boxur: number; - boxvH: number; - boxvL: number; - boxvR: number; - boxvh: number; - boxvl: number; - boxvr: number; - breve: number; - bsemi: number; - bsime: number; - bsolb: number; - bumpE: number; - bumpe: number; - caret: number; - caron: number; - ccaps: number; - ccirc: number; - ccups: number; - cedil: number; - check: number; - clubs: number; - colon: number; - comma: number; - crarr: number; - cross: number; - csube: number; - csupe: number; - ctdot: number; - cuepr: number; - cuesc: number; - cupor: number; - cuvee: number; - cuwed: number; - cwint: number; - dashv: number; - dblac: number; - ddarr: number; - delta: number; - dharl: number; - dharr: number; - diams: number; - disin: number; - doteq: number; - dtdot: number; - dtrif: number; - duarr: number; - duhar: number; - eDDot: number; - ecirc: number; - efDot: number; - emacr: number; - empty: number; - eogon: number; - eplus: number; - epsiv: number; - eqsim: number; - equiv: number; - erDot: number; - erarr: number; - esdot: number; - exist: number; - fflig: number; - filig: number; - fllig: number; - fltns: number; - forkv: number; - frasl: number; - frown: number; - gamma: number; - gcirc: number; - gescc: number; - gimel: number; - gneqq: number; - gnsim: number; - grave: number; - gsime: number; - gsiml: number; - gtcir: number; - gtdot: number; - harrw: number; - hcirc: number; - hoarr: number; - icirc: number; - iexcl: number; - iiint: number; - iiota: number; - ijlig: number; - imacr: number; - image: number; - imath: number; - imped: number; - infin: number; - iogon: number; - iprod: number; - isinE: number; - isins: number; - isinv: number; - iukcy: number; - jcirc: number; - jmath: number; - jukcy: number; - kappa: number; - lAarr: number; - lBarr: number; - langd: number; - laquo: number; - larrb: number; - lbarr: number; - lbbrk: number; - lbrke: number; - lceil: number; - ldquo: number; - lescc: number; - lhard: number; - lharu: number; - lhblk: number; - llarr: number; - lltri: number; - lneqq: number; - lnsim: number; - loang: number; - loarr: number; - lobrk: number; - lopar: number; - lrarr: number; - lrhar: number; - lrtri: number; - lsime: number; - lsimg: number; - lsquo: number; - ltcir: number; - ltdot: number; - ltrie: number; - ltrif: number; - mDDot: number; - mdash: number; - micro: number; - minus: number; - mumap: number; - nabla: number; - napos: number; - natur: number; - ncong: number; - ndash: number; - neArr: number; - nearr: number; - ngsim: number; - nhArr: number; - nharr: number; - nhpar: number; - nlArr: number; - nlarr: number; - nless: number; - nlsim: number; - nltri: number; - notin: number; - notni: number; - nprec: number; - nrArr: number; - nrarr: number; - nrtri: number; - nsime: number; - nsmid: number; - nspar: number; - nsube: number; - nsucc: number; - nsupe: number; - numsp: number; - nwArr: number; - nwarr: number; - ocirc: number; - odash: number; - oelig: number; - ofcir: number; - ohbar: number; - olarr: number; - olcir: number; - oline: number; - omacr: number; - omega: number; - operp: number; - oplus: number; - orarr: number; - order: number; - ovbar: number; - parsl: number; - phone: number; - plusb: number; - pluse: number; - pound: number; - prcue: number; - prime: number; - prnap: number; - prsim: number; - quest: number; - rAarr: number; - rBarr: number; - radic: number; - rangd: number; - range: number; - raquo: number; - rarrb: number; - rarrc: number; - rarrw: number; - ratio: number; - rbarr: number; - rbbrk: number; - rbrke: number; - rceil: number; - rdquo: number; - reals: number; - rhard: number; - rharu: number; - rlarr: number; - rlhar: number; - rnmid: number; - roang: number; - roarr: number; - robrk: number; - ropar: number; - rrarr: number; - rsquo: number; - rtrie: number; - rtrif: number; - sbquo: number; - sccue: number; - scirc: number; - scnap: number; - scsim: number; - sdotb: number; - sdote: number; - seArr: number; - searr: number; - setmn: number; - sharp: number; - sigma: number; - simeq: number; - simgE: number; - simlE: number; - simne: number; - slarr: number; - smile: number; - sqcap: number; - sqcup: number; - sqsub: number; - sqsup: number; - srarr: number; - starf: number; - strns: number; - subnE: number; - subne: number; - supnE: number; - supne: number; - swArr: number; - swarr: number; - szlig: number; - theta: number; - thkap: number; - thorn: number; - tilde: number; - times: number; - trade: number; - trisb: number; - tshcy: number; - twixt: number; - ubrcy: number; - ucirc: number; - udarr: number; - udhar: number; - uharl: number; - uharr: number; - uhblk: number; - ultri: number; - umacr: number; - uogon: number; - uplus: number; - upsih: number; - uring: number; - urtri: number; - utdot: number; - utrif: number; - uuarr: number; - vBarv: number; - vDash: number; - varpi: number; - vdash: number; - veeeq: number; - vltri: number; - vprop: number; - vrtri: number; - wcirc: number; - wedge: number; - xcirc: number; - xdtri: number; - xhArr: number; - xharr: number; - xlArr: number; - xlarr: number; - xodot: number; - xrArr: number; - xrarr: number; - xutri: number; - ycirc: number; - Aopf: number; - Ascr: number; - Auml: number; - Barv: number; - Beta: number; - Bopf: number; - Bscr: number; - CHcy: number; - COPY: number; - Cdot: number; - Copf: number; - Cscr: number; - DJcy: number; - DScy: number; - DZcy: number; - Darr: number; - Dopf: number; - Dscr: number; - Edot: number; - Eopf: number; - Escr: number; - Esim: number; - Euml: number; - Fopf: number; - Fscr: number; - GJcy: number; - Gdot: number; - Gopf: number; - Gscr: number; - Hopf: number; - Hscr: number; - IEcy: number; - IOcy: number; - Idot: number; - Iopf: number; - Iota: number; - Iscr: number; - Iuml: number; - Jopf: number; - Jscr: number; - KHcy: number; - KJcy: number; - Kopf: number; - Kscr: number; - LJcy: number; - Lang: number; - Larr: number; - Lopf: number; - Lscr: number; - Mopf: number; - Mscr: number; - NJcy: number; - Nopf: number; - Nscr: number; - Oopf: number; - Oscr: number; - Ouml: number; - Popf: number; - Pscr: number; - QUOT: number; - Qopf: number; - Qscr: number; - Rang: number; - Rarr: number; - Ropf: number; - Rscr: number; - SHcy: number; - Sopf: number; - Sqrt: number; - Sscr: number; - Star: number; - TScy: number; - Topf: number; - Tscr: number; - Uarr: number; - Uopf: number; - Upsi: number; - Uscr: number; - Uuml: number; - Vbar: number; - Vert: number; - Vopf: number; - Vscr: number; - Wopf: number; - Wscr: number; - Xopf: number; - Xscr: number; - YAcy: number; - YIcy: number; - YUcy: number; - Yopf: number; - Yscr: number; - Yuml: number; - ZHcy: number; - Zdot: number; - Zeta: number; - Zopf: number; - Zscr: number; - andd: number; - andv: number; - ange: number; - aopf: number; - apid: number; - apos: number; - ascr: number; - auml: number; - bNot: number; - bbrk: number; - beta: number; - beth: number; - bnot: number; - bopf: number; - boxH: number; - boxV: number; - boxh: number; - boxv: number; - bscr: number; - bsim: number; - bsol: number; - bull: number; - bump: number; - cdot: number; - cent: number; - chcy: number; - cirE: number; - circ: number; - cire: number; - comp: number; - cong: number; - copf: number; - copy: number; - cscr: number; - csub: number; - csup: number; - dArr: number; - dHar: number; - darr: number; - dash: number; - diam: number; - djcy: number; - dopf: number; - dscr: number; - dscy: number; - dsol: number; - dtri: number; - dzcy: number; - eDot: number; - ecir: number; - edot: number; - emsp: number; - ensp: number; - eopf: number; - epar: number; - epsi: number; - escr: number; - esim: number; - euml: number; - euro: number; - excl: number; - flat: number; - fnof: number; - fopf: number; - fork: number; - fscr: number; - gdot: number; - geqq: number; - gjcy: number; - gnap: number; - gneq: number; - gopf: number; - gscr: number; - gsim: number; - gtcc: number; - hArr: number; - half: number; - harr: number; - hbar: number; - hopf: number; - hscr: number; - iecy: number; - imof: number; - iocy: number; - iopf: number; - iota: number; - iscr: number; - isin: number; - iuml: number; - jopf: number; - jscr: number; - khcy: number; - kjcy: number; - kopf: number; - kscr: number; - lArr: number; - lHar: number; - lang: number; - larr: number; - late: number; - lcub: number; - ldca: number; - ldsh: number; - leqq: number; - ljcy: number; - lnap: number; - lneq: number; - lopf: number; - lozf: number; - lpar: number; - lscr: number; - lsim: number; - lsqb: number; - ltcc: number; - ltri: number; - macr: number; - male: number; - malt: number; - mlcp: number; - mldr: number; - mopf: number; - mscr: number; - nbsp: number; - ncap: number; - ncup: number; - ngeq: number; - ngtr: number; - nisd: number; - njcy: number; - nldr: number; - nleq: number; - nmid: number; - nopf: number; - npar: number; - nscr: number; - nsim: number; - nsub: number; - nsup: number; - ntgl: number; - ntlg: number; - oast: number; - ocir: number; - odiv: number; - odot: number; - ogon: number; - oint: number; - omid: number; - oopf: number; - opar: number; - ordf: number; - ordm: number; - oror: number; - oscr: number; - osol: number; - ouml: number; - para: number; - part: number; - perp: number; - phiv: number; - plus: number; - popf: number; - prap: number; - prec: number; - prnE: number; - prod: number; - prop: number; - pscr: number; - qint: number; - qopf: number; - qscr: number; - quot: number; - rArr: number; - rHar: number; - race: number; - rang: number; - rarr: number; - rcub: number; - rdca: number; - rdsh: number; - real: number; - rect: number; - rhov: number; - ring: number; - ropf: number; - rpar: number; - rscr: number; - rsqb: number; - rtri: number; - scap: number; - scnE: number; - sdot: number; - sect: number; - semi: number; - sext: number; - shcy: number; - sime: number; - simg: number; - siml: number; - smid: number; - smte: number; - solb: number; - sopf: number; - spar: number; - squf: number; - sscr: number; - star: number; - subE: number; - sube: number; - succ: number; - sung: number; - sup1: number; - sup2: number; - sup3: number; - supE: number; - supe: number; - tbrk: number; - tdot: number; - tint: number; - toea: number; - topf: number; - tosa: number; - trie: number; - tscr: number; - tscy: number; - uArr: number; - uHar: number; - uarr: number; - uopf: number; - upsi: number; - uscr: number; - utri: number; - uuml: number; - vArr: number; - vBar: number; - varr: number; - vert: number; - vopf: number; - vscr: number; - wopf: number; - wscr: number; - xcap: number; - xcup: number; - xmap: number; - xnis: number; - xopf: number; - xscr: number; - xvee: number; - yacy: number; - yicy: number; - yopf: number; - yscr: number; - yucy: number; - yuml: number; - zdot: number; - zeta: number; - zhcy: number; - zopf: number; - zscr: number; - zwnj: number; - AMP: number; - Acy: number; - Afr: number; - And: number; - Bcy: number; - Bfr: number; - Cap: number; - Cfr: number; - Chi: number; - Cup: number; - Dcy: number; - Del: number; - Dfr: number; - Dot: number; - ENG: number; - ETH: number; - Ecy: number; - Efr: number; - Eta: number; - Fcy: number; - Ffr: number; - Gcy: number; - Gfr: number; - Hat: number; - Hfr: number; - Icy: number; - Ifr: number; - Int: number; - Jcy: number; - Jfr: number; - Kcy: number; - Kfr: number; - Lcy: number; - Lfr: number; - Lsh: number; - Map: number; - Mcy: number; - Mfr: number; - Ncy: number; - Nfr: number; - Not: number; - Ocy: number; - Ofr: number; - Pcy: number; - Pfr: number; - Phi: number; - Psi: number; - Qfr: number; - REG: number; - Rcy: number; - Rfr: number; - Rho: number; - Rsh: number; - Scy: number; - Sfr: number; - Sub: number; - Sum: number; - Sup: number; - Tab: number; - Tau: number; - Tcy: number; - Tfr: number; - Ucy: number; - Ufr: number; - Vcy: number; - Vee: number; - Vfr: number; - Wfr: number; - Xfr: number; - Ycy: number; - Yfr: number; - Zcy: number; - Zfr: number; - acd: number; - acy: number; - afr: number; - amp: number; - and: number; - ang: number; - apE: number; - ape: number; - ast: number; - bcy: number; - bfr: number; - bot: number; - cap: number; - cfr: number; - chi: number; - cir: number; - cup: number; - dcy: number; - deg: number; - dfr: number; - die: number; - div: number; - dot: number; - ecy: number; - efr: number; - egs: number; - ell: number; - els: number; - eng: number; - eta: number; - eth: number; - fcy: number; - ffr: number; - gEl: number; - gap: number; - gcy: number; - gel: number; - geq: number; - ges: number; - gfr: number; - ggg: number; - glE: number; - gla: number; - glj: number; - gnE: number; - gne: number; - hfr: number; - icy: number; - iff: number; - ifr: number; - int: number; - jcy: number; - jfr: number; - kcy: number; - kfr: number; - lEg: number; - lap: number; - lat: number; - lcy: number; - leg: number; - leq: number; - les: number; - lfr: number; - lgE: number; - lnE: number; - lne: number; - loz: number; - lrm: number; - lsh: number; - map: number; - mcy: number; - mfr: number; - mho: number; - mid: number; - nap: number; - ncy: number; - nfr: number; - nge: number; - ngt: number; - nis: number; - niv: number; - nle: number; - nlt: number; - not: number; - npr: number; - nsc: number; - num: number; - ocy: number; - ofr: number; - ogt: number; - ohm: number; - olt: number; - ord: number; - orv: number; - par: number; - pcy: number; - pfr: number; - phi: number; - piv: number; - prE: number; - pre: number; - psi: number; - qfr: number; - rcy: number; - reg: number; - rfr: number; - rho: number; - rlm: number; - rsh: number; - scE: number; - sce: number; - scy: number; - sfr: number; - shy: number; - sim: number; - smt: number; - sol: number; - squ: number; - sub: number; - sum: number; - sup: number; - tau: number; - tcy: number; - tfr: number; - top: number; - ucy: number; - ufr: number; - uml: number; - vcy: number; - vee: number; - vfr: number; - wfr: number; - xfr: number; - ycy: number; - yen: number; - yfr: number; - zcy: number; - zfr: number; - zwj: number; - DD: number; - GT: number; - Gg: number; - Gt: number; - Im: number; - LT: number; - Ll: number; - Lt: number; - Mu: number; - Nu: number; - Or: number; - Pi: number; - Pr: number; - Re: number; - Sc: number; - Xi: number; - ac: number; - af: number; - ap: number; - dd: number; - ee: number; - eg: number; - el: number; - gE: number; - ge: number; - gg: number; - gl: number; - gt: number; - ic: number; - ii: number; - in: number; - it: number; - lE: number; - le: number; - lg: number; - ll: number; - lt: number; - mp: number; - mu: number; - ne: number; - ni: number; - nu: number; - oS: number; - or: number; - pi: number; - pm: number; - pr: number; - rx: number; - sc: number; - wp: number; - wr: number; - xi: number; -}; -export default _default; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/html.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/html.d.ts deleted file mode 100644 index b0296c0d8d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/html.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function decode_character_references(html: string): string; -export declare function closing_tag_omitted(current: string, next?: string): boolean; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/node.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/node.d.ts deleted file mode 100644 index 9194910ae7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/parse/utils/node.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { TemplateNode } from '../../interfaces'; -export declare function to_string(node: TemplateNode): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/decode_sourcemap.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/decode_sourcemap.d.ts deleted file mode 100644 index ad121759b5..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/decode_sourcemap.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Processed } from './types'; -export declare function decode_map(processed: Processed): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/index.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/index.d.ts deleted file mode 100644 index a50eb8397d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { PreprocessorGroup, Processed } from './types'; -export * from './types'; -export default function preprocess(source: string, preprocessor: PreprocessorGroup | PreprocessorGroup[], options?: { - filename?: string; -}): Promise; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/replace_in_code.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/replace_in_code.d.ts deleted file mode 100644 index 43f72c3b41..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/replace_in_code.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { MappedCode } from '../utils/mapped_code'; -import { Source } from './types'; -export declare function slice_source(code_slice: string, offset: number, { file_basename, filename, get_location }: Source): Source; -export declare function replace_in_code(regex: RegExp, get_replacement: (...match: any[]) => Promise, location: Source): Promise; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/types.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/types.d.ts deleted file mode 100644 index b80dad4a76..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/preprocess/types.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -export interface Processed { - code: string; - map?: string | object; - dependencies?: string[]; - toString?: () => string; -} -export declare type MarkupPreprocessor = (options: { - content: string; - filename?: string; -}) => Processed | void | Promise; -export declare type Preprocessor = (options: { - /** - * The script/style tag content - */ - content: string; - attributes: Record; - /** - * The whole Svelte file content - */ - markup: string; - filename?: string; -}) => Processed | void | Promise; -export interface PreprocessorGroup { - markup?: MarkupPreprocessor; - style?: Preprocessor; - script?: Preprocessor; -} diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/clone.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/clone.d.ts deleted file mode 100644 index ae2456bb28..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/clone.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function clone(val: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/error.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/error.d.ts deleted file mode 100644 index babd2bbdb9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/error.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export default function error(message: string, props: { - name: string; - code: string; - source: string; - filename: string; - start: number; - end?: number; -}): never; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/extract_svelte_ignore.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/extract_svelte_ignore.d.ts deleted file mode 100644 index f76caba884..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/extract_svelte_ignore.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { TemplateNode } from '../interfaces'; -export declare function extract_svelte_ignore(text: string): string[]; -export declare function extract_svelte_ignore_from_comments; -}>(node: Node): string[]; -export declare function extract_ignores_above_position(position: number, template_nodes: TemplateNode[]): string[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/flatten.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/flatten.d.ts deleted file mode 100644 index a897ae39b0..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/flatten.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function flatten(nodes: T[][], target?: T[]): T[]; -export declare function flatten(nodes: T[], target?: T[]): T[]; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/full_char_code_at.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/full_char_code_at.d.ts deleted file mode 100644 index f0d6763971..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/full_char_code_at.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function full_char_code_at(str: string, i: number): number; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/fuzzymatch.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/fuzzymatch.d.ts deleted file mode 100644 index 6aa4e011df..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/fuzzymatch.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function fuzzymatch(name: string, names: string[]): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/get_code_frame.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/get_code_frame.d.ts deleted file mode 100644 index 50943dc998..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/get_code_frame.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function get_code_frame(source: string, line: number, column: number): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/link.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/link.d.ts deleted file mode 100644 index e73ccbce10..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/link.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare function link(next: T, prev: T): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/list.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/list.d.ts deleted file mode 100644 index b61de6978b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/list.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function list(items: string[], conjunction?: string): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/mapped_code.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/mapped_code.d.ts deleted file mode 100644 index b6aa289713..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/mapped_code.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { DecodedSourceMap, RawSourceMap } from '@ampproject/remapping/dist/types/types'; -import { SourceMap } from 'magic-string'; -import { Source, Processed } from '../preprocess/types'; -export declare type SourceLocation = { - line: number; - column: number; -}; -export declare function sourcemap_add_offset(map: DecodedSourceMap, offset: SourceLocation, source_index: number): void; -export declare class MappedCode { - string: string; - map: DecodedSourceMap; - constructor(string?: string, map?: DecodedSourceMap); - /** - * concat in-place (mutable), return this (chainable) - * will also mutate the `other` object - */ - concat(other: MappedCode): MappedCode; - static from_processed(string: string, map?: DecodedSourceMap): MappedCode; - static from_source({ source, file_basename, get_location }: Source): MappedCode; -} -export declare function combine_sourcemaps(filename: string, sourcemap_list: Array): RawSourceMap; -export declare function apply_preprocessor_sourcemap(filename: string, svelte_map: SourceMap, preprocessor_map_input: string | DecodedSourceMap | RawSourceMap): SourceMap; -export declare function parse_attached_sourcemap(processed: Processed, tag_name: 'script' | 'style'): void; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/names.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/names.d.ts deleted file mode 100644 index 8f23a9b51d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/names.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare const globals: Set; -export declare const reserved: Set; -export declare function is_void(name: string): boolean; -export declare function is_valid(str: string): boolean; -export declare function sanitize(name: string): string; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/namespaces.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/namespaces.d.ts deleted file mode 100644 index 31dba3a150..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/namespaces.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export declare const foreign = "https://svelte.dev/docs#template-syntax-svelte-options"; -export declare const html = "http://www.w3.org/1999/xhtml"; -export declare const mathml = "http://www.w3.org/1998/Math/MathML"; -export declare const svg = "http://www.w3.org/2000/svg"; -export declare const xlink = "http://www.w3.org/1999/xlink"; -export declare const xml = "http://www.w3.org/XML/1998/namespace"; -export declare const xmlns = "http://www.w3.org/2000/xmlns"; -export declare const valid_namespaces: string[]; -export declare const namespaces: Record; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/nodes_match.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/nodes_match.d.ts deleted file mode 100644 index 065e81bcc7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/nodes_match.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function nodes_match(a: any, b: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/patterns.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/patterns.d.ts deleted file mode 100644 index 2cb3678998..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/patterns.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare const whitespace: RegExp; -export declare const start_whitespace: RegExp; -export declare const end_whitespace: RegExp; -export declare const dimensions: RegExp; diff --git a/packages/frontend-core/node_modules/svelte/types/compiler/utils/trim.d.ts b/packages/frontend-core/node_modules/svelte/types/compiler/utils/trim.d.ts deleted file mode 100644 index 7f8e2824a7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/compiler/utils/trim.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function trim_start(str: string): string; -export declare function trim_end(str: string): string; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/ambient.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/ambient.d.ts deleted file mode 100644 index d8c267b25a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/ambient.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare module '*.svelte' { - export { SvelteComponentDev as default } from 'svelte/internal'; -} diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/animate/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/animate/index.d.ts deleted file mode 100644 index 5645806aff..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/animate/index.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -export interface AnimationConfig { - delay?: number; - duration?: number; - easing?: (t: number) => number; - css?: (t: number, u: number) => string; - tick?: (t: number, u: number) => void; -} -export interface FlipParams { - delay?: number; - duration?: number | ((len: number) => number); - easing?: (t: number) => number; -} -export declare function flip(node: Element, { from, to }: { - from: DOMRect; - to: DOMRect; -}, params?: FlipParams): AnimationConfig; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/easing/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/easing/index.d.ts deleted file mode 100644 index c8d34d21b1..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/easing/index.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -export { identity as linear } from 'svelte/internal'; -export declare function backInOut(t: number): number; -export declare function backIn(t: number): number; -export declare function backOut(t: number): number; -export declare function bounceOut(t: number): number; -export declare function bounceInOut(t: number): number; -export declare function bounceIn(t: number): number; -export declare function circInOut(t: number): number; -export declare function circIn(t: number): number; -export declare function circOut(t: number): number; -export declare function cubicInOut(t: number): number; -export declare function cubicIn(t: number): number; -export declare function cubicOut(t: number): number; -export declare function elasticInOut(t: number): number; -export declare function elasticIn(t: number): number; -export declare function elasticOut(t: number): number; -export declare function expoInOut(t: number): number; -export declare function expoIn(t: number): number; -export declare function expoOut(t: number): number; -export declare function quadInOut(t: number): number; -export declare function quadIn(t: number): number; -export declare function quadOut(t: number): number; -export declare function quartInOut(t: number): number; -export declare function quartIn(t: number): number; -export declare function quartOut(t: number): number; -export declare function quintInOut(t: number): number; -export declare function quintIn(t: number): number; -export declare function quintOut(t: number): number; -export declare function sineInOut(t: number): number; -export declare function sineIn(t: number): number; -export declare function sineOut(t: number): number; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/index.d.ts deleted file mode 100644 index a0d4acc869..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import './ambient'; -export { onMount, onDestroy, beforeUpdate, afterUpdate, setContext, getContext, getAllContexts, hasContext, tick, createEventDispatcher, SvelteComponentDev as SvelteComponent, SvelteComponentTyped } from 'svelte/internal'; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/Component.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/Component.d.ts deleted file mode 100644 index f361973e33..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/Component.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -/** - * INTERNAL, DO NOT USE. Code may change at any time. - */ -export interface Fragment { - key: string | null; - first: null; - c: () => void; - l: (nodes: any) => void; - h: () => void; - m: (target: HTMLElement, anchor: any) => void; - p: (ctx: any, dirty: any) => void; - r: () => void; - f: () => void; - a: () => void; - i: (local: any) => void; - o: (local: any) => void; - d: (detaching: 0 | 1) => void; -} -interface T$$ { - dirty: number[]; - ctx: null | any; - bound: any; - update: () => void; - callbacks: any; - after_update: any[]; - props: Record; - fragment: null | false | Fragment; - not_equal: any; - before_update: any[]; - context: Map; - on_mount: any[]; - on_destroy: any[]; - skip_bound: boolean; - on_disconnect: any[]; - root: Element | ShadowRoot; -} -export declare function bind(component: any, name: any, callback: any): void; -export declare function create_component(block: any): void; -export declare function claim_component(block: any, parent_nodes: any): void; -export declare function mount_component(component: any, target: any, anchor: any, customElement: any): void; -export declare function destroy_component(component: any, detaching: any): void; -export declare function init(component: any, options: any, instance: any, create_fragment: any, not_equal: any, props: any, append_styles: any, dirty?: number[]): void; -export declare let SvelteElement: any; -/** - * Base class for Svelte components. Used when dev=false. - */ -export declare class SvelteComponent { - $$: T$$; - $$set?: ($$props: any) => void; - $destroy(): void; - $on(type: any, callback: any): () => void; - $set($$props: any): void; -} -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/animations.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/animations.d.ts deleted file mode 100644 index 5158611867..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/animations.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { noop } from './utils'; -import { AnimationConfig } from '../animate'; -declare type PositionRect = DOMRect | ClientRect; -declare type AnimationFn = (node: Element, { from, to }: { - from: PositionRect; - to: PositionRect; -}, params: any) => AnimationConfig; -export declare function create_animation(node: Element & ElementCSSInlineStyle, from: PositionRect, fn: AnimationFn, params: any): typeof noop; -export declare function fix_position(node: Element & ElementCSSInlineStyle): void; -export declare function add_transform(node: Element & ElementCSSInlineStyle, a: PositionRect): void; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/await_block.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/await_block.d.ts deleted file mode 100644 index 81b50345de..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/await_block.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function handle_promise(promise: any, info: any): boolean; -export declare function update_await_block_branch(info: any, ctx: any, dirty: any): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/dev.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/dev.d.ts deleted file mode 100644 index 3574b8dabb..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/dev.d.ts +++ /dev/null @@ -1,125 +0,0 @@ -import { SvelteComponent } from './Component'; -export declare function dispatch_dev(type: string, detail?: T): void; -export declare function append_dev(target: Node, node: Node): void; -export declare function append_hydration_dev(target: Node, node: Node): void; -export declare function insert_dev(target: Node, node: Node, anchor?: Node): void; -export declare function insert_hydration_dev(target: Node, node: Node, anchor?: Node): void; -export declare function detach_dev(node: Node): void; -export declare function detach_between_dev(before: Node, after: Node): void; -export declare function detach_before_dev(after: Node): void; -export declare function detach_after_dev(before: Node): void; -export declare function listen_dev(node: Node, event: string, handler: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | EventListenerOptions, has_prevent_default?: boolean, has_stop_propagation?: boolean): () => void; -export declare function attr_dev(node: Element, attribute: string, value?: string): void; -export declare function prop_dev(node: Element, property: string, value?: any): void; -export declare function dataset_dev(node: HTMLElement, property: string, value?: any): void; -export declare function set_data_dev(text: any, data: any): void; -export declare function validate_each_argument(arg: any): void; -export declare function validate_slots(name: any, slot: any, keys: any): void; -declare type Props = Record; -export interface SvelteComponentDev { - $set(props?: Props): void; - $on(event: string, callback: (event: any) => void): () => void; - $destroy(): void; - [accessor: string]: any; -} -interface IComponentOptions = Record> { - target: Element | ShadowRoot; - anchor?: Element; - props?: Props; - context?: Map; - hydrate?: boolean; - intro?: boolean; - $$inline?: boolean; -} -/** - * Base class for Svelte components with some minor dev-enhancements. Used when dev=true. - */ -export declare class SvelteComponentDev extends SvelteComponent { - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$prop_def: Props; - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$events_def: any; - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$slot_def: any; - constructor(options: IComponentOptions); - $capture_state(): void; - $inject_state(): void; -} -export interface SvelteComponentTyped = any, Events extends Record = any, Slots extends Record = any> { - $set(props?: Partial): void; - $on>(type: K, callback: (e: Events[K]) => void): () => void; - $destroy(): void; - [accessor: string]: any; -} -/** - * Base class to create strongly typed Svelte components. - * This only exists for typing purposes and should be used in `.d.ts` files. - * - * ### Example: - * - * You have component library on npm called `component-library`, from which - * you export a component called `MyComponent`. For Svelte+TypeScript users, - * you want to provide typings. Therefore you create a `index.d.ts`: - * ```ts - * import { SvelteComponentTyped } from "svelte"; - * export class MyComponent extends SvelteComponentTyped<{foo: string}> {} - * ``` - * Typing this makes it possible for IDEs like VS Code with the Svelte extension - * to provide intellisense and to use the component like this in a Svelte file - * with TypeScript: - * ```svelte - * - * - * ``` - * - * #### Why not make this part of `SvelteComponent(Dev)`? - * Because - * ```ts - * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {} - * const component: typeof SvelteComponent = ASubclassOfSvelteComponent; - * ``` - * will throw a type error, so we need to separate the more strictly typed class. - */ -export declare class SvelteComponentTyped = any, Events extends Record = any, Slots extends Record = any> extends SvelteComponentDev { - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$prop_def: Props; - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$events_def: Events; - /** - * @private - * For type checking capabilities only. - * Does not exist at runtime. - * ### DO NOT USE! - */ - $$slot_def: Slots; - constructor(options: IComponentOptions); -} -export declare function loop_guard(timeout: any): () => void; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/dom.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/dom.d.ts deleted file mode 100644 index 6035c0f4ad..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/dom.d.ts +++ /dev/null @@ -1,99 +0,0 @@ -export declare function start_hydrating(): void; -export declare function end_hydrating(): void; -declare type NodeEx = Node & { - claim_order?: number; - hydrate_init?: true; - actual_end_child?: NodeEx; - childNodes: NodeListOf; -}; -export declare function append(target: Node, node: Node): void; -export declare function append_styles(target: Node, style_sheet_id: string, styles: string): void; -export declare function get_root_for_style(node: Node): ShadowRoot | Document; -export declare function append_empty_stylesheet(node: Node): CSSStyleSheet; -export declare function append_hydration(target: NodeEx, node: NodeEx): void; -export declare function insert(target: Node, node: Node, anchor?: Node): void; -export declare function insert_hydration(target: NodeEx, node: NodeEx, anchor?: NodeEx): void; -export declare function detach(node: Node): void; -export declare function destroy_each(iterations: any, detaching: any): void; -export declare function element(name: K): HTMLElementTagNameMap[K]; -export declare function element_is(name: K, is: string): HTMLElementTagNameMap[K]; -export declare function object_without_properties(obj: T, exclude: K[]): Pick>; -export declare function svg_element(name: K): SVGElement; -export declare function text(data: string): Text; -export declare function space(): Text; -export declare function empty(): Text; -export declare function listen(node: EventTarget, event: string, handler: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | EventListenerOptions): () => void; -export declare function prevent_default(fn: any): (event: any) => any; -export declare function stop_propagation(fn: any): (event: any) => any; -export declare function self(fn: any): (event: any) => void; -export declare function trusted(fn: any): (event: any) => void; -export declare function attr(node: Element, attribute: string, value?: string): void; -export declare function set_attributes(node: Element & ElementCSSInlineStyle, attributes: { - [x: string]: string; -}): void; -export declare function set_svg_attributes(node: Element & ElementCSSInlineStyle, attributes: { - [x: string]: string; -}): void; -export declare function set_custom_element_data(node: any, prop: any, value: any): void; -export declare function xlink_attr(node: any, attribute: any, value: any): void; -export declare function get_binding_group_value(group: any, __value: any, checked: any): unknown[]; -export declare function to_number(value: any): number; -export declare function time_ranges_to_array(ranges: any): any[]; -declare type ChildNodeEx = ChildNode & NodeEx; -declare type ChildNodeArray = ChildNodeEx[] & { - claim_info?: { - /** - * The index of the last claimed element - */ - last_index: number; - /** - * The total number of elements claimed - */ - total_claimed: number; - }; -}; -export declare function children(element: Element): ChildNode[]; -export declare function claim_element(nodes: ChildNodeArray, name: string, attributes: { - [key: string]: boolean; -}): Element | SVGElement; -export declare function claim_svg_element(nodes: ChildNodeArray, name: string, attributes: { - [key: string]: boolean; -}): Element | SVGElement; -export declare function claim_text(nodes: ChildNodeArray, data: any): Text; -export declare function claim_space(nodes: any): Text; -export declare function claim_html_tag(nodes: any): HtmlTagHydration; -export declare function set_data(text: any, data: any): void; -export declare function set_input_value(input: any, value: any): void; -export declare function set_input_type(input: any, type: any): void; -export declare function set_style(node: any, key: any, value: any, important: any): void; -export declare function select_option(select: any, value: any): void; -export declare function select_options(select: any, value: any): void; -export declare function select_value(select: any): any; -export declare function select_multiple_value(select: any): any; -export declare function is_crossorigin(): boolean; -export declare function add_resize_listener(node: HTMLElement, fn: () => void): () => void; -export declare function toggle_class(element: any, name: any, toggle: any): void; -export declare function custom_event(type: string, detail?: T, bubbles?: boolean): CustomEvent; -export declare function query_selector_all(selector: string, parent?: HTMLElement): ChildNodeArray; -export declare class HtmlTag { - e: HTMLElement; - n: ChildNode[]; - t: HTMLElement; - a: HTMLElement; - constructor(); - c(html: string): void; - m(html: string, target: HTMLElement, anchor?: HTMLElement): void; - h(html: string): void; - i(anchor: any): void; - p(html: string): void; - d(): void; -} -export declare class HtmlTagHydration extends HtmlTag { - l: ChildNode[] | void; - constructor(claimed_nodes?: ChildNode[]); - c(html: string): void; - i(anchor: any): void; -} -export declare function attribute_to_object(attributes: NamedNodeMap): {}; -export declare function get_custom_elements_slots(element: HTMLElement): {}; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/environment.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/environment.d.ts deleted file mode 100644 index be732435d7..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/environment.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { noop } from './utils'; -export declare const is_client: boolean; -export declare let now: () => number; -export declare let raf: typeof noop | ((cb: any) => number); -export declare function set_now(fn: any): void; -export declare function set_raf(fn: any): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/globals.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/globals.d.ts deleted file mode 100644 index 53f84ffc26..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/globals.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const globals: typeof globalThis; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/index.d.ts deleted file mode 100644 index e1dd2a1fcf..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/index.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export * from './animations'; -export * from './await_block'; -export * from './dom'; -export * from './environment'; -export * from './globals'; -export * from './keyed_each'; -export * from './lifecycle'; -export * from './loop'; -export * from './scheduler'; -export * from './spread'; -export * from './ssr'; -export * from './transitions'; -export * from './utils'; -export * from './Component'; -export * from './dev'; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/keyed_each.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/keyed_each.d.ts deleted file mode 100644 index 0fe0e53911..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/keyed_each.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export declare function destroy_block(block: any, lookup: any): void; -export declare function outro_and_destroy_block(block: any, lookup: any): void; -export declare function fix_and_destroy_block(block: any, lookup: any): void; -export declare function fix_and_outro_and_destroy_block(block: any, lookup: any): void; -export declare function update_keyed_each(old_blocks: any, dirty: any, get_key: any, dynamic: any, ctx: any, list: any, lookup: any, node: any, destroy: any, create_each_block: any, next: any, get_context: any): any[]; -export declare function validate_each_keys(ctx: any, list: any, get_context: any, get_key: any): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/lifecycle.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/lifecycle.d.ts deleted file mode 100644 index 489cfa7efb..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/lifecycle.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export declare let current_component: any; -export declare function set_current_component(component: any): void; -export declare function get_current_component(): any; -export declare function beforeUpdate(fn: () => any): void; -export declare function onMount(fn: () => any): void; -export declare function afterUpdate(fn: () => any): void; -export declare function onDestroy(fn: () => any): void; -export declare function createEventDispatcher(): >(type: EventKey, detail?: EventMap[EventKey]) => void; -export declare function setContext(key: any, context: T): void; -export declare function getContext(key: any): T; -export declare function getAllContexts = Map>(): T; -export declare function hasContext(key: any): boolean; -export declare function bubble(component: any, event: any): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/loop.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/loop.d.ts deleted file mode 100644 index 80c4060bb9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/loop.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export interface Task { - abort(): void; - promise: Promise; -} -declare type TaskCallback = (now: number) => boolean | void; -/** - * For testing purposes only! - */ -export declare function clear_loops(): void; -/** - * Creates a new task that runs on each raf frame - * until it returns a falsy value or is aborted - */ -export declare function loop(callback: TaskCallback): Task; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/scheduler.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/scheduler.d.ts deleted file mode 100644 index 6f6cbf320d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/scheduler.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare const dirty_components: any[]; -export declare const intros: { - enabled: boolean; -}; -export declare const binding_callbacks: any[]; -export declare function schedule_update(): void; -export declare function tick(): Promise; -export declare function add_render_callback(fn: any): void; -export declare function add_flush_callback(fn: any): void; -export declare function flush(): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/spread.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/spread.d.ts deleted file mode 100644 index 5236c21408..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/spread.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function get_spread_update(levels: any, updates: any): {}; -export declare function get_spread_object(spread_props: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/ssr.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/ssr.d.ts deleted file mode 100644 index 53b111195a..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/ssr.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -export declare const invalid_attribute_name_character: RegExp; -export declare function spread(args: any, attrs_to_add: any): string; -export declare function merge_ssr_styles(style_attribute: any, style_directive: any): {}; -export declare const escaped: { - '"': string; - "'": string; - '&': string; - '<': string; - '>': string; -}; -export declare function escape(html: any): string; -export declare function escape_attribute_value(value: any): any; -export declare function escape_object(obj: any): {}; -export declare function each(items: any, fn: any): string; -export declare const missing_component: { - $$render: () => string; -}; -export declare function validate_component(component: any, name: any): any; -export declare function debug(file: any, line: any, column: any, values: any): string; -export declare function create_ssr_component(fn: any): { - render: (props?: {}, { $$slots, context }?: { - $$slots?: {}; - context?: Map; - }) => { - html: any; - css: { - code: string; - map: any; - }; - head: string; - }; - $$render: (result: any, props: any, bindings: any, slots: any, context: any) => any; -}; -export declare function add_attribute(name: any, value: any, boolean: any): string; -export declare function add_classes(classes: any): string; -export declare function add_styles(style_object: any): string; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/style_manager.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/style_manager.d.ts deleted file mode 100644 index 9b669eeb52..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/style_manager.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare function create_rule(node: Element & ElementCSSInlineStyle, a: number, b: number, duration: number, delay: number, ease: (t: number) => number, fn: (t: number, u: number) => string, uid?: number): string; -export declare function delete_rule(node: Element & ElementCSSInlineStyle, name?: string): void; -export declare function clear_rules(): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/transitions.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/transitions.d.ts deleted file mode 100644 index 803a94471b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/transitions.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { TransitionConfig } from '../transition'; -import { Fragment } from './Component'; -export declare function group_outros(): void; -export declare function check_outros(): void; -export declare function transition_in(block: Fragment, local?: 0 | 1): void; -export declare function transition_out(block: Fragment, local: 0 | 1, detach?: 0 | 1, callback?: any): void; -declare type TransitionFn = (node: Element, params: any) => TransitionConfig; -export declare function create_in_transition(node: Element & ElementCSSInlineStyle, fn: TransitionFn, params: any): { - start(): void; - invalidate(): void; - end(): void; -}; -export declare function create_out_transition(node: Element & ElementCSSInlineStyle, fn: TransitionFn, params: any): { - end(reset: any): void; -}; -export declare function create_bidirectional_transition(node: Element & ElementCSSInlineStyle, fn: TransitionFn, params: any, intro: boolean): { - run(b: 0 | 1): void; - end(): void; -}; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/internal/utils.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/internal/utils.d.ts deleted file mode 100644 index 416b888485..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/internal/utils.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Readable } from 'svelte/store'; -export declare function noop(): void; -export declare const identity: (x: any) => any; -export declare function assign(tar: T, src: S): T & S; -export declare function is_promise(value: any): value is PromiseLike; -export declare function add_location(element: any, file: any, line: any, column: any, char: any): void; -export declare function run(fn: any): any; -export declare function blank_object(): any; -export declare function run_all(fns: Function[]): void; -export declare function is_function(thing: any): thing is Function; -export declare function safe_not_equal(a: any, b: any): boolean; -export declare function src_url_equal(element_src: any, url: any): boolean; -export declare function not_equal(a: any, b: any): boolean; -export declare function is_empty(obj: any): boolean; -export declare function validate_store(store: any, name: any): void; -export declare function subscribe(store: any, ...callbacks: any[]): any; -export declare function get_store_value(store: Readable): T; -export declare function component_subscribe(component: any, store: any, callback: any): void; -export declare function create_slot(definition: any, ctx: any, $$scope: any, fn: any): any; -export declare function get_slot_changes(definition: any, $$scope: any, dirty: any, fn: any): any; -export declare function update_slot_base(slot: any, slot_definition: any, ctx: any, $$scope: any, slot_changes: any, get_slot_context_fn: any): void; -export declare function update_slot(slot: any, slot_definition: any, ctx: any, $$scope: any, dirty: any, get_slot_changes_fn: any, get_slot_context_fn: any): void; -export declare function get_all_dirty_from_scope($$scope: any): any[] | -1; -export declare function exclude_internal_props(props: any): {}; -export declare function compute_rest_props(props: any, keys: any): {}; -export declare function compute_slots(slots: any): {}; -export declare function once(fn: any): (this: any, ...args: any[]) => void; -export declare function null_to_empty(value: any): any; -export declare function set_store_value(store: any, ret: any, value: any): any; -export declare const has_prop: (obj: any, prop: any) => any; -export declare function action_destroyer(action_result: any): any; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/motion/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/motion/index.d.ts deleted file mode 100644 index ea6c646dd9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/motion/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './spring'; -export * from './tweened'; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/motion/spring.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/motion/spring.d.ts deleted file mode 100644 index a54e6b436f..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/motion/spring.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Readable } from 'svelte/store'; -interface SpringOpts { - stiffness?: number; - damping?: number; - precision?: number; -} -interface SpringUpdateOpts { - hard?: any; - soft?: string | number | boolean; -} -declare type Updater = (target_value: T, value: T) => T; -export interface Spring extends Readable { - set: (new_value: T, opts?: SpringUpdateOpts) => Promise; - update: (fn: Updater, opts?: SpringUpdateOpts) => Promise; - precision: number; - damping: number; - stiffness: number; -} -export declare function spring(value?: T, opts?: SpringOpts): Spring; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/motion/tweened.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/motion/tweened.d.ts deleted file mode 100644 index 9582c0b50b..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/motion/tweened.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Readable } from 'svelte/store'; -interface Options { - delay?: number; - duration?: number | ((from: T, to: T) => number); - easing?: (t: number) => number; - interpolate?: (a: T, b: T) => (t: number) => T; -} -declare type Updater = (target_value: T, value: T) => T; -export interface Tweened extends Readable { - set(value: T, opts?: Options): Promise; - update(updater: Updater, opts?: Options): Promise; -} -export declare function tweened(value?: T, defaults?: Options): Tweened; -export {}; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/motion/utils.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/motion/utils.d.ts deleted file mode 100644 index 1fc2001074..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/motion/utils.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function is_date(obj: any): obj is Date; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/ssr.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/ssr.d.ts deleted file mode 100644 index be39e664bd..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/ssr.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { onDestroy, setContext, getContext, getAllContexts, hasContext, tick, createEventDispatcher, SvelteComponent, SvelteComponentTyped } from './index'; -export declare function onMount(): void; -export declare function beforeUpdate(): void; -export declare function afterUpdate(): void; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/store/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/store/index.d.ts deleted file mode 100644 index 2629f3fe9d..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/store/index.d.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { get_store_value } from 'svelte/internal'; -/** Callback to inform of a value updates. */ -export declare type Subscriber = (value: T) => void; -/** Unsubscribes from value updates. */ -export declare type Unsubscriber = () => void; -/** Callback to update a value. */ -export declare type Updater = (value: T) => T; -/** Cleanup logic callback. */ -declare type Invalidator = (value?: T) => void; -/** Start and stop notification callbacks. */ -export declare type StartStopNotifier = (set: Subscriber) => Unsubscriber | void; -/** Readable interface for subscribing. */ -export interface Readable { - /** - * Subscribe on value changes. - * @param run subscription callback - * @param invalidate cleanup callback - */ - subscribe(this: void, run: Subscriber, invalidate?: Invalidator): Unsubscriber; -} -/** Writable interface for both updating and subscribing. */ -export interface Writable extends Readable { - /** - * Set value and inform subscribers. - * @param value to set - */ - set(this: void, value: T): void; - /** - * Update value using callback and inform subscribers. - * @param updater callback - */ - update(this: void, updater: Updater): void; -} -/** - * Creates a `Readable` store that allows reading by subscription. - * @param value initial value - * @param {StartStopNotifier}start start and stop notifications for subscriptions - */ -export declare function readable(value?: T, start?: StartStopNotifier): Readable; -/** - * Create a `Writable` store that allows both updating and reading by subscription. - * @param {*=}value initial value - * @param {StartStopNotifier=}start start and stop notifications for subscriptions - */ -export declare function writable(value?: T, start?: StartStopNotifier): Writable; -/** One or more `Readable`s. */ -declare type Stores = Readable | [Readable, ...Array>] | Array>; -/** One or more values from `Readable` stores. */ -declare type StoresValues = T extends Readable ? U : { - [K in keyof T]: T[K] extends Readable ? U : never; -}; -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @param stores - input stores - * @param fn - function callback that aggregates the values - * @param initial_value - when used asynchronously - */ -export declare function derived(stores: S, fn: (values: StoresValues, set: (value: T) => void) => Unsubscriber | void, initial_value?: T): Readable; -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @param stores - input stores - * @param fn - function callback that aggregates the values - * @param initial_value - initial value - */ -export declare function derived(stores: S, fn: (values: StoresValues) => T, initial_value?: T): Readable; -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @param stores - input stores - * @param fn - function callback that aggregates the values - */ -export declare function derived(stores: S, fn: (values: StoresValues) => T): Readable; -/** - * Get the current value from a store by subscribing and immediately unsubscribing. - * @param store readable - */ -export { get_store_value as get }; diff --git a/packages/frontend-core/node_modules/svelte/types/runtime/transition/index.d.ts b/packages/frontend-core/node_modules/svelte/types/runtime/transition/index.d.ts deleted file mode 100644 index b3c242eca9..0000000000 --- a/packages/frontend-core/node_modules/svelte/types/runtime/transition/index.d.ts +++ /dev/null @@ -1,66 +0,0 @@ -export declare type EasingFunction = (t: number) => number; -export interface TransitionConfig { - delay?: number; - duration?: number; - easing?: EasingFunction; - css?: (t: number, u: number) => string; - tick?: (t: number, u: number) => void; -} -export interface BlurParams { - delay?: number; - duration?: number; - easing?: EasingFunction; - amount?: number; - opacity?: number; -} -export declare function blur(node: Element, { delay, duration, easing, amount, opacity }?: BlurParams): TransitionConfig; -export interface FadeParams { - delay?: number; - duration?: number; - easing?: EasingFunction; -} -export declare function fade(node: Element, { delay, duration, easing }?: FadeParams): TransitionConfig; -export interface FlyParams { - delay?: number; - duration?: number; - easing?: EasingFunction; - x?: number; - y?: number; - opacity?: number; -} -export declare function fly(node: Element, { delay, duration, easing, x, y, opacity }?: FlyParams): TransitionConfig; -export interface SlideParams { - delay?: number; - duration?: number; - easing?: EasingFunction; -} -export declare function slide(node: Element, { delay, duration, easing }?: SlideParams): TransitionConfig; -export interface ScaleParams { - delay?: number; - duration?: number; - easing?: EasingFunction; - start?: number; - opacity?: number; -} -export declare function scale(node: Element, { delay, duration, easing, start, opacity }?: ScaleParams): TransitionConfig; -export interface DrawParams { - delay?: number; - speed?: number; - duration?: number | ((len: number) => number); - easing?: EasingFunction; -} -export declare function draw(node: SVGElement & { - getTotalLength(): number; -}, { delay, speed, duration, easing }?: DrawParams): TransitionConfig; -export interface CrossfadeParams { - delay?: number; - duration?: number | ((len: number) => number); - easing?: EasingFunction; -} -export declare function crossfade({ fallback, ...defaults }: CrossfadeParams & { - fallback?: (node: Element, params: CrossfadeParams, intro: boolean) => TransitionConfig; -}): [(node: Element, params: CrossfadeParams & { - key: any; -}) => () => TransitionConfig, (node: Element, params: CrossfadeParams & { - key: any; -}) => () => TransitionConfig]; From c08fadc7b02c073737b177cbe01fc695f0693cff Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 16:38:36 +0000 Subject: [PATCH 27/63] Move API client in builder to top level under src and fix some endpoints not being imported --- .../builder/src/{builderStore => }/api.js | 4 +- .../components/start/CreateAppModal.svelte | 4 +- packages/builder/vite.config.js | 2 +- packages/frontend-core/src/api/app.js | 11 ++++++ packages/frontend-core/src/api/builder.js | 39 ------------------- packages/frontend-core/src/api/index.js | 10 ++--- packages/frontend-core/src/api/other.js | 27 +++++++++++++ 7 files changed, 48 insertions(+), 49 deletions(-) rename packages/builder/src/{builderStore => }/api.js (90%) delete mode 100644 packages/frontend-core/src/api/builder.js diff --git a/packages/builder/src/builderStore/api.js b/packages/builder/src/api.js similarity index 90% rename from packages/builder/src/builderStore/api.js rename to packages/builder/src/api.js index 3dd6c28031..4a1f5e94f2 100644 --- a/packages/builder/src/builderStore/api.js +++ b/packages/builder/src/api.js @@ -3,7 +3,7 @@ import { CookieUtils, Constants, } from "@budibase/frontend-core" -import { store } from "./index" +import { store } from "./builderStore" import { get } from "svelte/store" export const API = createAPIClient({ @@ -25,7 +25,7 @@ export const API = createAPIClient({ } // Log all errors to console - console.error(`HTTP ${status} on ${method}:${url}:\n\t${message}`) + console.error(`HTTP ${status} on ${method}:${url}\n\t${message}`) // Logout on 403's if (status === 403) { diff --git a/packages/builder/src/components/start/CreateAppModal.svelte b/packages/builder/src/components/start/CreateAppModal.svelte index 97e0fd5715..c81a62d42c 100644 --- a/packages/builder/src/components/start/CreateAppModal.svelte +++ b/packages/builder/src/components/start/CreateAppModal.svelte @@ -50,7 +50,7 @@ "Another app with the same name already exists", value => { return !existingAppNames.some( - appName => appName.toLowerCase() === value.toLowerCase() + appName => appName?.toLowerCase() === value.toLowerCase() ) } ) @@ -67,7 +67,7 @@ try { await obj.validate(values, { abortEarly: false }) } catch (validationErrors) { - validationErrors.inner.forEach(error => { + validationErrors.inner?.forEach(error => { $errors[error.path] = capitalise(error.message) }) } diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index dbaf1ffb2b..b68d265bc5 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -58,7 +58,7 @@ export default ({ mode }) => { }, { find: "api", - replacement: path.resolve("./src/builderStore/api.js"), + replacement: path.resolve("./src/api.js"), }, { find: "constants", diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index 1b0735be05..32fe8908ad 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -139,4 +139,15 @@ export const buildAppEndpoints = API => ({ url: "/api/applications?status=all", }) }, + + /** + * Fetches the definitions for component library components. This includes + * their props and other metadata from components.json. + * @param {string} appId - ID of the currently running app + */ + fetchComponentLibDefinitions: async appId => { + return await API.get({ + url: `/api/${appId}/components/definitions`, + }) + }, }) diff --git a/packages/frontend-core/src/api/builder.js b/packages/frontend-core/src/api/builder.js deleted file mode 100644 index 1b873fe09e..0000000000 --- a/packages/frontend-core/src/api/builder.js +++ /dev/null @@ -1,39 +0,0 @@ -export const buildBuilderEndpoints = API => ({ - /** - * Fetches the definitions for component library components. This includes - * their props and other metadata from components.json. - * @param {string} appId - ID of the currently running app - */ - fetchComponentLibDefinitions: async appId => { - return await API.get({ - url: `/api/${appId}/components/definitions`, - }) - }, - - /** - * Gets the list of available integrations. - */ - getIntegrations: async () => { - return await API.get({ - url: "/api/integrations", - }) - }, - - /** - * Gets the version of the installed Budibase environment. - */ - getBudibaseVersion: async () => { - return await API.get({ - url: "/api/dev/version", - }) - }, - - /** - * Gets the base permissions for roles. - */ - getBasePermissions: async () => { - return await API.get({ - url: "/api/permission/builtin", - }) - }, -}) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 973a1fbc2f..99ce9a1f69 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -66,13 +66,13 @@ export const createAPIClient = config => { } // Generates an error object from a string - const makeError = message => { + const makeError = (message, request) => { return { message, json: null, status: 400, - url: "", - method: "", + url: request?.url, + method: request?.method, handled: true, } } @@ -106,7 +106,7 @@ export const createAPIClient = config => { try { requestBody = JSON.stringify(body) } catch (error) { - throw makeError("Invalid JSON body") + throw makeError("Invalid JSON body", { url, method }) } } @@ -120,7 +120,7 @@ export const createAPIClient = config => { credentials: "same-origin", }) } catch (error) { - throw makeError("Failed to send request") + throw makeError("Failed to send request", { url, method }) } // Handle response diff --git a/packages/frontend-core/src/api/other.js b/packages/frontend-core/src/api/other.js index b3481f1e27..b2a5ccf441 100644 --- a/packages/frontend-core/src/api/other.js +++ b/packages/frontend-core/src/api/other.js @@ -16,4 +16,31 @@ export const buildOtherEndpoints = API => ({ url: "/api/system/environment", }) }, + + /** + * Gets the list of available integrations. + */ + getIntegrations: async () => { + return await API.get({ + url: "/api/integrations", + }) + }, + + /** + * Gets the version of the installed Budibase environment. + */ + getBudibaseVersion: async () => { + return await API.get({ + url: "/api/dev/version", + }) + }, + + /** + * Gets the base permissions for roles. + */ + getBasePermissions: async () => { + return await API.get({ + url: "/api/permission/builtin", + }) + }, }) From b33a2aa662a3d5afb70cdff3f5262fbdea869b4b Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 16:40:55 +0000 Subject: [PATCH 28/63] Improve API error logging to differentiate between builder and client sources --- packages/builder/src/api.js | 2 +- packages/client/src/api.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/api.js b/packages/builder/src/api.js index 4a1f5e94f2..982fdc9324 100644 --- a/packages/builder/src/api.js +++ b/packages/builder/src/api.js @@ -25,7 +25,7 @@ export const API = createAPIClient({ } // Log all errors to console - console.error(`HTTP ${status} on ${method}:${url}\n\t${message}`) + console.warn(`[Builder] HTTP ${status} on ${method}:${url}\n\t${message}`) // Logout on 403's if (status === 403) { diff --git a/packages/client/src/api.js b/packages/client/src/api.js index 3ded21f473..4c0b19c210 100644 --- a/packages/client/src/api.js +++ b/packages/client/src/api.js @@ -32,7 +32,7 @@ export const API = createAPIClient({ } // Log all errors to console - console.error(`HTTP ${status} on ${method}:${url}:\n\t${message}`) + console.warn(`[Client] HTTP ${status} on ${method}:${url}\n\t${message}`) }, // Patch certain endpoints with functionality specific to client apps From ba669dbcf4e921a3e2ed182d87cdb0ef6fff5ac2 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 16:50:33 +0000 Subject: [PATCH 29/63] Include missing layout endpoints --- packages/frontend-core/src/api/index.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 99ce9a1f69..8028f180e1 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -8,6 +8,7 @@ import { buildConfigEndpoints } from "./configs" import { buildDatasourceEndpoints } from "./datasources" import { buildFlagEndpoints } from "./flags" import { buildHostingEndpoints } from "./hosting" +import { buildLayoutEndpoints } from "./layouts" import { buildOtherEndpoints } from "./other" import { buildPermissionsEndpoints } from "./permissions" import { buildQueryEndpoints } from "./queries" @@ -196,6 +197,7 @@ export const createAPIClient = config => { ...buildDatasourceEndpoints(API), ...buildFlagEndpoints(API), ...buildHostingEndpoints(API), + ...buildLayoutEndpoints(API), ...buildOtherEndpoints(API), ...buildPermissionsEndpoints(API), ...buildQueryEndpoints(API), From 891bdefcb74429454f76486dc031560afa320cf2 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 18:40:06 +0000 Subject: [PATCH 30/63] Remove all obscure error handling from stores and move it to the display level --- .../src/builderStore/store/frontend.js | 227 ++++++++---------- .../design/AppPreview/AppThemeSelect.svelte | 22 +- .../AppPreview/ComponentSelectionList.svelte | 14 +- .../AppPreview/CurrentItemPreview.svelte | 67 +++--- .../design/AppPreview/ThemeEditor.svelte | 35 ++- .../ComponentDropdownMenu.svelte | 34 ++- .../ComponentTree.svelte | 15 +- .../LayoutDropdownMenu.svelte | 8 +- .../ScreenDropdownMenu.svelte | 1 - .../ComponentNavigationTree/dragDropStore.js | 4 +- .../FrontendNavigatePane.svelte | 18 +- .../NavigationPanel/NewLayoutModal.svelte | 4 +- .../NavigationPanel/ScreenWizard.svelte | 34 ++- .../ComponentSettingsSection.svelte | 10 +- .../ConditionalUISection.svelte | 16 +- .../CustomStylesSection.svelte | 9 +- .../PropertyControls/ResetFieldsButton.svelte | 16 +- .../ScreenSettingsSection.svelte | 9 +- .../PropertiesPanel/StyleSection.svelte | 12 +- 19 files changed, 312 insertions(+), 243 deletions(-) diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index 5524cb5991..8345a55b40 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -86,8 +86,8 @@ export const getFrontendStore = () => { description: application.description, appId: application.appId, url: application.url, - layouts, - screens, + layouts: layouts || [], + screens: screens || [], theme: application.theme || "spectrum--light", customTheme: application.customTheme, hasAppPackage: true, @@ -109,49 +109,36 @@ export const getFrontendStore = () => { theme: { save: async theme => { const appId = get(store).appId - try { - await API.saveAppMetadata({ - appId, - metadata: { theme }, - }) - store.update(state => { - state.theme = theme - return state - }) - } catch (error) { - notifications.error("Error updating theme") - } + await API.saveAppMetadata({ + appId, + metadata: { theme }, + }) + store.update(state => { + state.theme = theme + return state + }) }, }, customTheme: { save: async customTheme => { const appId = get(store).appId - try { - await API.saveAppMetadata({ - appId, - metadata: { customTheme }, - }) - store.update(state => { - state.customTheme = customTheme - return state - }) - } catch (error) { - notifications.error("Error updating custom theme") - } + await API.saveAppMetadata({ + appId, + metadata: { customTheme }, + }) + store.update(state => { + state.customTheme = customTheme + return state + }) }, }, routing: { fetch: async () => { - try { - const routes = await API.getAppRoutes() - console.log(routes) - store.update(state => { - state.routes = routes.routes - return state - }) - } catch (error) { - notifications.error("Error fetching app routes") - } + const response = await API.fetchAppRoutes() + store.update(state => { + state.routes = response.routes + return state + }) }, }, screens: { @@ -174,50 +161,41 @@ export const getFrontendStore = () => { }) }, create: async screen => { - try { - const savedScreen = await API.saveScreen(screen) - store.update(state => { - state.selectedScreenId = savedScreen._id - state.selectedComponentId = savedScreen.props._id - state.currentFrontEndType = FrontendTypes.SCREEN - selectedAccessRole.set(savedScreen.routing.roleId) - return savedScreen - }) + const savedScreen = await API.saveScreen(screen) + store.update(state => { + state.screens.push(savedScreen) + state.selectedScreenId = savedScreen._id + state.selectedComponentId = savedScreen.props._id + state.currentFrontEndType = FrontendTypes.SCREEN + selectedAccessRole.set(savedScreen.routing.roleId) + return state + }) - // Refresh routes - await store.actions.routing.fetch() - return savedScreen - } catch (error) { - notifications.error("Error creating screen") - return null - } + // Refresh routes + await store.actions.routing.fetch() + return savedScreen }, save: async screen => { - try { - const creatingNewScreen = screen._id === undefined - const savedScreen = await API.saveScreen(screen) - store.update(state => { - const idx = state.screens.findIndex(x => x._id === savedScreen._id) - if (idx !== -1) { - state.screens.splice(idx, 1, savedScreen) - } else { - state.screens.push(savedScreen) - } - return state - }) - - // Refresh routes - await store.actions.routing.fetch() - - // Select the new screen if creating a new one - if (creatingNewScreen) { - store.actions.screens.select(savedScreen._id) + const creatingNewScreen = screen._id === undefined + const savedScreen = await API.saveScreen(screen) + store.update(state => { + const idx = state.screens.findIndex(x => x._id === savedScreen._id) + if (idx !== -1) { + state.screens.splice(idx, 1, savedScreen) + } else { + state.screens.push(savedScreen) } - return savedScreen - } catch (error) { - notifications.error("Error saving screen") - return null + return state + }) + + // Refresh routes + await store.actions.routing.fetch() + + // Select the new screen if creating a new one + if (creatingNewScreen) { + store.actions.screens.select(savedScreen._id) } + return savedScreen }, delete: async screens => { const screensToDelete = Array.isArray(screens) ? screens : [screens] @@ -241,23 +219,22 @@ export const getFrontendStore = () => { ) }) - try { - await Promise.all(promises) - const deletedIds = screensToDelete.map(screen => screen._id) - store.update(state => { - // Remove deleted screens from state - state.screens = state.screens.filter(screen => { - return !deletedIds.includes(screen._id) - }) - // Deselect the current screen if it was deleted - if (deletedIds.includes(state.selectedScreenId)) { - state.selectedScreenId = null - } - return state + await Promise.all(promises) + const deletedIds = screensToDelete.map(screen => screen._id) + store.update(state => { + // Remove deleted screens from state + state.screens = state.screens.filter(screen => { + return !deletedIds.includes(screen._id) }) - } catch (error) { - notifications.error("Error deleting screens") - } + // Deselect the current screen if it was deleted + if (deletedIds.includes(state.selectedScreenId)) { + state.selectedScreenId = null + } + return state + }) + + // Refresh routes + await store.actions.routing.fetch() }, }, preview: { @@ -291,28 +268,23 @@ export const getFrontendStore = () => { }) }, save: async layout => { - try { - const creatingNewLayout = layout._id === undefined - const savedLayout = await API.saveLayout(layout) - store.update(state => { - const idx = state.layouts.findIndex(x => x._id === savedLayout._id) - if (idx !== -1) { - state.layouts.splice(idx, 1, savedLayout) - } else { - state.layouts.push(savedLayout) - } - return state - }) - - // Select layout if creating a new one - if (creatingNewLayout) { - store.actions.layouts.select(savedLayout._id) + const creatingNewLayout = layout._id === undefined + const savedLayout = await API.saveLayout(layout) + store.update(state => { + const idx = state.layouts.findIndex(x => x._id === savedLayout._id) + if (idx !== -1) { + state.layouts.splice(idx, 1, savedLayout) + } else { + state.layouts.push(savedLayout) } - return savedLayout - } catch (error) { - notifications.error("Error saving layout") - return null + return state + }) + + // Select layout if creating a new one + if (creatingNewLayout) { + store.actions.layouts.select(savedLayout._id) } + return savedLayout }, find: layoutId => { if (!layoutId) { @@ -325,22 +297,18 @@ export const getFrontendStore = () => { if (!layout?._id) { return } - try { - await API.deleteLayout({ - layoutId: layout._id, - layoutRev: layout._rev, - }) - store.update(state => { - // Select main layout if we deleted the selected layout - if (layout._id === state.selectedLayoutId) { - state.selectedLayoutId = get(mainLayout)._id - } - state.layouts = state.layouts.filter(x => x._id !== layout._id) - return state - }) - } catch (error) { - notifications.error("Failed to delete layout") - } + await API.deleteLayout({ + layoutId: layout._id, + layoutRev: layout._rev, + }) + store.update(state => { + // Select main layout if we deleted the selected layout + if (layout._id === state.selectedLayoutId) { + state.selectedLayoutId = get(mainLayout)._id + } + state.layouts = state.layouts.filter(x => x._id !== layout._id) + return state + }) }, }, components: { @@ -622,11 +590,6 @@ export const getFrontendStore = () => { selected._styles.custom = style await store.actions.preview.saveSelected() }, - resetStyles: async () => { - const selected = get(selectedComponent) - selected._styles = { normal: {}, hover: {}, active: {} } - await store.actions.preview.saveSelected() - }, updateConditions: async conditions => { const selected = get(selectedComponent) selected._conditions = conditions diff --git a/packages/builder/src/components/design/AppPreview/AppThemeSelect.svelte b/packages/builder/src/components/design/AppPreview/AppThemeSelect.svelte index a1a5a7a242..cdab47db66 100644 --- a/packages/builder/src/components/design/AppPreview/AppThemeSelect.svelte +++ b/packages/builder/src/components/design/AppPreview/AppThemeSelect.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/components/design/AppPreview/ComponentSelectionList.svelte b/packages/builder/src/components/design/AppPreview/ComponentSelectionList.svelte index a968effaf5..cabcea756e 100644 --- a/packages/builder/src/components/design/AppPreview/ComponentSelectionList.svelte +++ b/packages/builder/src/components/design/AppPreview/ComponentSelectionList.svelte @@ -1,5 +1,11 @@ diff --git a/packages/builder/src/components/design/AppPreview/CurrentItemPreview.svelte b/packages/builder/src/components/design/AppPreview/CurrentItemPreview.svelte index 77700fc264..2a886fab0c 100644 --- a/packages/builder/src/components/design/AppPreview/CurrentItemPreview.svelte +++ b/packages/builder/src/components/design/AppPreview/CurrentItemPreview.svelte @@ -146,44 +146,49 @@ } }) - const handleBudibaseEvent = event => { + const handleBudibaseEvent = async event => { const { type, data } = event.data || event.detail if (!type) { return } - if (type === "select-component" && data.id) { - store.actions.components.select({ _id: data.id }) - } else if (type === "update-prop") { - store.actions.components.updateProp(data.prop, data.value) - } else if (type === "delete-component" && data.id) { - confirmDeleteComponent(data.id) - } else if (type === "preview-loaded") { - // Wait for this event to show the client library if intelligent - // loading is supported - loading = false - } else if (type === "move-component") { - const { componentId, destinationComponentId } = data - const rootComponent = get(currentAsset).props + try { + if (type === "select-component" && data.id) { + store.actions.components.select({ _id: data.id }) + } else if (type === "update-prop") { + await store.actions.components.updateProp(data.prop, data.value) + } else if (type === "delete-component" && data.id) { + confirmDeleteComponent(data.id) + } else if (type === "preview-loaded") { + // Wait for this event to show the client library if intelligent + // loading is supported + loading = false + } else if (type === "move-component") { + const { componentId, destinationComponentId } = data + const rootComponent = get(currentAsset).props - // Get source and destination components - const source = findComponent(rootComponent, componentId) - const destination = findComponent(rootComponent, destinationComponentId) + // Get source and destination components + const source = findComponent(rootComponent, componentId) + const destination = findComponent(rootComponent, destinationComponentId) - // Stop if the target is a child of source - const path = findComponentPath(source, destinationComponentId) - const ids = path.map(component => component._id) - if (ids.includes(data.destinationComponentId)) { - return + // Stop if the target is a child of source + const path = findComponentPath(source, destinationComponentId) + const ids = path.map(component => component._id) + if (ids.includes(data.destinationComponentId)) { + return + } + + // Cut and paste the component to the new destination + if (source && destination) { + store.actions.components.copy(source, true) + await store.actions.components.paste(destination, data.mode) + } + } else { + console.warn(`Client sent unknown event type: ${type}`) } - - // Cut and paste the component to the new destination - if (source && destination) { - store.actions.components.copy(source, true) - store.actions.components.paste(destination, data.mode) - } - } else { - console.warn(`Client sent unknown event type: ${type}`) + } catch (error) { + console.warn(error) + notifications.error("Error handling event from app preview") } } @@ -196,7 +201,7 @@ try { await store.actions.components.delete({ _id: idToDelete }) } catch (error) { - notifications.error(error) + notifications.error("Error deleting component") } idToDelete = null } diff --git a/packages/builder/src/components/design/AppPreview/ThemeEditor.svelte b/packages/builder/src/components/design/AppPreview/ThemeEditor.svelte index 14747191c2..e10ac4f0cd 100644 --- a/packages/builder/src/components/design/AppPreview/ThemeEditor.svelte +++ b/packages/builder/src/components/design/AppPreview/ThemeEditor.svelte @@ -9,6 +9,7 @@ Label, Select, Button, + notifications, } from "@budibase/bbui" import { store } from "builderStore" import AppThemeSelect from "./AppThemeSelect.svelte" @@ -43,23 +44,31 @@ ] const updateProperty = property => { - return e => { - store.actions.customTheme.save({ - ...get(store).customTheme, - [property]: e.detail, - }) + return async e => { + try { + store.actions.customTheme.save({ + ...get(store).customTheme, + [property]: e.detail, + }) + } catch (error) { + notifications.error("Error updating custom theme") + } } } const resetTheme = () => { - const theme = get(store).theme - store.actions.customTheme.save({ - ...defaultTheme, - navBackground: - theme === "spectrum--light" - ? "var(--spectrum-global-color-gray-50)" - : "var(--spectrum-global-color-gray-100)", - }) + try { + const theme = get(store).theme + store.actions.customTheme.save({ + ...defaultTheme, + navBackground: + theme === "spectrum--light" + ? "var(--spectrum-global-color-gray-50)" + : "var(--spectrum-global-color-gray-100)", + }) + } catch (error) { + notifications.error("Error saving custom theme") + } } diff --git a/packages/builder/src/components/design/NavigationPanel/ComponentDropdownMenu.svelte b/packages/builder/src/components/design/NavigationPanel/ComponentDropdownMenu.svelte index 8ab8c23134..0fcd43b58e 100644 --- a/packages/builder/src/components/design/NavigationPanel/ComponentDropdownMenu.svelte +++ b/packages/builder/src/components/design/NavigationPanel/ComponentDropdownMenu.svelte @@ -29,10 +29,14 @@ if (currentIndex === 0) { return } - const newChildren = parent._children.filter(c => c !== component) - newChildren.splice(currentIndex - 1, 0, component) - parent._children = newChildren - store.actions.preview.saveSelected() + try { + const newChildren = parent._children.filter(c => c !== component) + newChildren.splice(currentIndex - 1, 0, component) + parent._children = newChildren + store.actions.preview.saveSelected() + } catch (error) { + notifications.error("Error saving screen") + } } const moveDownComponent = () => { @@ -45,10 +49,14 @@ if (currentIndex === parent._children.length - 1) { return } - const newChildren = parent._children.filter(c => c !== component) - newChildren.splice(currentIndex + 1, 0, component) - parent._children = newChildren - store.actions.preview.saveSelected() + try { + const newChildren = parent._children.filter(c => c !== component) + newChildren.splice(currentIndex + 1, 0, component) + parent._children = newChildren + store.actions.preview.saveSelected() + } catch (error) { + notifications.error("Error saving screen") + } } const duplicateComponent = () => { @@ -60,7 +68,7 @@ try { await store.actions.components.delete(component) } catch (error) { - notifications.error(error) + notifications.error("Error deleting component") } } @@ -70,8 +78,12 @@ } const pasteComponent = (mode, preserveBindings = false) => { - // lives in store - also used by drag drop - store.actions.components.paste(component, mode, preserveBindings) + try { + // lives in store - also used by drag drop + store.actions.components.paste(component, mode, preserveBindings) + } catch (error) { + notifications.error("Error saving component") + } } diff --git a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ComponentTree.svelte b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ComponentTree.svelte index 910ffc18f8..c5dfd63cf9 100644 --- a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ComponentTree.svelte +++ b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ComponentTree.svelte @@ -4,6 +4,7 @@ import ComponentDropdownMenu from "../ComponentDropdownMenu.svelte" import NavItem from "components/common/NavItem.svelte" import { capitalise } from "helpers" + import { notifications } from "@budibase/bbui" export let components = [] export let currentComponent @@ -62,6 +63,14 @@ } closedNodes = closedNodes } + + const onDrop = async () => { + try { + await dragDropStore.actions.drop() + } catch (error) { + notifications.error("Error saving component") + } + }
    @@ -69,7 +78,7 @@
  • selectComponent(component)}> {#if $dragDropStore?.targetComponent === component && $dragDropStore.dropPosition === DropPosition.ABOVE}
    toggleNodeOpen(component._id)} - on:drop={dragDropStore.actions.drop} + on:drop={onDrop} text={getComponentText(component)} withArrow indentLevel={level + 1} @@ -105,7 +114,7 @@ {#if $dragDropStore?.targetComponent === component && ($dragDropStore.dropPosition === DropPosition.INSIDE || $dragDropStore.dropPosition === DropPosition.BELOW)}
    { try { await store.actions.layouts.delete(layout) - notifications.success(`Layout ${layout.name} deleted successfully.`) + notifications.success("Layout deleted successfully") } catch (err) { - notifications.error(`Error deleting layout: ${err.message}`) + notifications.error("Error deleting layout") } } @@ -32,9 +32,9 @@ const layoutToSave = cloneDeep(layout) layoutToSave.name = name await store.actions.layouts.save(layoutToSave) - notifications.success(`Layout saved successfully.`) + notifications.success("Layout saved successfully") } catch (err) { - notifications.error(`Error saving layout: ${err.message}`) + notifications.error("Error saving layout") } } diff --git a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ScreenDropdownMenu.svelte b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ScreenDropdownMenu.svelte index b2161e35d7..38ed79649e 100644 --- a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ScreenDropdownMenu.svelte +++ b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/ScreenDropdownMenu.svelte @@ -13,7 +13,6 @@ const deleteScreen = async () => { try { await store.actions.screens.delete(screen) - await store.actions.routing.fetch() $goto("../") notifications.success("Deleted screen successfully.") } catch (err) { diff --git a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/dragDropStore.js b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/dragDropStore.js index aa5cd230e7..d965a2456d 100644 --- a/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/dragDropStore.js +++ b/packages/builder/src/components/design/NavigationPanel/ComponentNavigationTree/dragDropStore.js @@ -72,7 +72,7 @@ export default function () { return state }) }, - drop: () => { + drop: async () => { const state = get(store) // Stop if the target and source are the same @@ -92,7 +92,7 @@ export default function () { // Cut and paste the component frontendStore.actions.components.copy(state.dragged, true) - frontendStore.actions.components.paste( + await frontendStore.actions.components.paste( state.targetComponent, state.dropPosition ) diff --git a/packages/builder/src/components/design/NavigationPanel/FrontendNavigatePane.svelte b/packages/builder/src/components/design/NavigationPanel/FrontendNavigatePane.svelte index ea9ebbf2c5..a5045d8e9f 100644 --- a/packages/builder/src/components/design/NavigationPanel/FrontendNavigatePane.svelte +++ b/packages/builder/src/components/design/NavigationPanel/FrontendNavigatePane.svelte @@ -11,7 +11,15 @@ import ComponentNavigationTree from "components/design/NavigationPanel/ComponentNavigationTree/index.svelte" import Layout from "components/design/NavigationPanel/Layout.svelte" import NewLayoutModal from "components/design/NavigationPanel/NewLayoutModal.svelte" - import { Icon, Modal, Select, Search, Tabs, Tab } from "@budibase/bbui" + import { + Icon, + Modal, + Select, + Search, + Tabs, + Tab, + notifications, + } from "@budibase/bbui" export let showModal @@ -58,8 +66,12 @@ selectedAccessRole.set(role) } - onMount(() => { - store.actions.routing.fetch() + onMount(async () => { + try { + await store.actions.routing.fetch() + } catch (error) { + notifications.error("Error fetching routes") + } }) diff --git a/packages/builder/src/components/design/NavigationPanel/NewLayoutModal.svelte b/packages/builder/src/components/design/NavigationPanel/NewLayoutModal.svelte index 0ed9014eac..d7288fbe23 100644 --- a/packages/builder/src/components/design/NavigationPanel/NewLayoutModal.svelte +++ b/packages/builder/src/components/design/NavigationPanel/NewLayoutModal.svelte @@ -9,8 +9,8 @@ try { await store.actions.layouts.save({ name }) notifications.success(`Layout ${name} created successfully`) - } catch (err) { - notifications.error(`Error creating layout ${name}.`) + } catch (error) { + notifications.error("Error creating layout") } } diff --git a/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte b/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte index 99dbcb6026..47aa3c7b26 100644 --- a/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte +++ b/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte @@ -2,7 +2,7 @@ import ScreenDetailsModal from "components/design/NavigationPanel/ScreenDetailsModal.svelte" import NewScreenModal from "components/design/NavigationPanel/NewScreenModal.svelte" import sanitizeUrl from "builderStore/store/screenTemplates/utils/sanitizeUrl" - import { Modal } from "@budibase/bbui" + import { Modal, notifications } from "@budibase/bbui" import { store, selectedAccessRole, allScreens } from "builderStore" import analytics, { Events } from "analytics" @@ -29,15 +29,19 @@ const save = async () => { showProgressCircle = true - await createScreens() - for (let screen of createdScreens) { - await saveScreens(screen) + try { + await createScreens() + for (let screen of createdScreens) { + await saveScreens(screen) + } + await store.actions.routing.fetch() + selectedScreens = [] + createdScreens = [] + screenName = "" + url = "" + } catch (error) { + notifications.error("Error creating screens") } - await store.actions.routing.fetch() - selectedScreens = [] - createdScreens = [] - screenName = "" - url = "" showProgressCircle = false } @@ -73,10 +77,14 @@ await store.actions.screens.create(draftScreen) if (draftScreen.props._instanceName.endsWith("List")) { - await store.actions.components.links.save( - draftScreen.routing.route, - draftScreen.routing.route.split("/")[1] - ) + try { + await store.actions.components.links.save( + draftScreen.routing.route, + draftScreen.routing.route.split("/")[1] + ) + } catch (error) { + notifications.error("Error creating link to screen") + } } } } diff --git a/packages/builder/src/components/design/PropertiesPanel/ComponentSettingsSection.svelte b/packages/builder/src/components/design/PropertiesPanel/ComponentSettingsSection.svelte index 47df3dbf74..f9fa56f739 100644 --- a/packages/builder/src/components/design/PropertiesPanel/ComponentSettingsSection.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/ComponentSettingsSection.svelte @@ -1,6 +1,6 @@ diff --git a/packages/builder/src/components/design/PropertiesPanel/CustomStylesSection.svelte b/packages/builder/src/components/design/PropertiesPanel/CustomStylesSection.svelte index 4ff10c64c7..187d9ff760 100644 --- a/packages/builder/src/components/design/PropertiesPanel/CustomStylesSection.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/CustomStylesSection.svelte @@ -8,6 +8,7 @@ Layout, Body, Button, + notifications, } from "@budibase/bbui" import { store } from "builderStore" @@ -21,8 +22,12 @@ drawer.show() } - const save = () => { - store.actions.components.updateCustomStyle(tempValue) + const save = async () => { + try { + await store.actions.components.updateCustomStyle(tempValue) + } catch (error) { + notifications.error("Error updating custom style") + } drawer.hide() } diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ResetFieldsButton.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ResetFieldsButton.svelte index fa2a0d6088..a76a93d7f6 100644 --- a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ResetFieldsButton.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ResetFieldsButton.svelte @@ -1,5 +1,5 @@ diff --git a/packages/builder/src/components/design/PropertiesPanel/ScreenSettingsSection.svelte b/packages/builder/src/components/design/PropertiesPanel/ScreenSettingsSection.svelte index 4a7c77746e..ded80a7d5c 100644 --- a/packages/builder/src/components/design/PropertiesPanel/ScreenSettingsSection.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/ScreenSettingsSection.svelte @@ -1,7 +1,7 @@ @@ -34,7 +42,7 @@ control={prop.control} key={prop.key} value={style[prop.key]} - onChange={val => store.actions.components.updateStyle(prop.key, val)} + onChange={val => updateStyle(prop.key, val)} props={getControlProps(prop)} {bindings} /> From 81558588dcc3b627f80af5e0cdeb94e3c448f34d Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 18:53:41 +0000 Subject: [PATCH 31/63] Clean up frontend store --- .../src/builderStore/store/frontend.js | 43 +++++-------------- .../NavigationPanel/ScreenWizard.svelte | 2 +- 2 files changed, 12 insertions(+), 33 deletions(-) diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index 8345a55b40..905cdd3976 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -28,7 +28,6 @@ import { } from "../componentUtils" import { Helpers } from "@budibase/bbui" import { removeBindings } from "../dataBinding" -import { notifications } from "@budibase/bbui" const INITIAL_FRONTEND_STATE = { apps: [], @@ -160,21 +159,6 @@ export const getFrontendStore = () => { return state }) }, - create: async screen => { - const savedScreen = await API.saveScreen(screen) - store.update(state => { - state.screens.push(savedScreen) - state.selectedScreenId = savedScreen._id - state.selectedComponentId = savedScreen.props._id - state.currentFrontEndType = FrontendTypes.SCREEN - selectedAccessRole.set(savedScreen.routing.roleId) - return state - }) - - // Refresh routes - await store.actions.routing.fetch() - return savedScreen - }, save: async screen => { const creatingNewScreen = screen._id === undefined const savedScreen = await API.saveScreen(screen) @@ -431,24 +415,19 @@ export const getFrontendStore = () => { parentComponent._children.push(componentInstance) // Save components and update UI - const savedAsset = await store.actions.preview.saveSelected() - if (savedAsset) { - store.update(state => { - state.currentView = "component" - state.selectedComponentId = componentInstance._id - return state - }) + await store.actions.preview.saveSelected() + store.update(state => { + state.currentView = "component" + state.selectedComponentId = componentInstance._id + return state + }) - // Log event - analytics.captureEvent(Events.COMPONENT.CREATED, { - name: componentInstance._component, - }) + // Log event + analytics.captureEvent(Events.COMPONENT.CREATED, { + name: componentInstance._component, + }) - return componentInstance - } else { - notifications.error("Failed to create component") - return null - } + return componentInstance }, delete: async component => { if (!component) { diff --git a/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte b/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte index 47aa3c7b26..a9fea4a45b 100644 --- a/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte +++ b/packages/builder/src/components/design/NavigationPanel/ScreenWizard.svelte @@ -75,7 +75,7 @@ draftScreen.routing.route = route - await store.actions.screens.create(draftScreen) + await store.actions.screens.save(draftScreen) if (draftScreen.props._instanceName.endsWith("List")) { try { await store.actions.components.links.save( From e1a1d472381a5e22f7ed2acb8a9b5054a946d1d5 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 18:58:22 +0000 Subject: [PATCH 32/63] Don't show an error if analytics fails to activate --- packages/builder/src/analytics/index.js | 12 +++------ packages/builder/src/stores/portal/auth.js | 29 ++++++++++++++-------- 2 files changed, 22 insertions(+), 19 deletions(-) diff --git a/packages/builder/src/analytics/index.js b/packages/builder/src/analytics/index.js index 26947a2320..a9c3d2e2d7 100644 --- a/packages/builder/src/analytics/index.js +++ b/packages/builder/src/analytics/index.js @@ -18,14 +18,10 @@ class AnalyticsHub { } async activate() { - try { - // Check analytics are enabled - const analyticsStatus = await API.getAnalyticsStatus() - if (analyticsStatus.enabled) { - this.clients.forEach(client => client.init()) - } - } catch (error) { - notifications.error("Error checking analytics status") + // Check analytics are enabled + const analyticsStatus = await API.getAnalyticsStatus() + if (analyticsStatus.enabled) { + this.clients.forEach(client => client.init()) } } diff --git a/packages/builder/src/stores/portal/auth.js b/packages/builder/src/stores/portal/auth.js index 3895b57e82..b0f626099c 100644 --- a/packages/builder/src/stores/portal/auth.js +++ b/packages/builder/src/stores/portal/auth.js @@ -54,18 +54,25 @@ export function createAuthStore() { }) if (user) { - analytics.activate().then(() => { - analytics.identify(user._id, user) - analytics.showChat({ - email: user.email, - created_at: (user.createdAt || Date.now()) / 1000, - name: user.account?.name, - user_id: user._id, - tenant: user.tenantId, - "Company size": user.account?.size, - "Job role": user.account?.profession, + analytics + .activate() + .then(() => { + analytics.identify(user._id, user) + analytics.showChat({ + email: user.email, + created_at: (user.createdAt || Date.now()) / 1000, + name: user.account?.name, + user_id: user._id, + tenant: user.tenantId, + "Company size": user.account?.size, + "Job role": user.account?.profession, + }) + }) + .catch(() => { + // This request may fail due to browser extensions blocking requests + // containing the word analytics, so we don't want to spam users with + // an error here. }) - }) } } From bed1f0e0923675febcbe6dd451fc429938354cb4 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:06:18 +0000 Subject: [PATCH 33/63] Fix issue with create app endpoint sending json content type header --- packages/frontend-core/src/api/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/frontend-core/src/api/app.js b/packages/frontend-core/src/api/app.js index 32fe8908ad..f6f141ab80 100644 --- a/packages/frontend-core/src/api/app.js +++ b/packages/frontend-core/src/api/app.js @@ -76,6 +76,7 @@ export const buildAppEndpoints = API => ({ return await API.post({ url: "/api/applications", body: app, + json: false, }) }, From 4d9e7cac31d52af7fa417c0a62aaf307c96bde96 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:06:41 +0000 Subject: [PATCH 34/63] Fix crash when an app with a null name exists --- packages/builder/src/components/start/UpdateAppModal.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/components/start/UpdateAppModal.svelte b/packages/builder/src/components/start/UpdateAppModal.svelte index 508a0723b1..2caf9af7ef 100644 --- a/packages/builder/src/components/start/UpdateAppModal.svelte +++ b/packages/builder/src/components/start/UpdateAppModal.svelte @@ -55,7 +55,7 @@ "Another app with the same name already exists", value => { return !existingAppNames.some( - appName => dirty && appName.toLowerCase() === value.toLowerCase() + appName => dirty && appName?.toLowerCase() === value.toLowerCase() ) } ) @@ -67,7 +67,7 @@ try { await obj.validate(values, { abortEarly: false }) } catch (validationErrors) { - validationErrors.inner.forEach(error => { + validationErrors.inner?.forEach(error => { $errors[error.path] = capitalise(error.message) }) } From 591dafc336bff6e0a43b5d7b8211c4b82d425c52 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:14:57 +0000 Subject: [PATCH 35/63] Don't show a notification when failing an API request due to analytics failures --- packages/client/src/api.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/client/src/api.js b/packages/client/src/api.js index 4c0b19c210..5b37dd06a8 100644 --- a/packages/client/src/api.js +++ b/packages/client/src/api.js @@ -28,7 +28,11 @@ export const API = createAPIClient({ // Notify all errors if (message) { - notificationStore.actions.error(message) + // Don't notify if the URL contains the word analytics as it may be + // blocked by browser extensions + if (!url?.includes("analytics")) { + notificationStore.actions.error(message) + } } // Log all errors to console From b75401edfbd75f603ad83f5c436357c9b54c85e5 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:15:06 +0000 Subject: [PATCH 36/63] Remove log --- packages/frontend-core/src/api/index.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 8028f180e1..10a32f9d56 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -41,8 +41,6 @@ export const createAPIClient = config => { // Generates an error object from an API response const makeErrorFromResponse = async (response, method) => { - console.log("making error from", response) - // Try to read a message from the error let message = response.statusText let json = null From 95488fd48d63d6c2a4fc22db9abada4c830ae4f6 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:15:28 +0000 Subject: [PATCH 37/63] Don't show an error notification when failing API requests on the initial page load of the login page --- packages/builder/src/pages/builder/_layout.svelte | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/builder/src/pages/builder/_layout.svelte b/packages/builder/src/pages/builder/_layout.svelte index 10779b2491..1bdf495113 100644 --- a/packages/builder/src/pages/builder/_layout.svelte +++ b/packages/builder/src/pages/builder/_layout.svelte @@ -66,7 +66,8 @@ await validateTenantId() } } catch (error) { - notifications.error("Error initialising builder") + // Don't show a notification here, as we might 403 initially due to not + // being logged in } loaded = true }) From 611dc0ab483820ac609d6a379f7629e187803e26 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 24 Jan 2022 19:15:43 +0000 Subject: [PATCH 38/63] Use correct casing for login error --- packages/backend-core/src/middleware/passport/local.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend-core/src/middleware/passport/local.js b/packages/backend-core/src/middleware/passport/local.js index f95c3a173e..2149bd3e18 100644 --- a/packages/backend-core/src/middleware/passport/local.js +++ b/packages/backend-core/src/middleware/passport/local.js @@ -8,7 +8,7 @@ const { newid } = require("../../hashing") const { createASession } = require("../../security/sessions") const { getTenantId } = require("../../tenancy") -const INVALID_ERR = "Invalid Credentials" +const INVALID_ERR = "Invalid credentials" const SSO_NO_PASSWORD = "SSO user does not have a password set" const EXPIRED = "This account has expired. Please reset your password" From 7656887c1a75c08664992fbf9533d96bfa740fce Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 21 Jan 2022 13:32:56 +0000 Subject: [PATCH 39/63] Fix rare issue which could occur when enriching component props twice before an initial render has taken place --- .../client/src/components/Component.svelte | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/packages/client/src/components/Component.svelte b/packages/client/src/components/Component.svelte index a156c4c9e6..d0d202a04b 100644 --- a/packages/client/src/components/Component.svelte +++ b/packages/client/src/components/Component.svelte @@ -276,27 +276,29 @@ // reactive statements as much as possible. const cacheSettings = (enriched, nested, conditional) => { const allSettings = { ...enriched, ...nested, ...conditional } - if (!cachedSettings) { + const mounted = ref?.$$set != null + if (!cachedSettings || !mounted) { cachedSettings = { ...allSettings } initialSettings = cachedSettings } else { Object.keys(allSettings).forEach(key => { const same = propsAreSame(allSettings[key], cachedSettings[key]) if (!same) { + // Updated cachedSettings (which is assigned by reference to + // initialSettings) so that if we remount the component then the + // initial props are up to date. By setting it this way rather than + // setting it on initialSettings directly, we avoid a double render. cachedSettings[key] = allSettings[key] - assignSetting(key, allSettings[key]) + + // Programmatically set the prop to avoid svelte reactive statements + // firing inside components. This circumvents the problems caused by + // spreading a props object. + ref.$$set({ [key]: allSettings[key] }) } }) } } - // Assigns a certain setting to this component. - // We manually use the svelte $set function to avoid triggering additional - // reactive statements. - const assignSetting = (key, value) => { - ref?.$$set?.({ [key]: value }) - } - // Generates a key used to determine when components need to fully remount. // Currently only toggling editing requires remounting. const getRenderKey = (id, editing) => { @@ -305,7 +307,7 @@ {#key renderKey} - {#if constructor && cachedSettings && (visible || inSelectedPath)} + {#if constructor && initialSettings && (visible || inSelectedPath)}
    Date: Tue, 25 Jan 2022 08:04:56 +0000 Subject: [PATCH 40/63] Fix email template update endpoint --- packages/frontend-core/src/api/templates.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/frontend-core/src/api/templates.js b/packages/frontend-core/src/api/templates.js index 720110fe5d..3c474dabc6 100644 --- a/packages/frontend-core/src/api/templates.js +++ b/packages/frontend-core/src/api/templates.js @@ -20,9 +20,7 @@ export const buildTemplateEndpoints = API => ({ saveEmailTemplate: async template => { return await API.post({ url: "/api/global/template", - body: { - template, - }, + body: template, }) }, From 25df85b91fb3bfb62bf6431a4d52ca06c0ddd50e Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 25 Jan 2022 08:10:49 +0000 Subject: [PATCH 41/63] Fix custom API response parsing not working --- packages/frontend-core/src/api/index.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/frontend-core/src/api/index.js b/packages/frontend-core/src/api/index.js index 10a32f9d56..a2cd62f16a 100644 --- a/packages/frontend-core/src/api/index.js +++ b/packages/frontend-core/src/api/index.js @@ -83,6 +83,7 @@ export const createAPIClient = config => { body, json = true, external = false, + parseResponse, }) => { // Ensure we don't do JSON processing if sending a GET request json = json && method !== "GET" @@ -125,8 +126,8 @@ export const createAPIClient = config => { // Handle response if (response.status >= 200 && response.status < 400) { try { - if (config?.parseResponse) { - return await config.parseResponse(response) + if (parseResponse) { + return await parseResponse(response) } else { return await response.json() } From 9823534f808246b51b700a6aeb8a1a9291575d7a Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 25 Jan 2022 08:13:28 +0000 Subject: [PATCH 42/63] Fix integration list not loading correctly --- .../DatasourceNavigator/modals/CreateDatasourceModal.svelte | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 267b0495ec..0564565012 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -84,7 +84,6 @@ ...newIntegrations, ...integrationList, } - return newIntegrations } catch (error) { notifications.error("Error fetching integrations") } From b0c03d8508413e18bf0a7c3a3c09f178b7044f9a Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 25 Jan 2022 08:22:53 +0000 Subject: [PATCH 43/63] Improve style of data import modal --- .../DataTable/modals/ImportModal.svelte | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte b/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte index 930842d34f..f04a6c25c9 100644 --- a/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/ImportModal.svelte @@ -1,5 +1,11 @@ -{#key screenDefinition?._id} - - - -{/key} +{#if $routeStore.routerLoaded} + {#key screenDefinition?._id} + + + + {/key} +{/if} From 604788a244a68142695dc6a5cea1e61c988d82b7 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 25 Jan 2022 11:22:26 +0000 Subject: [PATCH 48/63] Fix issue with multiple enrichments before components mount without affecting other components --- .../client/src/components/Component.svelte | 87 +++++++++---------- 1 file changed, 43 insertions(+), 44 deletions(-) diff --git a/packages/client/src/components/Component.svelte b/packages/client/src/components/Component.svelte index d0d202a04b..f43c2b30ec 100644 --- a/packages/client/src/components/Component.svelte +++ b/packages/client/src/components/Component.svelte @@ -118,9 +118,6 @@ // Build up the final settings object to be passed to the component $: cacheSettings(enrichedSettings, nestedSettings, conditionalSettings) - // Render key is used to determine when components need to fully remount - $: renderKey = getRenderKey(id, editing) - // Update component context $: componentStore.set({ id, @@ -276,8 +273,7 @@ // reactive statements as much as possible. const cacheSettings = (enriched, nested, conditional) => { const allSettings = { ...enriched, ...nested, ...conditional } - const mounted = ref?.$$set != null - if (!cachedSettings || !mounted) { + if (!cachedSettings) { cachedSettings = { ...allSettings } initialSettings = cachedSettings } else { @@ -290,51 +286,54 @@ // setting it on initialSettings directly, we avoid a double render. cachedSettings[key] = allSettings[key] - // Programmatically set the prop to avoid svelte reactive statements - // firing inside components. This circumvents the problems caused by - // spreading a props object. - ref.$$set({ [key]: allSettings[key] }) + if (ref?.$$set) { + // Programmatically set the prop to avoid svelte reactive statements + // firing inside components. This circumvents the problems caused by + // spreading a props object. + ref.$$set({ [key]: allSettings[key] }) + } else { + // Sometimes enrichment can occur multiple times before the + // component has mounted and been assigned a ref. + // In these cases, for some reason we need to update the + // initial settings object, even though it is equivalent by + // reference to cached settings. This solves the problem of multiple + // initial enrichments, while also not causing wasted renders for + // any components not affected by this issue. + initialSettings[key] = allSettings[key] + } } }) } } - - // Generates a key used to determine when components need to fully remount. - // Currently only toggling editing requires remounting. - const getRenderKey = (id, editing) => { - return Helpers.hashString(`${id}-${editing}`) - } -{#key renderKey} - {#if constructor && initialSettings && (visible || inSelectedPath)} - - -
    - - {#if children.length} - {#each children as child (child._id)} - - {/each} - {:else if emptyState} - - {:else if isBlock} - - {/if} - -
    - {/if} -{/key} +{#if constructor && initialSettings && (visible || inSelectedPath)} + + +
    + + {#if children.length} + {#each children as child (child._id)} + + {/each} + {:else if emptyState} + + {:else if isBlock} + + {/if} + +
    +{/if}