From 10cccaea91c92382c14507f924e46b8dd0542634 Mon Sep 17 00:00:00 2001 From: mshanemc Date: Mon, 9 Oct 2023 16:23:06 -0500 Subject: [PATCH] feat: use lodash directly --- package.json | 22 +++++ src/config/config.ts | 4 +- src/config/configAggregator.ts | 5 +- src/config/configStore.ts | 3 +- src/org/connection.ts | 3 +- src/org/permissionSetAssignment.ts | 3 +- src/org/user.ts | 4 +- src/sfProject.ts | 3 +- src/status/streamingClient.ts | 3 +- src/util/sfdc.ts | 2 +- src/webOAuthServer.ts | 4 +- test/unit/org/authInfoTest.ts | 3 +- test/unit/org/orgTest.ts | 3 +- yarn.lock | 124 ++++++++++++++++++++++++++++- 14 files changed, 172 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index bbead658cf..34910ed7c7 100644 --- a/package.json +++ b/package.json @@ -51,6 +51,16 @@ "jsforce": "^2.0.0-beta.27", "jsonwebtoken": "9.0.2", "jszip": "3.10.1", + "lodash.defaults": "^4.2.0", + "lodash.findkey": "^4.6.0", + "lodash.keyby": "^4.6.0", + "lodash.mapkeys": "^4.6.0", + "lodash.maxby": "^4.6.0", + "lodash.merge": "^4.6.2", + "lodash.omit": "^4.5.0", + "lodash.set": "^4.3.2", + "lodash.sortby": "^4.7.0", + "lodash.tonumber": "^4.0.3", "pino": "^8.15.1", "pino-abstract-transport": "^1.0.0", "pino-pretty": "^10.2.0", @@ -67,6 +77,17 @@ "@types/chai-string": "^1.4.3", "@types/jsonwebtoken": "9.0.3", "@types/lodash": "^4.14.199", + "@types/lodash.defaults": "^4.2.7", + "@types/lodash.findkey": "^4.6.7", + "@types/lodash.includes": "^4.3.7", + "@types/lodash.keyby": "^4.6.7", + "@types/lodash.mapkeys": "^4.6.7", + "@types/lodash.maxby": "^4.6.7", + "@types/lodash.merge": "^4.6.7", + "@types/lodash.omit": "^4.5.7", + "@types/lodash.set": "^4.3.7", + "@types/lodash.sortby": "^4.7.7", + "@types/lodash.tonumber": "^4.0.7", "@types/proper-lockfile": "^4.1.2", "@types/shelljs": "0.8.13", "@typescript-eslint/eslint-plugin": "^5.62.0", @@ -84,6 +105,7 @@ "eslint-plugin-jsdoc": "^43.2.0", "husky": "^7.0.4", "lodash": "^4.17.21", + "lodash.includes": "^4.3.0", "mocha": "^9.1.3", "nyc": "^15.1.0", "prettier": "^2.8.7", diff --git a/src/config/config.ts b/src/config/config.ts index 99cc21c69c..3f7e360bf1 100644 --- a/src/config/config.ts +++ b/src/config/config.ts @@ -7,7 +7,9 @@ import { dirname as pathDirname, join as pathJoin } from 'path'; import * as fs from 'fs'; -import { keyBy, parseJsonMap, set } from '@salesforce/kit'; +import { default as keyBy } from 'lodash.keyby'; +import { default as set } from 'lodash.set'; +import { parseJsonMap } from '@salesforce/kit'; import { Dictionary, ensure, isString, JsonPrimitive, Nullable } from '@salesforce/ts-types'; import { Global } from '../global'; import { Logger } from '../logger/logger'; diff --git a/src/config/configAggregator.ts b/src/config/configAggregator.ts index 03c75cb2ff..97c1b11be5 100644 --- a/src/config/configAggregator.ts +++ b/src/config/configAggregator.ts @@ -4,8 +4,9 @@ * Licensed under the BSD 3-Clause license. * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ - -import { AsyncOptionalCreatable, merge, sortBy } from '@salesforce/kit'; +import { default as merge } from 'lodash.merge'; +import { default as sortBy } from 'lodash.sortby'; +import { AsyncOptionalCreatable } from '@salesforce/kit'; import { AnyJson, Dictionary, isArray, isJsonMap, JsonMap, Optional } from '@salesforce/ts-types'; import { Messages } from '../messages'; import { Lifecycle } from '../lifecycleEvents'; diff --git a/src/config/configStore.ts b/src/config/configStore.ts index 52b4eb348a..51ab4866c4 100644 --- a/src/config/configStore.ts +++ b/src/config/configStore.ts @@ -5,7 +5,8 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ -import { AsyncOptionalCreatable, cloneJson, set } from '@salesforce/kit'; +import { AsyncOptionalCreatable, cloneJson } from '@salesforce/kit'; +import { default as set } from 'lodash.set'; import { isPlainObject } from '@salesforce/ts-types'; import { AnyJson, diff --git a/src/org/connection.ts b/src/org/connection.ts index 0880717170..c8c09fa34e 100644 --- a/src/org/connection.ts +++ b/src/org/connection.ts @@ -9,7 +9,8 @@ import { URL } from 'url'; import type { AsyncResult, DeployOptions, DeployResultLocator } from 'jsforce/lib/api/metadata'; -import { Duration, env, maxBy } from '@salesforce/kit'; +import { default as maxBy } from 'lodash.maxby'; +import { Duration, env } from '@salesforce/kit'; import { asString, ensure, isString, JsonMap, Optional } from '@salesforce/ts-types'; import { Connection as JSForceConnection, diff --git a/src/org/permissionSetAssignment.ts b/src/org/permissionSetAssignment.ts index 883af9f2b3..09adc1a15d 100644 --- a/src/org/permissionSetAssignment.ts +++ b/src/org/permissionSetAssignment.ts @@ -6,7 +6,8 @@ */ import { EOL } from 'os'; -import { mapKeys, upperFirst } from '@salesforce/kit'; +import { default as mapKeys } from 'lodash.mapkeys'; +import { upperFirst } from '@salesforce/kit'; import { hasArray, Optional } from '@salesforce/ts-types'; import { QueryResult, Record } from 'jsforce'; import { Logger } from '../logger/logger'; diff --git a/src/org/user.ts b/src/org/user.ts index 83d6a71794..6ad950d207 100644 --- a/src/org/user.ts +++ b/src/org/user.ts @@ -6,7 +6,9 @@ */ import { EOL } from 'os'; -import { AsyncCreatable, lowerFirst, mapKeys, omit, parseJsonMap, upperFirst } from '@salesforce/kit'; +import { default as mapKeys } from 'lodash.mapkeys'; +import { default as omit } from 'lodash.omit'; +import { AsyncCreatable, lowerFirst, parseJsonMap, upperFirst } from '@salesforce/kit'; import { asJsonArray, asNumber, ensureJsonMap, ensureString, isJsonMap, Many } from '@salesforce/ts-types'; import type { HttpRequest, HttpResponse, QueryResult, Schema, SObjectUpdateRecord } from 'jsforce'; import { HttpApi } from 'jsforce/lib/http-api'; diff --git a/src/sfProject.ts b/src/sfProject.ts index b053fee020..e98587046a 100644 --- a/src/sfProject.ts +++ b/src/sfProject.ts @@ -6,7 +6,8 @@ */ import { basename, dirname, isAbsolute, normalize, resolve, sep } from 'path'; import * as fs from 'fs'; -import { defaults, env } from '@salesforce/kit'; +import { default as defaults } from 'lodash.defaults'; +import { env } from '@salesforce/kit'; import { Dictionary, ensure, JsonMap, Nullable, Optional } from '@salesforce/ts-types'; import { SfdcUrl } from './util/sfdcUrl'; import { ConfigAggregator } from './config/configAggregator'; diff --git a/src/status/streamingClient.ts b/src/status/streamingClient.ts index ac50a92d94..7bc2b0c4ca 100644 --- a/src/status/streamingClient.ts +++ b/src/status/streamingClient.ts @@ -8,7 +8,8 @@ /* eslint-disable @typescript-eslint/ban-ts-comment */ import { resolve as resolveUrl } from 'url'; -import { AsyncOptionalCreatable, Duration, Env, env, set } from '@salesforce/kit'; +import { default as set } from 'lodash.set'; +import { AsyncOptionalCreatable, Duration, Env, env } from '@salesforce/kit'; import { AnyFunction, AnyJson, ensure, ensureString, JsonMap } from '@salesforce/ts-types/lib'; import * as Faye from 'faye'; import { Logger } from '../logger/logger'; diff --git a/src/util/sfdc.ts b/src/util/sfdc.ts index 2c144eca9b..172c38fd37 100644 --- a/src/util/sfdc.ts +++ b/src/util/sfdc.ts @@ -5,7 +5,7 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ -import { findKey } from '@salesforce/kit'; +import { default as findKey } from 'lodash.findkey'; import { AnyJson, asJsonMap, isJsonMap, JsonMap, Optional } from '@salesforce/ts-types'; /** diff --git a/src/webOAuthServer.ts b/src/webOAuthServer.ts index 9ba93cea60..fbbebb5978 100644 --- a/src/webOAuthServer.ts +++ b/src/webOAuthServer.ts @@ -12,8 +12,10 @@ import { parse as parseQueryString } from 'querystring'; import { parse as parseUrl } from 'url'; import { Socket } from 'net'; import { EventEmitter } from 'events'; +import { default as set } from 'lodash.set'; +import { default as toNumber } from 'lodash.tonumber'; import { OAuth2 } from 'jsforce'; -import { AsyncCreatable, Env, set, toNumber } from '@salesforce/kit'; +import { AsyncCreatable, Env } from '@salesforce/kit'; import { asString, get, Nullable } from '@salesforce/ts-types'; import { Logger } from './logger/logger'; import { AuthInfo, DEFAULT_CONNECTED_APP_INFO } from './org'; diff --git a/test/unit/org/authInfoTest.ts b/test/unit/org/authInfoTest.ts index 556a347c81..bef85ca110 100644 --- a/test/unit/org/authInfoTest.ts +++ b/test/unit/org/authInfoTest.ts @@ -12,7 +12,8 @@ import path from 'path'; import dns from 'dns'; import jwt from 'jsonwebtoken'; -import { cloneJson, env, includes } from '@salesforce/kit'; +import { default as includes } from 'lodash.includes'; +import { cloneJson, env } from '@salesforce/kit'; import { spyMethod, stubMethod } from '@salesforce/ts-sinon'; import { AnyJson, getJsonMap, JsonMap, toJsonMap } from '@salesforce/ts-types'; import { expect } from 'chai'; diff --git a/test/unit/org/orgTest.ts b/test/unit/org/orgTest.ts index 42fa5d14e5..2951b46de5 100644 --- a/test/unit/org/orgTest.ts +++ b/test/unit/org/orgTest.ts @@ -8,7 +8,8 @@ import { deepStrictEqual, fail } from 'assert'; import fs from 'fs'; import { constants as fsConstants } from 'fs'; import { join as pathJoin } from 'path'; -import { Duration, set } from '@salesforce/kit'; +import { default as set } from 'lodash.set'; +import { Duration } from '@salesforce/kit'; import { stubMethod } from '@salesforce/ts-sinon'; import { AnyJson, ensureJsonArray, ensureJsonMap, ensureString, JsonMap, Optional } from '@salesforce/ts-types'; import { assert, expect, config as chaiConfig } from 'chai'; diff --git a/yarn.lock b/yarn.lock index 2fa58dc913..4740cc6841 100644 --- a/yarn.lock +++ b/yarn.lock @@ -738,7 +738,84 @@ dependencies: "@types/node" "*" -"@types/lodash@^4.14.199": +"@types/lodash.defaults@^4.2.7": + version "4.2.7" + resolved "https://registry.yarnpkg.com/@types/lodash.defaults/-/lodash.defaults-4.2.7.tgz#092d4005311b73803a8983281662c6a28dab28d5" + integrity sha512-u7sEFKHVbS66OUD3aThUos6vSjYIddRmVrvKuh16darllgOLD8nbs6XpYkNM6Jwq7D2izws9wt7g04iP0Syg8A== + dependencies: + "@types/lodash" "*" + +"@types/lodash.findkey@^4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.findkey/-/lodash.findkey-4.6.7.tgz#2193df51c84fea14072d0896fa0d289fedcac893" + integrity sha512-huAfe0SuQT2gnF37C/C7xiMSWZDeD8bGveTYQuF4UkRBFdzO1coSFHwucK5b4SUiBDW1mH9c7uTJ4VokATo3aw== + dependencies: + "@types/lodash" "*" + +"@types/lodash.includes@^4.3.7": + version "4.3.7" + resolved "https://registry.yarnpkg.com/@types/lodash.includes/-/lodash.includes-4.3.7.tgz#b4cc0fe0fa0e68083fc933a5a644908cbd9e1f0f" + integrity sha512-irrCqhsS91qsv2rWN+nJsFScy5X4nG3kByWKpxV/NbUSu/dp8WTqujN5KknsgxcQiAjJ3q2LmNwV8NPlVUpGJA== + dependencies: + "@types/lodash" "*" + +"@types/lodash.keyby@^4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.keyby/-/lodash.keyby-4.6.7.tgz#e5ae589c73886fa23f08a40debf07098cacc9f30" + integrity sha512-3qSHbbxLfXlARIKsaijZPb/5ZHDajv1vRg7OlAOuBNwN29PESS3sEOPfG1s2kzSuZnKtxtXZd1lvGj5JasN91w== + dependencies: + "@types/lodash" "*" + +"@types/lodash.mapkeys@^4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.mapkeys/-/lodash.mapkeys-4.6.7.tgz#3b06a1e426195fbd6d479ba63e7f91e167c14b34" + integrity sha512-mfK0jlh4Itdhmy69/7r/vYftWaltahoS9kCF62UyvbDtXzMkUjuypaf2IASeoeoUPqBo/heoJSZ/vntbXC6LAA== + dependencies: + "@types/lodash" "*" + +"@types/lodash.maxby@^4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.maxby/-/lodash.maxby-4.6.7.tgz#d754e57d3939a0e17218c5f4422dae7a1830d337" + integrity sha512-IEAUqiNm6L+dKSAx1StBfl+EUT3kMoLKDslTOxzkTlb2HYldIqcQOgavuRdqlTI2yKzSVRZM2ZZbRvKuEpaQaQ== + dependencies: + "@types/lodash" "*" + +"@types/lodash.merge@^4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.merge/-/lodash.merge-4.6.7.tgz#0af6555dd8bc6568ef73e5e0d820a027362946b1" + integrity sha512-OwxUJ9E50gw3LnAefSHJPHaBLGEKmQBQ7CZe/xflHkyy/wH2zVyEIAKReHvVrrn7zKdF58p16We9kMfh7v0RRQ== + dependencies: + "@types/lodash" "*" + +"@types/lodash.omit@^4.5.7": + version "4.5.7" + resolved "https://registry.yarnpkg.com/@types/lodash.omit/-/lodash.omit-4.5.7.tgz#2357ed2412b4164344e8ee41f85bb0b2920304ba" + integrity sha512-6q6cNg0tQ6oTWjSM+BcYMBhan54P/gLqBldG4AuXd3nKr0oeVekWNS4VrNEu3BhCSDXtGapi7zjhnna0s03KpA== + dependencies: + "@types/lodash" "*" + +"@types/lodash.set@^4.3.7": + version "4.3.7" + resolved "https://registry.yarnpkg.com/@types/lodash.set/-/lodash.set-4.3.7.tgz#784fccea3fbef4d0949d1897a780f592da700942" + integrity sha512-bS5Wkg/nrT82YUfkNYPSccFrNZRL+irl7Yt4iM6OTSQ0VZJED2oUIVm15NkNtUAQ8SRhCe+axqERUV6MJgkeEg== + dependencies: + "@types/lodash" "*" + +"@types/lodash.sortby@^4.7.7": + version "4.7.7" + resolved "https://registry.yarnpkg.com/@types/lodash.sortby/-/lodash.sortby-4.7.7.tgz#10bf6eecd4d69aacb87e093e65bd4eb5a13b0237" + integrity sha512-J/4IS+jQopGBrrRetBXDCX0KnSeXJZ0rOTmGAxR9MWGV24YdHxX8IRi9LCGAU9GKWlBov9KRSfQpuup9PReqrw== + dependencies: + "@types/lodash" "*" + +"@types/lodash.tonumber@^4.0.7": + version "4.0.7" + resolved "https://registry.yarnpkg.com/@types/lodash.tonumber/-/lodash.tonumber-4.0.7.tgz#f0e6874f145eb6fe0604fa497b4025410aa02fc4" + integrity sha512-+hJ7A8gssoiVJVNM9x+9ljzeg/EsmI3FdrElUYSfqAHFvlt/2Oc8hBJdIS1lZDkVV0pNMABaDVmtygu2yZstGg== + dependencies: + "@types/lodash" "*" + +"@types/lodash@*", "@types/lodash@^4.14.199": version "4.14.199" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.199.tgz#c3edb5650149d847a277a8961a7ad360c474e9bf" integrity sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg== @@ -3208,6 +3285,16 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== +lodash.defaults@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== + +lodash.findkey@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.findkey/-/lodash.findkey-4.6.0.tgz#83058e903b51cbb759d09ccf546dea3ea39c4718" + integrity sha512-Y+f2R8KsUDJVqdfeai01P5A1IQeMWsMG1p0rghzdhIl7TIap47Y2Z5UJK8x4pstixNL56KVHFRE1IW9jvRwy4g== + lodash.flattendeep@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" @@ -3258,6 +3345,21 @@ lodash.kebabcase@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== +lodash.keyby@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.keyby/-/lodash.keyby-4.6.0.tgz#7f6a1abda93fd24e22728a4d361ed8bcba5a4354" + integrity sha512-PRe4Cn20oJM2Sn6ljcZMeKgyhTHpzvzFmdsp9rK+6K0eJs6Tws0MqgGFpfX/o2HjcoQcBny1Eik9W7BnVTzjIQ== + +lodash.mapkeys@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.mapkeys/-/lodash.mapkeys-4.6.0.tgz#df2cfa231d7c57c7a8ad003abdad5d73d3ea5195" + integrity sha512-0Al+hxpYvONWtg+ZqHpa/GaVzxuN3V7Xeo2p+bY06EaK/n+Y9R7nBePPN2o1LxmL0TWQSwP8LYZ008/hc9JzhA== + +lodash.maxby@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.maxby/-/lodash.maxby-4.6.0.tgz#082240068f3c7a227aa00a8380e4f38cf0786e3d" + integrity sha512-QfTqQTwzmKxLy7VZlbx2M/ipWv8DCQ2F5BI/MRxLharOQ5V78yMSuB+JE+EuUM22txYfj09R2Q7hUlEYj7KdNg== + lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" @@ -3268,21 +3370,41 @@ lodash.mergewith@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz#617121f89ac55f59047c7aec1ccd6654c6590f55" integrity sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ== +lodash.omit@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60" + integrity sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg== + lodash.once@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== +lodash.set@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" + integrity sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg== + lodash.snakecase@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw== +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== + lodash.startcase@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== +lodash.tonumber@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/lodash.tonumber/-/lodash.tonumber-4.0.3.tgz#0b96b31b35672793eb7f5a63ee791f1b9e9025d9" + integrity sha512-SY0SwuPOHRwKcCNTdsntPYb+Zddz5mDUIVFABzRMqmAiL41pMeyoQFGxYAw5zdc9NnH4pbJqiqqp5ckfxa+zSA== + lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"