diff --git a/package.json b/package.json index d5eea1b..2107bc2 100644 --- a/package.json +++ b/package.json @@ -48,6 +48,7 @@ "easy-table": "^1.1.1", "javascript-lemmatizer": "0.0.2", "limdu": "^0.9.4", + "nclr": "^2.2.2", "serialization": "^0.2.0", "tvt-split": "^1.0.2" }, diff --git a/playground/playground-fullStats.json b/playground/playground-fullStats.json index cb4de1c..8201df6 100644 --- a/playground/playground-fullStats.json +++ b/playground/playground-fullStats.json @@ -1,7 +1,7 @@ { "total": 73, - "correctPredictions": 47, - "incorrectPredictions": 26, + "correctPredictions": 38, + "incorrectPredictions": 35, "classes": [ "blog", "bug", @@ -33,59 +33,59 @@ "video" ], "microAvg": { - "accuracy": 0.6438356164383562, - "f1": 0.6438356164383562, - "fallOut": 0.013191273465246067, - "missRate": 0.3561643835616438, - "precision": 0.6438356164383562, + "accuracy": 0.5205479452054794, + "f1": 0.5205479452054794, + "fallOut": 0.017757483510908167, + "missRate": 0.4794520547945205, + "precision": 0.5205479452054794, "prevalence": 0.03571428571428571, - "recall": 0.6438356164383562, - "specificity": 0.9868087265347539 + "recall": 0.5205479452054794, + "specificity": 0.9822425164890918 }, "macroAvg": { - "accuracy": 0.9745596868884542, + "accuracy": 0.9657534246575343, "f1": null, - "fallOut": 0.022092799854683657, + "fallOut": 0.025875062762786567, "missRate": null, "precision": null, "prevalence": 0.03571428571428571, "recall": null, - "specificity": 0.9779072001453163 + "specificity": 0.9741249372372136 }, "results": { "blog": { - "total": 0, - "samplePortion": 0, + "total": 1, + "samplePortion": 0.0136986301369863, "tp": 0, "fp": 0, - "fn": 0, - "tn": 73, - "accuracy": 1, + "fn": 1, + "tn": 72, + "accuracy": 0.9863013698630136, "f1": null, "fallOut": 0, - "missRate": null, + "missRate": 1, "precision": null, - "prevalence": 0, - "recall": null, + "prevalence": 0.0136986301369863, + "recall": 0, "specificity": 1, - "confusionMatrix": [[0, 0], [0, 73]] + "confusionMatrix": [[0, 0], [1, 72]] }, "bug": { - "total": 2, - "samplePortion": 0.0273972602739726, - "tp": 2, - "fp": 1, - "fn": 0, + "total": 3, + "samplePortion": 0.0410958904109589, + "tp": 1, + "fp": 0, + "fn": 2, "tn": 70, - "accuracy": 0.9863013698630136, - "f1": 0.8, - "fallOut": 0.014084507042253521, - "missRate": 0, - "precision": 0.6666666666666666, - "prevalence": 0.0273972602739726, - "recall": 1, - "specificity": 0.9859154929577465, - "confusionMatrix": [[2, 1], [0, 70]] + "accuracy": 0.9726027397260274, + "f1": 0.5, + "fallOut": 0, + "missRate": 0.6666666666666666, + "precision": 1, + "prevalence": 0.0410958904109589, + "recall": 0.3333333333333333, + "specificity": 1, + "confusionMatrix": [[1, 0], [2, 70]] }, "business": { "total": 1, @@ -105,23 +105,40 @@ "confusionMatrix": [[0, 0], [1, 72]] }, "code": { - "total": 9, - "samplePortion": 0.1232876712328767, - "tp": 5, - "fp": 1, + "total": 6, + "samplePortion": 0.0821917808219178, + "tp": 2, + "fp": 2, "fn": 4, - "tn": 63, - "accuracy": 0.9315068493150684, - "f1": 0.6666666666666667, - "fallOut": 0.015625, - "missRate": 0.4444444444444444, - "precision": 0.8333333333333334, - "prevalence": 0.1232876712328767, - "recall": 0.5555555555555556, - "specificity": 0.984375, - "confusionMatrix": [[5, 1], [4, 63]] + "tn": 65, + "accuracy": 0.9178082191780822, + "f1": 0.4, + "fallOut": 0.029850746268656716, + "missRate": 0.6666666666666666, + "precision": 0.5, + "prevalence": 0.0821917808219178, + "recall": 0.3333333333333333, + "specificity": 0.9701492537313433, + "confusionMatrix": [[2, 2], [4, 65]] }, "content": { + "total": 1, + "samplePortion": 0.0136986301369863, + "tp": 0, + "fp": 0, + "fn": 1, + "tn": 72, + "accuracy": 0.9863013698630136, + "f1": null, + "fallOut": 0, + "missRate": 1, + "precision": null, + "prevalence": 0.0136986301369863, + "recall": 0, + "specificity": 1, + "confusionMatrix": [[0, 0], [1, 72]] + }, + "design": { "total": 0, "samplePortion": 0, "tp": 0, @@ -138,41 +155,41 @@ "specificity": 1, "confusionMatrix": [[0, 0], [0, 73]] }, - "design": { - "total": 1, - "samplePortion": 0.0136986301369863, - "tp": 0, + "doc": { + "total": 4, + "samplePortion": 0.0547945205479452, + "tp": 3, "fp": 0, "fn": 1, - "tn": 72, + "tn": 69, "accuracy": 0.9863013698630136, - "f1": null, + "f1": 0.8571428571428571, "fallOut": 0, - "missRate": 1, - "precision": null, - "prevalence": 0.0136986301369863, - "recall": 0, + "missRate": 0.25, + "precision": 1, + "prevalence": 0.0547945205479452, + "recall": 0.75, "specificity": 1, - "confusionMatrix": [[0, 0], [1, 72]] + "confusionMatrix": [[3, 0], [1, 69]] }, - "doc": { - "total": 3, - "samplePortion": 0.0410958904109589, - "tp": 2, + "eventOrganizing": { + "total": 0, + "samplePortion": 0, + "tp": 0, "fp": 0, - "fn": 1, - "tn": 70, - "accuracy": 0.9863013698630136, - "f1": 0.8, + "fn": 0, + "tn": 73, + "accuracy": 1, + "f1": null, "fallOut": 0, - "missRate": 0.3333333333333333, - "precision": 1, - "prevalence": 0.0410958904109589, - "recall": 0.6666666666666666, + "missRate": null, + "precision": null, + "prevalence": 0, + "recall": null, "specificity": 1, - "confusionMatrix": [[2, 0], [1, 70]] + "confusionMatrix": [[0, 0], [0, 73]] }, - "eventOrganizing": { + "example": { "total": 1, "samplePortion": 0.0136986301369863, "tp": 0, @@ -189,39 +206,22 @@ "specificity": 1, "confusionMatrix": [[0, 0], [1, 72]] }, - "example": { + "financial": { "total": 1, "samplePortion": 0.0136986301369863, - "tp": 1, - "fp": 1, - "fn": 0, - "tn": 71, - "accuracy": 0.9863013698630136, - "f1": 0.6666666666666666, - "fallOut": 0.013888888888888888, - "missRate": 0, - "precision": 0.5, - "prevalence": 0.0136986301369863, - "recall": 1, - "specificity": 0.9861111111111112, - "confusionMatrix": [[1, 1], [0, 71]] - }, - "financial": { - "total": 0, - "samplePortion": 0, "tp": 0, "fp": 0, - "fn": 0, - "tn": 73, - "accuracy": 1, + "fn": 1, + "tn": 72, + "accuracy": 0.9863013698630136, "f1": null, "fallOut": 0, - "missRate": null, + "missRate": 1, "precision": null, - "prevalence": 0, - "recall": null, + "prevalence": 0.0136986301369863, + "recall": 0, "specificity": 1, - "confusionMatrix": [[0, 0], [0, 73]] + "confusionMatrix": [[0, 0], [1, 72]] }, "fundingFinding": { "total": 0, @@ -241,23 +241,6 @@ "confusionMatrix": [[0, 0], [0, 73]] }, "ideas": { - "total": 4, - "samplePortion": 0.0547945205479452, - "tp": 1, - "fp": 0, - "fn": 3, - "tn": 69, - "accuracy": 0.958904109589041, - "f1": 0.4, - "fallOut": 0, - "missRate": 0.75, - "precision": 1, - "prevalence": 0.0547945205479452, - "recall": 0.25, - "specificity": 1, - "confusionMatrix": [[1, 0], [3, 69]] - }, - "infra": { "total": 1, "samplePortion": 0.0136986301369863, "tp": 0, @@ -274,75 +257,75 @@ "specificity": 1, "confusionMatrix": [[0, 0], [1, 72]] }, - "maintenance": { - "total": 3, - "samplePortion": 0.0410958904109589, - "tp": 1, + "infra": { + "total": 6, + "samplePortion": 0.0821917808219178, + "tp": 3, "fp": 0, - "fn": 2, - "tn": 70, - "accuracy": 0.9726027397260274, - "f1": 0.5, + "fn": 3, + "tn": 67, + "accuracy": 0.958904109589041, + "f1": 0.6666666666666666, "fallOut": 0, - "missRate": 0.6666666666666666, + "missRate": 0.5, "precision": 1, - "prevalence": 0.0410958904109589, - "recall": 0.3333333333333333, + "prevalence": 0.0821917808219178, + "recall": 0.5, "specificity": 1, - "confusionMatrix": [[1, 0], [2, 70]] + "confusionMatrix": [[3, 0], [3, 67]] + }, + "maintenance": { + "total": 4, + "samplePortion": 0.0547945205479452, + "tp": 1, + "fp": 1, + "fn": 3, + "tn": 68, + "accuracy": 0.9452054794520548, + "f1": 0.3333333333333333, + "fallOut": 0.014492753623188406, + "missRate": 0.75, + "precision": 0.5, + "prevalence": 0.0547945205479452, + "recall": 0.25, + "specificity": 0.9855072463768116, + "confusionMatrix": [[1, 1], [3, 68]] }, "null": { - "total": 33, - "samplePortion": 0.4520547945205479, - "tp": 31, - "fp": 23, + "total": 27, + "samplePortion": 0.3698630136986301, + "tp": 25, + "fp": 30, "fn": 2, - "tn": 17, - "accuracy": 0.6575342465753424, - "f1": 0.7126436781609197, - "fallOut": 0.575, - "missRate": 0.06060606060606061, - "precision": 0.5740740740740741, - "prevalence": 0.4520547945205479, - "recall": 0.9393939393939394, - "specificity": 0.425, - "confusionMatrix": [[31, 23], [2, 17]] + "tn": 16, + "accuracy": 0.5616438356164384, + "f1": 0.6097560975609756, + "fallOut": 0.6521739130434783, + "missRate": 0.07407407407407407, + "precision": 0.45454545454545453, + "prevalence": 0.3698630136986301, + "recall": 0.9259259259259259, + "specificity": 0.34782608695652173, + "confusionMatrix": [[25, 30], [2, 16]] }, "platform": { - "total": 5, - "samplePortion": 0.0684931506849315, - "tp": 2, + "total": 7, + "samplePortion": 0.0958904109589041, + "tp": 1, "fp": 0, - "fn": 3, - "tn": 68, - "accuracy": 0.958904109589041, - "f1": 0.5714285714285715, + "fn": 6, + "tn": 66, + "accuracy": 0.9178082191780822, + "f1": 0.25, "fallOut": 0, - "missRate": 0.6, + "missRate": 0.8571428571428571, "precision": 1, - "prevalence": 0.0684931506849315, - "recall": 0.4, + "prevalence": 0.0958904109589041, + "recall": 0.14285714285714285, "specificity": 1, - "confusionMatrix": [[2, 0], [3, 68]] + "confusionMatrix": [[1, 0], [6, 66]] }, "plugin": { - "total": 0, - "samplePortion": 0, - "tp": 0, - "fp": 0, - "fn": 0, - "tn": 73, - "accuracy": 1, - "f1": null, - "fallOut": 0, - "missRate": null, - "precision": null, - "prevalence": 0, - "recall": null, - "specificity": 1, - "confusionMatrix": [[0, 0], [0, 73]] - }, - "projectManagement": { "total": 1, "samplePortion": 0.0136986301369863, "tp": 0, @@ -359,22 +342,39 @@ "specificity": 1, "confusionMatrix": [[0, 0], [1, 72]] }, + "projectManagement": { + "total": 0, + "samplePortion": 0, + "tp": 0, + "fp": 0, + "fn": 0, + "tn": 73, + "accuracy": 1, + "f1": null, + "fallOut": 0, + "missRate": null, + "precision": null, + "prevalence": 0, + "recall": null, + "specificity": 1, + "confusionMatrix": [[0, 0], [0, 73]] + }, "question": { - "total": 1, - "samplePortion": 0.0136986301369863, - "tp": 1, + "total": 0, + "samplePortion": 0, + "tp": 0, "fp": 0, "fn": 0, - "tn": 72, + "tn": 73, "accuracy": 1, - "f1": 1, + "f1": null, "fallOut": 0, - "missRate": 0, - "precision": 1, - "prevalence": 0.0136986301369863, - "recall": 1, + "missRate": null, + "precision": null, + "prevalence": 0, + "recall": null, "specificity": 1, - "confusionMatrix": [[1, 0], [0, 72]] + "confusionMatrix": [[0, 0], [0, 73]] }, "review": { "total": 0, @@ -394,21 +394,21 @@ "confusionMatrix": [[0, 0], [0, 73]] }, "security": { - "total": 1, - "samplePortion": 0.0136986301369863, + "total": 2, + "samplePortion": 0.0273972602739726, "tp": 1, "fp": 0, - "fn": 0, - "tn": 72, - "accuracy": 1, - "f1": 1, + "fn": 1, + "tn": 71, + "accuracy": 0.9863013698630136, + "f1": 0.6666666666666666, "fallOut": 0, - "missRate": 0, + "missRate": 0.5, "precision": 1, - "prevalence": 0.0136986301369863, - "recall": 1, + "prevalence": 0.0273972602739726, + "recall": 0.5, "specificity": 1, - "confusionMatrix": [[1, 0], [0, 72]] + "confusionMatrix": [[1, 0], [1, 71]] }, "talk": { "total": 0, @@ -430,19 +430,19 @@ "test": { "total": 3, "samplePortion": 0.0410958904109589, - "tp": 0, - "fp": 0, - "fn": 3, - "tn": 70, + "tp": 1, + "fp": 1, + "fn": 2, + "tn": 69, "accuracy": 0.958904109589041, - "f1": null, - "fallOut": 0, - "missRate": 1, - "precision": null, + "f1": 0.4, + "fallOut": 0.014285714285714285, + "missRate": 0.6666666666666666, + "precision": 0.5, "prevalence": 0.0410958904109589, - "recall": 0, - "specificity": 1, - "confusionMatrix": [[0, 0], [3, 70]] + "recall": 0.3333333333333333, + "specificity": 0.9857142857142858, + "confusionMatrix": [[1, 1], [2, 69]] }, "tool": { "total": 2, @@ -462,40 +462,23 @@ "confusionMatrix": [[0, 0], [2, 71]] }, "translation": { - "total": 0, - "samplePortion": 0, + "total": 1, + "samplePortion": 0.0136986301369863, "tp": 0, "fp": 0, - "fn": 0, - "tn": 73, - "accuracy": 1, + "fn": 1, + "tn": 72, + "accuracy": 0.9863013698630136, "f1": null, "fallOut": 0, - "missRate": null, + "missRate": 1, "precision": null, - "prevalence": 0, - "recall": null, + "prevalence": 0.0136986301369863, + "recall": 0, "specificity": 1, - "confusionMatrix": [[0, 0], [0, 73]] + "confusionMatrix": [[0, 0], [1, 72]] }, "tutorial": { - "total": 0, - "samplePortion": 0, - "tp": 0, - "fp": 0, - "fn": 0, - "tn": 73, - "accuracy": 1, - "f1": null, - "fallOut": 0, - "missRate": null, - "precision": null, - "prevalence": 0, - "recall": null, - "specificity": 1, - "confusionMatrix": [[0, 0], [0, 73]] - }, - "userTesting": { "total": 1, "samplePortion": 0.0136986301369863, "tp": 0, @@ -512,6 +495,23 @@ "specificity": 1, "confusionMatrix": [[0, 0], [1, 72]] }, + "userTesting": { + "total": 0, + "samplePortion": 0, + "tp": 0, + "fp": 1, + "fn": 0, + "tn": 72, + "accuracy": 0.9863013698630136, + "f1": null, + "fallOut": 0.0136986301369863, + "missRate": null, + "precision": 0, + "prevalence": 0, + "recall": null, + "specificity": 0.9863013698630136, + "confusionMatrix": [[0, 1], [0, 72]] + }, "video": { "total": 0, "samplePortion": 0, diff --git a/playground/playground.js b/playground/playground.js index e81ca5c..d737fb0 100644 --- a/playground/playground.js +++ b/playground/playground.js @@ -11,11 +11,11 @@ if (existsSync('playground-learner.json') && !process.env.DRY) { } else learner = new Learner() //Or use a fresh one // Cross-validated training on the training/validation sets -const {microAvg} = learner.crossValidate(5) +const {microAvg} = learner.crossValidate(5, 0, true) const jsonData = learner.toJSON() console.log('micro avg:', microAvg) // Evaluation time -const longStats = learner.eval() +const longStats = learner.eval(process.env.VERBOSE) const stats = learner.confusionMatrix.getShortStats() console.log('\nShort stats=\n', stats) diff --git a/src/index.js b/src/index.js index cac2b4e..c00c20d 100644 --- a/src/index.js +++ b/src/index.js @@ -3,6 +3,7 @@ const serialize = require('serialization') const tvts = require('tvt-split') const {Spinner} = require('clui') const {PrecisionRecall, partitions, test} = require('limdu').utils +const {use, succ, error, info} = require('nclr/symbols') const labelDS = require('./conv')('io') const classifierBuilder = require('./classifier') const categories = require('./categories') @@ -80,10 +81,11 @@ class Learner { /** * @memberof Learner + * @param {boolean} [log=false] Log events * @returns {Object} Statistics from a confusion matrix * @public */ - eval() { + eval(log = false) { spinner.message('Evaluating...') spinner.start() const actual = [] @@ -92,8 +94,20 @@ class Learner { let idx = 0 for (const data of this.testSet) { const predictions = this.classify(data.input) + const guess = predictions.length ? predictions[0] : 'null' actual.push(data.output) - predicted.push(predictions.length ? predictions[0] : 'null') //Ignores the rest (as it only wants one guess) + predicted.push(guess) //Ignores the rest (as it only wants one guess) + if (log) { + if (guess === data.output) + succ(`Classified "${data.input}" as "${guess}"`) + else + error( + `Classified "${data.input}" as "${guess}" instead of "${use( + 'info', + data.output, + )}"`, + ) + } spinner.message( `Evaluating instances (${Math.round((idx++ / len) * 10000) / 100}%)`, ) @@ -103,7 +117,10 @@ class Learner { predicted, categories, ) - // spinner.message('Evaluation complete') + + const completeMsg = 'Evaluation complete' + //eslint-disable-next-line babel/no-unused-expressions + log ? succ(completeMsg) : spinner.message(completeMsg) spinner.stop() return this.confusionMatrix.getStats() } @@ -171,7 +188,7 @@ class Learner { /** * @param {number} [numOfFolds=5] Cross-validation folds - * @param {number} [verboseLevel=0] Verbosity + * @param {number} [verboseLevel=0] Verbosity level on limdu's explainations * @param {boolean} [log=false] Pre-training logging * @returns {{microAvg: Object, macroAvg: Object}} Averages * @memberof Learner @@ -198,11 +215,14 @@ class Learner { this.macroAvg = new PrecisionRecall() this.microAvg = new PrecisionRecall() const set = [...this.trainSet, ...this.validationSet] + let fold = 0 partitions.partitions(set, numOfFolds, (trainSet, validationSet) => { - const status = `Training on ${trainSet.length} samples, testing ${validationSet.length} samples` + const status = `Fold #${fold++}\nTraining on ${ + trainSet.length + } samples, testing ${validationSet.length} samples` //eslint-disable-next-line babel/no-unused-expressions - log ? process.stdout.write(status) : spinner.message(status) + log ? info(status) : spinner.message(status) this.train(trainSet) test( this.classifier, @@ -212,10 +232,12 @@ class Learner { this.macroAvg, ) }) - spinner.message('Calculating stats') + spinner.message('Calculating stats...') this.macroAvg.calculateMacroAverageStats(numOfFolds) this.microAvg.calculateStats() - // spinner.message('Cross-validation complete') + const completeMsg = 'Cross-validation complete' + //eslint-disable-next-line babel/no-unused-expressions + log ? succ(completeMsg) : spinner.message(completeMsg) spinner.stop() return { macroAvg: this.macroAvg.fullStats(), //preferable in 2-class settings or in balanced multi-class settings diff --git a/yarn.lock b/yarn.lock index fc9f645..efa6421 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1061,6 +1061,35 @@ exec-sh "^0.3.2" minimist "^1.2.0" +"@commitlint/execute-rule@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-8.1.0.tgz#e8386bd0836b3dcdd41ebb9d5904bbeb447e4715" + integrity sha512-+vpH3RFuO6ypuCqhP2rSqTjFTQ7ClzXtUvXphpROv9v9+7zH4L+Ex+wZLVkL8Xj2cxefSLn/5Kcqa9XyJTn3kg== + +"@commitlint/load@>6.1.1": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-8.1.0.tgz#63b72ae5bb9152b8fa5b17c5428053032a9a49c8" + integrity sha512-ra02Dvmd7Gp1+uFLzTY3yGOpHjPzl5T9wYg/xrtPJNiOWXvQ0Mw7THw+ucd1M5iLUWjvdavv2N87YDRc428wHg== + dependencies: + "@commitlint/execute-rule" "^8.1.0" + "@commitlint/resolve-extends" "^8.1.0" + babel-runtime "^6.23.0" + chalk "2.4.2" + cosmiconfig "^5.2.0" + lodash "4.17.14" + resolve-from "^5.0.0" + +"@commitlint/resolve-extends@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-8.1.0.tgz#ed67f2ee484160ac8e0078bae52f172625157472" + integrity sha512-r/y+CeKW72Oa9BUctS1+I/MFCDiI3lfhwfQ65Tpfn6eZ4CuBYKzrCRi++GTHeAFKE3y8q1epJq5Rl/1GBejtBw== + dependencies: + "@types/node" "^12.0.2" + import-fresh "^3.0.0" + lodash "4.17.14" + resolve-from "^5.0.0" + resolve-global "^1.0.0" + "@jest/console@^24.7.1": version "24.7.1" resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.7.1.tgz#32a9e42535a97aedfe037e725bd67e954b459545" @@ -1490,7 +1519,7 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/node@*", "@types/node@^12.0.10": +"@types/node@*", "@types/node@^12.0.10", "@types/node@^12.0.2": version "12.6.8" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.6.8.tgz#e469b4bf9d1c9832aee4907ba8a051494357c12c" integrity sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg== @@ -2281,6 +2310,14 @@ babel-preset-jest@^24.6.0: "@babel/plugin-syntax-object-rest-spread" "^7.0.0" babel-plugin-jest-hoist "^24.6.0" +babel-runtime@^6.23.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + babelify@^10.0.0: version "10.0.0" resolved "https://registry.yarnpkg.com/babelify/-/babelify-10.0.0.tgz#fe73b1a22583f06680d8d072e25a1e0d1d1d7fb5" @@ -2676,6 +2713,11 @@ cached-path-relative@^1.0.0: resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.2.tgz#a13df4196d26776220cc3356eb147a52dba2c6db" integrity sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg== +cachedir@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.2.0.tgz#19afa4305e05d79e417566882e0c8f960f62ff0e" + integrity sha512-VvxA0xhNqIIfg0V9AmJkDg91DaJwryutH5rVEZAhcNi4iJFj9f+QxmAjgK1LT9I8OgToX27fypX6/MeCXVbBjQ== + call-limit@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/call-limit/-/call-limit-1.1.1.tgz#ef15f2670db3f1992557e2d965abc459e6e358d4" @@ -2772,6 +2814,15 @@ ccount@^1.0.0: resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.4.tgz#9cf2de494ca84060a2a8d2854edd6dfb0445f386" integrity sha512-fpZ81yYfzentuieinmGnphk0pLkOTMm6MZdVqwd77ROvhko6iujLNGrHH5E7utq3ygWklwfmwuG+A7P+NpqT6w== +chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.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== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + chalk@^1.0.0, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" @@ -2783,15 +2834,6 @@ chalk@^1.0.0, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.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== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - character-entities-html4@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.3.tgz#5ce6e01618e47048ac22f34f7f39db5c6fd679ef" @@ -3085,7 +3127,7 @@ colors@1.0.3: resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= -colors@^1.1.2: +colors@^1.1.2, colors@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" integrity sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg== @@ -3115,6 +3157,27 @@ commander@^2.11.0, commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, comma resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== +commitizen@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/commitizen/-/commitizen-4.0.3.tgz#c19a4213257d0525b85139e2f36db7cc3b4f6dae" + integrity sha512-lxu0F/Iq4dudoFeIl5pY3h3CQJzkmQuh3ygnaOvqhAD8Wu2pYBI17ofqSuPHNsBTEOh1r1AVa9kR4Hp0FAHKcQ== + dependencies: + cachedir "2.2.0" + cz-conventional-changelog "3.0.1" + dedent "0.7.0" + detect-indent "6.0.0" + find-node-modules "2.0.0" + find-root "1.1.0" + fs-extra "8.1.0" + glob "7.1.4" + inquirer "6.5.0" + is-utf8 "^0.2.1" + lodash "4.17.15" + minimist "1.2.0" + shelljs "0.7.6" + strip-bom "4.0.0" + strip-json-comments "3.0.1" + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -3307,6 +3370,11 @@ core-js-pure@3.1.4: resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.1.4.tgz#5fa17dc77002a169a3566cc48dc774d2e13e3769" integrity sha512-uJ4Z7iPNwiu1foygbcZYJsJs1jiXrTTCvxfLDXNhI/I+NHbSIEyr548y4fcsCEyWY0XgfAG/qqaunJ1SThHenA== +core-js@^2.4.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" + integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -3442,16 +3510,34 @@ cyclist@~0.2.2: resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= -cz-conventional-changelog@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-2.1.0.tgz#2f4bc7390e3244e4df293e6ba351e4c740a7c764" - integrity sha1-L0vHOQ4yROTfKT5ro1Hkx0Cnx2Q= +cz-conventional-changelog@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.0.1.tgz#b1f207ae050355e7ada65aad5c52e9de3d0c8e5b" + integrity sha512-7KASIwB8/ClEyCRvQrCPbN7WkQnUSjSSVNyPM+gDJ0jskLi8h8N2hrdpyeCk7fIqKMRzziqVSOBTB8yyLTMHGQ== + dependencies: + chalk "^2.4.1" + conventional-commit-types "^2.0.0" + lodash.map "^4.5.1" + longest "^2.0.1" + right-pad "^1.0.1" + word-wrap "^1.0.3" + optionalDependencies: + "@commitlint/load" ">6.1.1" + +cz-conventional-changelog@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.0.2.tgz#f6b9a406177ab07f9a3a087e06103a045b376260" + integrity sha512-MPxERbtQyVp0nnpCBiwzKGKmMBSswmCV3Jpef3Axqd5f3c/SOc6VFiSUlclOyZXBn3Xtf4snzt4O15hBTRb2gA== dependencies: + chalk "^2.4.1" + commitizen "^4.0.3" conventional-commit-types "^2.0.0" lodash.map "^4.5.1" - longest "^1.0.1" + longest "^2.0.1" right-pad "^1.0.1" word-wrap "^1.0.3" + optionalDependencies: + "@commitlint/load" ">6.1.1" d@1: version "1.0.1" @@ -3575,7 +3661,7 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= -dedent@^0.7.0: +dedent@0.7.0, dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= @@ -3700,6 +3786,16 @@ detab@^2.0.0: dependencies: repeat-string "^1.5.4" +detect-file@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= + +detect-indent@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" + integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== + detect-indent@~5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" @@ -4561,6 +4657,13 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= + dependencies: + homedir-polyfill "^1.0.1" + expect@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/expect/-/expect-24.8.0.tgz#471f8ec256b7b6129ca2524b2a62f030df38718d" @@ -4761,12 +4864,20 @@ find-cache-dir@^2.0.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-node-modules@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-2.0.0.tgz#5db1fb9e668a3d451db3d618cd167cdd59e41b69" + integrity sha512-8MWIBRgJi/WpjjfVXumjPKCtmQ10B+fjx6zmSA+770GMJirLhWIzg8l763rhjl9xaeaHbnxPNRQKq2mgMhr+aw== + dependencies: + findup-sync "^3.0.0" + merge "^1.2.1" + find-npm-prefix@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/find-npm-prefix/-/find-npm-prefix-1.0.2.tgz#8d8ce2c78b3b4b9e66c8acc6a37c231eb841cfdf" integrity sha512-KEftzJ+H90x6pcKtdXZEPsQse8/y/UnvzRKrOSQFprnrGaFuJ62fVkP34Iu2IYuMvyauCyoLTNkJZgrrGA2wkA== -find-root@^1.1.0: +find-root@1.1.0, find-root@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== @@ -4801,6 +4912,16 @@ find-versions@^3.0.0: array-uniq "^2.1.0" semver-regex "^2.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" + integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + flat-cache@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" @@ -4892,7 +5013,7 @@ from2@^2.1.0, from2@^2.3.0: inherits "^2.0.1" readable-stream "^2.0.0" -fs-extra@^8.0.0: +fs-extra@8.1.0, fs-extra@^8.0.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== @@ -5178,7 +5299,7 @@ glob-stream@^6.1.0: to-absolute-glob "^2.0.0" unique-stream "^2.0.2" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@7.1.4, glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: version "7.1.4" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== @@ -5190,13 +5311,33 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: once "^1.3.0" path-is-absolute "^1.0.0" -global-dirs@^0.1.0: +global-dirs@^0.1.0, global-dirs@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= dependencies: ini "^1.3.4" +global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + global@^4.3.2: version "4.4.0" resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" @@ -5466,6 +5607,13 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" +homedir-polyfill@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" + integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== + dependencies: + parse-passwd "^1.0.0" + hook-std@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/hook-std/-/hook-std-2.0.0.tgz#ff9aafdebb6a989a354f729bb6445cf4a3a7077c" @@ -5716,7 +5864,7 @@ init-package-json@^1.10.3: validate-npm-package-license "^3.0.1" validate-npm-package-name "^3.0.0" -inquirer@^6.2.2: +inquirer@6.5.0, inquirer@^6.2.2: version "6.5.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.0.tgz#2303317efc9a4ea7ec2e2df6f86569b734accf42" integrity sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA== @@ -7545,11 +7693,16 @@ lodash.without@~4.4.0: resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" integrity sha1-PNRXSgC2e643OpS3SHcmQFB7eqw= -lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.7.14: +lodash@4.17.14, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.7.14: version "4.17.14" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.14.tgz#9ce487ae66c96254fe20b599f21b6816028078ba" integrity sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw== +lodash@4.17.15: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + log-symbols@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" @@ -7578,10 +7731,10 @@ longest-streak@^2.0.1: resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.3.tgz#3de7a3f47ee18e9074ded8575b5c091f5d0a4105" integrity sha512-9lz5IVdpwsKLMzQi0MQ+oD9EA0mIGcWYP7jXMTZVXP8D42PwuAk+M/HBFYQoxt1G5OR8m7aSIgb1UymfWGBWEw== -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" - integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc= +longest@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-2.0.1.tgz#781e183296aa94f6d4d916dc335d0d17aefa23f8" + integrity sha1-eB4YMpaqlPbU2RbcM10NF676I/g= loose-envify@^1.0.0, loose-envify@^1.4.0: version "1.4.0" @@ -7917,7 +8070,12 @@ merge2@^1.2.3: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.5, micromatch@^3.1.8: +merge@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" + integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== + +micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.5, micromatch@^3.1.8: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -8016,7 +8174,7 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: +minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= @@ -8164,6 +8322,14 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +nclr@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/nclr/-/nclr-2.2.2.tgz#de4c5a4b7c50790c7738aca04067af386e37de08" + integrity sha512-HFmUrft6rQpZIu9sg1h+wZ7E8C5IK/5O19x3qam+XEgkb/qAmOJqaIrGkTjwxFQB5MgKbt1GyHnlbATuW7Eazw== + dependencies: + colors "^1.3.3" + figures "^2.0.0" + nconf@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/nconf/-/nconf-0.10.0.tgz#da1285ee95d0a922ca6cee75adcf861f48205ad2" @@ -9172,6 +9338,11 @@ parse-json@^5.0.0: json-parse-better-errors "^1.0.1" lines-and-columns "^1.1.6" +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= + parse-path@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-3.0.4.tgz#a48b7b529da41f34d9d1428602a39b29fc7180e4" @@ -9951,6 +10122,13 @@ realpath-native@^1.1.0: dependencies: util.promisify "^1.0.0" +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= + dependencies: + resolve "^1.1.6" + redent@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" @@ -9978,6 +10156,11 @@ regenerate@^1.4.0: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== + regenerator-runtime@^0.13.2: version "0.13.2" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz#32e59c9a6fb9b1a4aff09b4930ca2d4477343447" @@ -10260,6 +10443,14 @@ resolve-cwd@^2.0.0: dependencies: resolve-from "^3.0.0" +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + resolve-from@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" @@ -10275,6 +10466,13 @@ resolve-from@^5.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +resolve-global@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-global/-/resolve-global-1.0.0.tgz#a2a79df4af2ca3f49bf77ef9ddacd322dad19255" + integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw== + dependencies: + global-dirs "^0.1.1" + resolve-options@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" @@ -10292,7 +10490,7 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@^1.1.3, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: +resolve@^1.1.3, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: version "1.11.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== @@ -10706,6 +10904,15 @@ shebang-regex@^1.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= +shelljs@0.7.6: + version "0.7.6" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.6.tgz#379cccfb56b91c8601e4793356eb5382924de9ad" + integrity sha1-N5zM+1a5HIYB5HkzVutTgpJN6a0= + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + shellwords@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" @@ -10864,14 +11071,14 @@ snyk-mvn-plugin@2.3.1: lodash "^4.17.13" tslib "1.9.3" -snyk-nodejs-lockfile-parser@1.13.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.13.0.tgz#f3c81fd9a1870fdb5f71370e510d760326f3ee21" - integrity sha512-fC1o9SJ+iM+IYeBUYtvCIYh005WAvWMzqhEH3hI4zGPdCYQqGYIfVpXf29aCOKoorkTR345k5g6Etx54+BbrTQ== +snyk-nodejs-lockfile-parser@1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.15.0.tgz#836538d0214d2c5cb9621ab0a23146d1e8f12101" + integrity sha512-0Z41zCE8tsbc1QaEX0ZXwxh3TSOsS+BvsgnWZoZ7zZv9igCojEueQr+8Es/9Di8ol68ExmOEVD/ZOKAdG5Tgzg== dependencies: "@yarnpkg/lockfile" "^1.0.2" graphlib "^2.1.5" - lodash "^4.17.11" + lodash "^4.17.14" source-map-support "^0.5.7" tslib "^1.9.3" uuid "^3.3.2" @@ -10952,14 +11159,15 @@ snyk-resolve@1.0.1, snyk-resolve@^1.0.0, snyk-resolve@^1.0.1: debug "^3.1.0" then-fs "^2.0.0" -snyk-sbt-plugin@2.5.7: - version "2.5.7" - resolved "https://registry.yarnpkg.com/snyk-sbt-plugin/-/snyk-sbt-plugin-2.5.7.tgz#fb127619630906a081bbf2a75ea13b1141fd4906" - integrity sha512-nVGsYq/EZfSFzKaXJvUTqaf9phH5+EgZNN3ynN9Y54EO8Lh4Dljnd/gBIQzxHMI2joQDH4FMB3ojDZeiCkeQ1Q== +snyk-sbt-plugin@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/snyk-sbt-plugin/-/snyk-sbt-plugin-2.6.0.tgz#825010e960cd956f627b2788d538154b695a9f8a" + integrity sha512-a2NGX82rWkzGbgL9HZNACvGWR25SnPpCWw4aM+bDuSBYuWp/61oBz2DW1kI+pCP658FYjzDql7pmz0H+UPiwNA== dependencies: semver "^6.1.2" tmp "^0.1.0" tree-kill "^1.2.1" + tslib "^1.10.0" snyk-tree@^1.0.0: version "1.0.0" @@ -10978,10 +11186,10 @@ snyk-try-require@1.3.1, snyk-try-require@^1.1.1, snyk-try-require@^1.3.1: lru-cache "^4.0.0" then-fs "^2.0.0" -snyk@^1.193.1: - version "1.194.0" - resolved "https://registry.yarnpkg.com/snyk/-/snyk-1.194.0.tgz#caf93b549bee9e3b9e6cf051143d58963ffd57d6" - integrity sha512-wcon9W88WkjRBtlSTBVBkUqdelbu/1Af2Hy5KLh7Cq2QYfkGoyc7M0FgxVhMTN1nlL5BWG8CsK8Rr++h12aMPA== +snyk@^1.195.1: + version "1.198.0" + resolved "https://registry.yarnpkg.com/snyk/-/snyk-1.198.0.tgz#d1478bea6445779637d8f0944af87b6fadfcf827" + integrity sha512-BPSYjB/STm1QZHX/DmeHPzm7hJMLZTi31ZyusB3e/2vixGpOwf9PTn8sj+4qMG/TTEWF98RRWq03Xkz9CDuScw== dependencies: "@snyk/dep-graph" "1.10.0" "@snyk/gemfile" "1.2.0" @@ -11008,14 +11216,14 @@ snyk@^1.193.1: snyk-gradle-plugin "2.12.5" snyk-module "1.9.1" snyk-mvn-plugin "2.3.1" - snyk-nodejs-lockfile-parser "1.13.0" + snyk-nodejs-lockfile-parser "1.15.0" snyk-nuget-plugin "1.10.0" snyk-php-plugin "1.6.3" snyk-policy "1.13.5" snyk-python-plugin "1.10.2" snyk-resolve "1.0.1" snyk-resolve-deps "4.0.3" - snyk-sbt-plugin "2.5.7" + snyk-sbt-plugin "2.6.0" snyk-tree "^1.0.0" snyk-try-require "1.3.1" source-map-support "^0.5.11" @@ -11426,6 +11634,11 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" +strip-bom@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -11446,6 +11659,11 @@ 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@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" + integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== + strip-json-comments@^2.0.1, 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" @@ -11890,7 +12108,7 @@ tslib@1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== -tslib@^1, tslib@^1.9.0, tslib@^1.9.3: +tslib@^1, tslib@^1.10.0, tslib@^1.9.0, tslib@^1.9.3: version "1.10.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== @@ -11907,10 +12125,10 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" -tvt-split@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/tvt-split/-/tvt-split-1.0.0.tgz#24869d271146f240283765e3b97d035b2d38ec7c" - integrity sha512-MB/r16OFKzu5xP68CaB3HBk1Pudg6GE6LtSVxl2DopJp9Hiiw3qGIfJbwuOjJWiDDJqp3k7mCHjhgrME8rXBbQ== +tvt-split@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/tvt-split/-/tvt-split-1.0.2.tgz#b563250475266ca1f7f4d5ebead293e50ce26f10" + integrity sha512-K4fm7PQsIbFSRKDtYyxQ1p0XkAc2I9Ghl098i9UrLbBQrA6ghWBAde48AnNIpwiMtXhrytTW4n12X8LMcY2H5Q== dependencies: prando "^5.1.1" optionalDependencies: @@ -12609,7 +12827,7 @@ 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, which@^1.2.9, which@^1.3.0, which@^1.3.1: +which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==