From 0c39c634e191e7c7d6657f3d3c270dd6b89bcf64 Mon Sep 17 00:00:00 2001 From: Simon Warta Date: Wed, 29 Jan 2020 13:21:13 +0100 Subject: [PATCH] Convert mocha+chai tests to Jasmine --- .../faucet/jasmine-spec-reporter.config.json | 12 + packages/faucet/jasmine-testrunner.js | 26 ++ packages/faucet/package.json | 8 +- .../src/actions/start/httperror.spec.ts | 14 +- .../src/actions/start/requestparser.spec.ts | 16 +- packages/faucet/src/cashflow.spec.ts | 40 +-- packages/faucet/src/codec.spec.ts | 16 +- packages/faucet/src/hdpaths.spec.ts | 25 +- packages/faucet/src/multichainhelpers.spec.ts | 7 +- yarn.lock | 262 ++---------------- 10 files changed, 120 insertions(+), 306 deletions(-) create mode 100644 packages/faucet/jasmine-spec-reporter.config.json create mode 100755 packages/faucet/jasmine-testrunner.js diff --git a/packages/faucet/jasmine-spec-reporter.config.json b/packages/faucet/jasmine-spec-reporter.config.json new file mode 100644 index 00000000..3a997556 --- /dev/null +++ b/packages/faucet/jasmine-spec-reporter.config.json @@ -0,0 +1,12 @@ +{ + "suite": { + "displayNumber": true + }, + "spec": { + "displayDuration": true + }, + "summary": { + "displayPending": false, + "displayStacktrace": true + } +} diff --git a/packages/faucet/jasmine-testrunner.js b/packages/faucet/jasmine-testrunner.js new file mode 100755 index 00000000..55b2df29 --- /dev/null +++ b/packages/faucet/jasmine-testrunner.js @@ -0,0 +1,26 @@ +#!/usr/bin/env node + +require("source-map-support").install(); +const defaultSpecReporterConfig = require("./jasmine-spec-reporter.config.json"); + +// setup Jasmine +const Jasmine = require("jasmine"); +const jasmine = new Jasmine(); +jasmine.loadConfig({ + spec_dir: "build", + spec_files: ["**/*.spec.js"], + helpers: [], + random: false, + seed: null, + stopSpecOnExpectationFailure: false, +}); +jasmine.jasmine.DEFAULT_TIMEOUT_INTERVAL = 15 * 1000; + +// setup reporter +const { SpecReporter } = require("jasmine-spec-reporter"); +const reporter = new SpecReporter({ ...defaultSpecReporterConfig }); + +// initialize and execute +jasmine.env.clearReporters(); +jasmine.addReporter(reporter); +jasmine.execute(); diff --git a/packages/faucet/package.json b/packages/faucet/package.json index 4e156995..1af16609 100644 --- a/packages/faucet/package.json +++ b/packages/faucet/package.json @@ -29,7 +29,7 @@ "format-types": "prettier --write --loglevel warn \"./types/**/*.d.ts\"", "build": "shx rm -rf ./build && tsc && yarn move-types && yarn format-types", "build-or-skip": "[ -n \"$SKIP_BUILD\" ] || yarn build", - "test-node": "mocha \"./build/**/*.spec.js\"", + "test-node": "node jasmine-testrunner.js", "test": "yarn build-or-skip && yarn test-node" }, "dependencies": { @@ -51,12 +51,8 @@ }, "devDependencies": { "@types/bn.js": "^4.11.6", - "@types/chai": "^4.2.7", "@types/koa": "^2.11.0", "@types/koa-bodyparser": "^4.3.0", - "@types/koa__cors": "^3.0.1", - "@types/mocha": "^5.2.7", - "chai": "^4.2.0", - "mocha": "^7.0.1" + "@types/koa__cors": "^3.0.1" } } diff --git a/packages/faucet/src/actions/start/httperror.spec.ts b/packages/faucet/src/actions/start/httperror.spec.ts index 9505bce6..fb3e61c6 100644 --- a/packages/faucet/src/actions/start/httperror.spec.ts +++ b/packages/faucet/src/actions/start/httperror.spec.ts @@ -1,20 +1,18 @@ -import { expect } from "chai"; - import { HttpError } from "./httperror"; describe("HttpError", () => { it("can be constructed", () => { { const error = new HttpError(400, "Invalid name field"); - expect(error.message).to.eql("Invalid name field"); - expect(error.status).to.eql(400); - expect(error.expose).to.eql(true); + expect(error.message).toEqual("Invalid name field"); + expect(error.status).toEqual(400); + expect(error.expose).toEqual(true); } { const error = new HttpError(500, "Out of memory", false); - expect(error.message).to.eql("Out of memory"); - expect(error.status).to.eql(500); - expect(error.expose).to.eql(false); + expect(error.message).toEqual("Out of memory"); + expect(error.status).toEqual(500); + expect(error.expose).toEqual(false); } }); }); diff --git a/packages/faucet/src/actions/start/requestparser.spec.ts b/packages/faucet/src/actions/start/requestparser.spec.ts index c6d68e25..84be6d2c 100644 --- a/packages/faucet/src/actions/start/requestparser.spec.ts +++ b/packages/faucet/src/actions/start/requestparser.spec.ts @@ -1,48 +1,46 @@ -import { expect } from "chai"; - import { RequestParser } from "./requestparser"; describe("RequestParser", () => { it("can process valid credit request", () => { const body = { address: "abc", ticker: "CASH" }; - expect(RequestParser.parseCreditBody(body)).to.eql({ address: "abc", ticker: "CASH" }); + expect(RequestParser.parseCreditBody(body)).toEqual({ address: "abc", ticker: "CASH" }); }); it("throws for invalid credit requests", () => { // address unset { const body = { ticker: "CASH" }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'address' must be a string/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'address' must be a string/i); } // address wrong type { const body = { address: true, ticker: "CASH" }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'address' must be a string/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'address' must be a string/i); } // address empty { const body = { address: "", ticker: "CASH" }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'address' must not be empty/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'address' must not be empty/i); } // ticker unset { const body = { address: "abc" }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'ticker' must be a string/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'ticker' must be a string/i); } // ticker wrong type { const body = { address: "abc", ticker: true }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'ticker' must be a string/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'ticker' must be a string/i); } // ticker empty { const body = { address: "abc", ticker: "" }; - expect(() => RequestParser.parseCreditBody(body)).to.throw(/Property 'ticker' must not be empty/i); + expect(() => RequestParser.parseCreditBody(body)).toThrowError(/Property 'ticker' must not be empty/i); } }); }); diff --git a/packages/faucet/src/cashflow.spec.ts b/packages/faucet/src/cashflow.spec.ts index 7fed499e..6257254a 100644 --- a/packages/faucet/src/cashflow.spec.ts +++ b/packages/faucet/src/cashflow.spec.ts @@ -1,5 +1,5 @@ +// tslint:disable: no-object-mutation import { TokenTicker } from "@iov/bcp"; -import { expect } from "chai"; import { creditAmount, @@ -12,18 +12,18 @@ import { import { Codec } from "./codec"; describe("Cashflow", () => { - before(() => { + beforeAll(() => { setFractionalDigits(3); }); describe("creditAmount", () => { it("returns '10' + '000' by default", () => { - expect(creditAmount("TOKENZ" as TokenTicker)).to.eql({ + expect(creditAmount("TOKENZ" as TokenTicker)).toEqual({ quantity: "10000", fractionalDigits: 3, tokenTicker: "TOKENZ", }); - expect(creditAmount("TRASH" as TokenTicker)).to.eql({ + expect(creditAmount("TRASH" as TokenTicker)).toEqual({ quantity: "10000", fractionalDigits: 3, tokenTicker: "TRASH", @@ -32,7 +32,7 @@ describe("Cashflow", () => { it("returns value from env variable + '000' when set", () => { process.env.FAUCET_CREDIT_AMOUNT_WTF = "22"; - expect(creditAmount("WTF" as TokenTicker)).to.eql({ + expect(creditAmount("WTF" as TokenTicker)).toEqual({ quantity: "22000", fractionalDigits: 3, tokenTicker: "WTF", @@ -41,7 +41,7 @@ describe("Cashflow", () => { it("returns default from env variable + '000' when set to empty", () => { process.env.FAUCET_CREDIT_AMOUNT_WTF = ""; - expect(creditAmount("WTF" as TokenTicker)).to.eql({ + expect(creditAmount("WTF" as TokenTicker)).toEqual({ quantity: "10000", fractionalDigits: 3, tokenTicker: "WTF", @@ -54,7 +54,7 @@ describe("Cashflow", () => { process.env.FAUCET_REFILL_FACTOR = ""; }); it("returns 20*10 + '000' by default", () => { - expect(refillAmount("TOKENZ" as TokenTicker)).to.eql({ + expect(refillAmount("TOKENZ" as TokenTicker)).toEqual({ quantity: "200000", fractionalDigits: 3, tokenTicker: "TOKENZ", @@ -63,7 +63,7 @@ describe("Cashflow", () => { it("returns 20*22 + '000' when credit amount is 22", () => { process.env.FAUCET_CREDIT_AMOUNT_WTF = "22"; - expect(refillAmount("WTF" as TokenTicker)).to.eql({ + expect(refillAmount("WTF" as TokenTicker)).toEqual({ quantity: "440000", fractionalDigits: 3, tokenTicker: "WTF", @@ -72,7 +72,7 @@ describe("Cashflow", () => { it("returns 30*10 + '000' when refill factor is 30", () => { process.env.FAUCET_REFILL_FACTOR = "30"; - expect(refillAmount("TOKENZ" as TokenTicker)).to.eql({ + expect(refillAmount("TOKENZ" as TokenTicker)).toEqual({ quantity: "300000", fractionalDigits: 3, tokenTicker: "TOKENZ", @@ -82,7 +82,7 @@ describe("Cashflow", () => { it("returns 30*22 + '000' when refill factor is 30 and credit amount is 22", () => { process.env.FAUCET_REFILL_FACTOR = "30"; process.env.FAUCET_CREDIT_AMOUNT_WTF = "22"; - expect(refillAmount("WTF" as TokenTicker)).to.eql({ + expect(refillAmount("WTF" as TokenTicker)).toEqual({ quantity: "660000", fractionalDigits: 3, tokenTicker: "WTF", @@ -95,7 +95,7 @@ describe("Cashflow", () => { process.env.FAUCET_REFILL_THRESHOLD = ""; }); it("returns 8*10 + '000' by default", () => { - expect(refillThreshold("TOKENZ" as TokenTicker)).to.eql({ + expect(refillThreshold("TOKENZ" as TokenTicker)).toEqual({ quantity: "80000", fractionalDigits: 3, tokenTicker: "TOKENZ", @@ -104,7 +104,7 @@ describe("Cashflow", () => { it("returns 8*22 + '000' when credit amount is 22", () => { process.env.FAUCET_CREDIT_AMOUNT_WTF = "22"; - expect(refillThreshold("WTF" as TokenTicker)).to.eql({ + expect(refillThreshold("WTF" as TokenTicker)).toEqual({ quantity: "176000", fractionalDigits: 3, tokenTicker: "WTF", @@ -113,7 +113,7 @@ describe("Cashflow", () => { it("returns 5*10 + '000' when refill threshold is 5", () => { process.env.FAUCET_REFILL_THRESHOLD = "5"; - expect(refillThreshold("TOKENZ" as TokenTicker)).to.eql({ + expect(refillThreshold("TOKENZ" as TokenTicker)).toEqual({ quantity: "50000", fractionalDigits: 3, tokenTicker: "TOKENZ", @@ -123,7 +123,7 @@ describe("Cashflow", () => { it("returns 5*22 + '000' when refill threshold is 5 and credit amount is 22", () => { process.env.FAUCET_REFILL_THRESHOLD = "5"; process.env.FAUCET_CREDIT_AMOUNT_WTF = "22"; - expect(refillThreshold("WTF" as TokenTicker)).to.eql({ + expect(refillThreshold("WTF" as TokenTicker)).toEqual({ quantity: "110000", fractionalDigits: 3, tokenTicker: "WTF", @@ -133,12 +133,12 @@ describe("Cashflow", () => { describe("gasPrice", () => { it("returns undefined for non-Ethereum codecs", () => { - expect(gasPrice(Codec.Lisk)).to.be.undefined; - expect(gasPrice(Codec.Bns)).to.be.undefined; + expect(gasPrice(Codec.Lisk)).toBeUndefined(); + expect(gasPrice(Codec.Bns)).toBeUndefined(); }); it("returns amount for Ethereum codec", () => { - expect(gasPrice(Codec.Ethereum)).to.be.eql({ + expect(gasPrice(Codec.Ethereum)).toEqual({ quantity: "20000000000", fractionalDigits: 18, tokenTicker: "ETH", @@ -148,12 +148,12 @@ describe("Cashflow", () => { describe("gasLimit", () => { it("returns undefined for non-Ethereum codecs", () => { - expect(gasLimit(Codec.Lisk)).to.be.undefined; - expect(gasLimit(Codec.Bns)).to.be.undefined; + expect(gasLimit(Codec.Lisk)).toBeUndefined(); + expect(gasLimit(Codec.Bns)).toBeUndefined(); }); it("returns amount for Ethereum codec", () => { - expect(gasLimit(Codec.Ethereum)).to.be.eql({ + expect(gasLimit(Codec.Ethereum)).toEqual({ quantity: "2100000", fractionalDigits: 18, tokenTicker: "ETH", diff --git a/packages/faucet/src/codec.spec.ts b/packages/faucet/src/codec.spec.ts index bf5ff998..3085fe12 100644 --- a/packages/faucet/src/codec.spec.ts +++ b/packages/faucet/src/codec.spec.ts @@ -1,16 +1,14 @@ -import { expect } from "chai"; - import { Codec, codecFromString } from "./codec"; describe("Codec", () => { it("can convert string to codec", () => { - expect(codecFromString("bns")).to.equal(Codec.Bns); - expect(codecFromString("lisk")).to.equal(Codec.Lisk); - expect(codecFromString("ethereum")).to.equal(Codec.Ethereum); + expect(codecFromString("bns")).toEqual(Codec.Bns); + expect(codecFromString("lisk")).toEqual(Codec.Lisk); + expect(codecFromString("ethereum")).toEqual(Codec.Ethereum); - expect(() => codecFromString("")).to.throw(/not supported/i); - expect(() => codecFromString("abc")).to.throw(/not supported/i); - expect(() => codecFromString("LISK")).to.throw(/not supported/i); - expect(() => codecFromString("ETHEREUM")).to.throw(/not supported/i); + expect(() => codecFromString("")).toThrowError(/not supported/i); + expect(() => codecFromString("abc")).toThrowError(/not supported/i); + expect(() => codecFromString("LISK")).toThrowError(/not supported/i); + expect(() => codecFromString("ETHEREUM")).toThrowError(/not supported/i); }); }); diff --git a/packages/faucet/src/hdpaths.spec.ts b/packages/faucet/src/hdpaths.spec.ts index ff92f9f1..fb60694a 100644 --- a/packages/faucet/src/hdpaths.spec.ts +++ b/packages/faucet/src/hdpaths.spec.ts @@ -1,5 +1,4 @@ import { Slip10RawIndex } from "@iov/crypto"; -import { expect } from "chai"; import { debugPath } from "./hdpaths"; @@ -7,39 +6,39 @@ describe("hdpaths", () => { describe("debugPath", () => { it("works for no component", () => { // See https://github.com/bitcoin/bips/blob/master/bip-0032/derivation.png from BIP32 - expect(debugPath([])).to.eql("m"); + expect(debugPath([])).toEqual("m"); }); it("works for normal components", () => { const one = Slip10RawIndex.normal(1); - expect(debugPath([one])).to.eql("m/1"); - expect(debugPath([one, one])).to.eql("m/1/1"); - expect(debugPath([one, one, one])).to.eql("m/1/1/1"); + expect(debugPath([one])).toEqual("m/1"); + expect(debugPath([one, one])).toEqual("m/1/1"); + expect(debugPath([one, one, one])).toEqual("m/1/1/1"); const min = Slip10RawIndex.normal(0); - expect(debugPath([min])).to.eql("m/0"); + expect(debugPath([min])).toEqual("m/0"); const max = Slip10RawIndex.normal(2 ** 31 - 1); - expect(debugPath([max])).to.eql("m/2147483647"); + expect(debugPath([max])).toEqual("m/2147483647"); }); it("works for hardened components", () => { const one = Slip10RawIndex.hardened(1); - expect(debugPath([one])).to.eql("m/1'"); - expect(debugPath([one, one])).to.eql("m/1'/1'"); - expect(debugPath([one, one, one])).to.eql("m/1'/1'/1'"); + expect(debugPath([one])).toEqual("m/1'"); + expect(debugPath([one, one])).toEqual("m/1'/1'"); + expect(debugPath([one, one, one])).toEqual("m/1'/1'/1'"); const min = Slip10RawIndex.hardened(0); - expect(debugPath([min])).to.eql("m/0'"); + expect(debugPath([min])).toEqual("m/0'"); const max = Slip10RawIndex.hardened(2 ** 31 - 1); - expect(debugPath([max])).to.eql("m/2147483647'"); + expect(debugPath([max])).toEqual("m/2147483647'"); }); it("works for mixed components", () => { const one = Slip10RawIndex.normal(1); const two = Slip10RawIndex.hardened(2); - expect(debugPath([one, two, two, one])).to.eql("m/1/2'/2'/1"); + expect(debugPath([one, two, two, one])).toEqual("m/1/2'/2'/1"); }); }); }); diff --git a/packages/faucet/src/multichainhelpers.spec.ts b/packages/faucet/src/multichainhelpers.spec.ts index 0531c26e..b81c8553 100644 --- a/packages/faucet/src/multichainhelpers.spec.ts +++ b/packages/faucet/src/multichainhelpers.spec.ts @@ -1,5 +1,4 @@ import { Address, Algorithm, PubkeyBundle, PubkeyBytes, TokenTicker } from "@iov/bcp"; -import { expect } from "chai"; import { availableTokensFromHolder } from "./multichainhelpers"; @@ -16,7 +15,7 @@ describe("multichainhelpers", () => { pubkey: defaultPubkey, balance: [], }); - expect(tickers).to.be.empty; + expect(tickers).toEqual([]); }); it("works for one token", () => { @@ -31,7 +30,7 @@ describe("multichainhelpers", () => { }, ], }); - expect(tickers).to.eql(["CASH"]); + expect(tickers).toEqual(["CASH"]); }); it("works for two tokens", () => { @@ -51,7 +50,7 @@ describe("multichainhelpers", () => { }, ], }); - expect(tickers).to.eql(["CASH", "TRASH"]); + expect(tickers).toEqual(["CASH", "TRASH"]); }); }); }); diff --git a/yarn.lock b/yarn.lock index 52522ace..a6669a56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1140,11 +1140,6 @@ "@types/connect" "*" "@types/node" "*" -"@types/chai@^4.2.7": - version "4.2.7" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.2.7.tgz#1c8c25cbf6e59ffa7d6b9652c78e547d9a41692d" - integrity sha512-luq8meHGYwvky0O7u0eQZdA7B4Wd9owUCqvbw2m3XCrCU8mplYOujMBbvyS547AxJkC+pGnd0Cm15eNxEUNU8g== - "@types/connect@*": version "3.4.33" resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" @@ -1281,11 +1276,6 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/mocha@^5.2.7": - version "5.2.7" - resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-5.2.7.tgz#315d570ccb56c53452ff8638738df60726d5b6ea" - integrity sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ== - "@types/node@*", "@types/node@>= 8": version "13.5.0" resolved "https://registry.yarnpkg.com/@types/node/-/node-13.5.0.tgz#4e498dbf355795a611a87ae5ef811a8660d42662" @@ -1631,11 +1621,6 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ansi-colors@3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== - ansi-escapes@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" @@ -1829,11 +1814,6 @@ assert@^1.1.1: object-assign "^4.1.1" util "0.10.3" -assertion-error@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" - integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== - assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" @@ -2059,11 +2039,6 @@ brorand@^1.0.1: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= -browser-stdout@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" - integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== - browserify-aes@^1.0.0, browserify-aes@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -2310,19 +2285,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chai@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" - integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== - dependencies: - assertion-error "^1.1.0" - check-error "^1.0.2" - deep-eql "^3.0.1" - get-func-name "^2.0.0" - pathval "^1.1.0" - type-detect "^4.0.5" - -chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.2: +chalk@2.4.2, chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2336,26 +2299,6 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -check-error@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= - -chokidar@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" - integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.2.0" - optionalDependencies: - fsevents "~2.1.1" - chokidar@^2.0.2: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -2892,7 +2835,7 @@ debug@3.1.0, debug@=3.1.0, debug@~3.1.0: dependencies: ms "2.0.0" -debug@3.2.6, debug@^3.0.0, debug@^3.1.0, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.0, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -2934,13 +2877,6 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= -deep-eql@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" - integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== - dependencies: - type-detect "^4.0.0" - deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" @@ -3056,11 +2992,6 @@ di@^0.0.1: resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" integrity sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw= -diff@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - diff@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" @@ -3351,7 +3282,7 @@ escape-html@^1.0.3, escape-html@~1.0.3: resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= @@ -3731,13 +3662,6 @@ find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -3753,6 +3677,13 @@ find-up@^2.0.0, find-up@^2.1.0: dependencies: locate-path "^2.0.0" +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + findup-sync@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" @@ -3772,13 +3703,6 @@ flat-cache@^2.0.1: rimraf "2.6.3" write "1.0.3" -flat@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" - integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== - dependencies: - is-buffer "~2.0.3" - flatted@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" @@ -3900,7 +3824,7 @@ fsevents@^1.2.7: bindings "^1.5.0" nan "^2.12.1" -fsevents@~2.1.1, fsevents@~2.1.2: +fsevents@~2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== @@ -3939,11 +3863,6 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-func-name@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= - get-pkg-repo@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" @@ -4058,18 +3977,6 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= -glob@7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - glob@^7.0.0, glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" @@ -4144,11 +4051,6 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== -growl@1.10.5: - version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== - handlebars@^4.4.0: version "4.7.2" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.2.tgz#01127b3840156a0927058779482031afe0e730d7" @@ -4254,11 +4156,6 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" -he@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -4584,11 +4481,6 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-buffer@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== - is-callable@^1.1.4, is-callable@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" @@ -4886,7 +4778,7 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@3.13.1, js-yaml@^3.13.1: +js-yaml@^3.13.1: version "3.13.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== @@ -5330,13 +5222,6 @@ lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.2.1: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -log-symbols@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== - dependencies: - chalk "^2.0.1" - log4js@^4.0.0: version "4.5.1" resolved "https://registry.yarnpkg.com/log4js/-/log4js-4.5.1.tgz#e543625e97d9e6f3e6e7c9fc196dd6ab2cae30b5" @@ -5618,7 +5503,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= -minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.4: +minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -5699,43 +5584,13 @@ mkdirp@*: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.3.tgz#4cf2e30ad45959dddea53ad97d518b6c8205e1ea" integrity sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g== -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" -mocha@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.0.1.tgz#276186d35a4852f6249808c6dd4a1376cbf6c6ce" - integrity sha512-9eWmWTdHLXh72rGrdZjNbG3aa1/3NRPpul1z0D979QpEnFdCG0Q5tv834N+94QEN2cysfV72YocQ3fn87s70fg== - dependencies: - ansi-colors "3.2.3" - browser-stdout "1.3.1" - chokidar "3.3.0" - debug "3.2.6" - diff "3.5.0" - escape-string-regexp "1.0.5" - find-up "3.0.0" - glob "7.1.3" - growl "1.10.5" - he "1.2.0" - js-yaml "3.13.1" - log-symbols "2.2.0" - minimatch "3.0.4" - mkdirp "0.5.1" - ms "2.1.1" - node-environment-flags "1.0.6" - object.assign "4.1.0" - strip-json-comments "2.0.1" - supports-color "6.0.0" - which "1.3.1" - wide-align "1.1.3" - yargs "13.3.0" - yargs-parser "13.1.1" - yargs-unparser "1.6.0" - modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -5758,11 +5613,6 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - ms@^2.0.0, ms@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" @@ -5839,14 +5689,6 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -node-environment-flags@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" - integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== - dependencies: - object.getownpropertydescriptors "^2.0.3" - semver "^5.7.0" - node-fetch-npm@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz#7258c9046182dca345b4208eda918daf33697ff7" @@ -6064,7 +5906,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@4.1.0, object.assign@^4.1.0: +object.assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== @@ -6446,11 +6288,6 @@ path-type@^3.0.0: dependencies: pify "^3.0.0" -pathval@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" - integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= - pbkdf2@^3.0.16, pbkdf2@^3.0.3, pbkdf2@^3.0.9: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -6885,13 +6722,6 @@ readdirp@^2.2.1: micromatch "^3.1.10" readable-stream "^2.0.2" -readdirp@~3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" - integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== - dependencies: - picomatch "^2.0.4" - readdirp@~3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.3.0.tgz#984458d13a1e42e2e9f5841b129e162f369aff17" @@ -7661,11 +7491,6 @@ strip-indent@^2.0.0: resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= -strip-json-comments@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - strip-json-comments@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" @@ -7680,13 +7505,6 @@ strong-log-transformer@^2.0.0: minimist "^1.2.0" through "^2.3.4" -supports-color@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" - integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== - dependencies: - has-flag "^3.0.0" - supports-color@6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" @@ -7989,11 +7807,6 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-detect@^4.0.0, type-detect@^4.0.5: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - type-fest@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" @@ -8316,14 +8129,14 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@1.3.1, which@^1.2.1, which@^1.2.14, which@^1.2.9, which@^1.3.1: +which@^1.2.1, which@^1.2.14, which@^1.2.9, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" -wide-align@1.1.3, wide-align@^1.1.0: +wide-align@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== @@ -8464,14 +8277,6 @@ yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yargs-parser@13.1.1, yargs-parser@^13.1.0, yargs-parser@^13.1.1: - version "13.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" - integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - yargs-parser@^10.0.0: version "10.1.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" @@ -8479,6 +8284,14 @@ yargs-parser@^10.0.0: dependencies: camelcase "^4.1.0" +yargs-parser@^13.1.0: + version "13.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^15.0.0: version "15.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.0.tgz#cdd7a97490ec836195f59f3f4dbe5ea9e8f75f08" @@ -8487,15 +8300,6 @@ yargs-parser@^15.0.0: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-unparser@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" - integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== - dependencies: - flat "^4.1.0" - lodash "^4.17.15" - yargs "^13.3.0" - yargs@13.2.4: version "13.2.4" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" @@ -8513,22 +8317,6 @@ yargs@13.2.4: y18n "^4.0.0" yargs-parser "^13.1.0" -yargs@13.3.0, yargs@^13.3.0: - version "13.3.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" - integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.1" - yargs@^14.2.2: version "14.2.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.2.tgz#2769564379009ff8597cdd38fba09da9b493c4b5"