├── .eslintrc.js ├── .gitignore ├── LICENSE ├── README.md ├── eslint-report.html ├── lint-file ├── test-rule-1.js ├── test-rule-2.js ├── test-rule-3.js ├── test-rule-4.js ├── test-rule-5.js └── test-rule.js ├── package.json ├── screenshoot-html.png ├── screenshoot-stylish.png ├── src ├── formatter.js ├── html-template-message.html ├── html-template-page.html ├── html-template-result.html └── stylish.js └── yarn.lock /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | node: true 6 | }, 7 | parserOptions: { 8 | parser: 'babel-eslint' 9 | }, 10 | extends: [ 11 | 'airbnb-base' 12 | ], 13 | // add your custom rules here 14 | rules: { 15 | 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', 16 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', 17 | 'no-unused-vars': 1, 18 | 'max-len': [ 19 | 'warn', 20 | { 21 | code: 400, 22 | ignoreComments: true, 23 | ignoreTrailingComments: true, 24 | ignoreUrls: true, 25 | ignoreStrings: true, 26 | ignoreTemplateLiterals: true, 27 | ignoreRegExpLiterals: true 28 | } 29 | ], 30 | 'prefer-destructuring': [ 31 | 'error', 32 | { 33 | AssignmentExpression: { 34 | array: false 35 | } 36 | }, 37 | { 38 | enforceForRenamedProperties: false 39 | } 40 | ] 41 | } 42 | }; 43 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (https://nodejs.org/api/addons.html) 33 | build/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # TypeScript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # Yarn Integrity file 55 | .yarn-integrity 56 | 57 | # dotenv environment variables file 58 | .env 59 | 60 | # next.js build output 61 | .next 62 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Irfan Maulana 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # eslint-formatter-html-extended 2 | 3 | 🌹 Beautiful ESLint HTML formatter extended from ESLint's official HTML formatter by [JulianLaval](https://github.com/JulianLaval) combined with Stylish by [Sindre Sorhus](https://github.com/sindresorhus) 4 | 5 | [![License](https://img.shields.io/github/license/mazipan/eslint-formatter-html-extended.svg?longCache=true)](https://github.com/mazipan/eslint-formatter-html-extended) [![version](https://img.shields.io/npm/v/eslint-formatter-html-extended.svg?maxAge=3600)](https://www.npmjs.com/package/eslint-formatter-html-extended) 6 | [![downloads](https://img.shields.io/npm/dt/eslint-formatter-html-extended.svg?maxAge=86400)](https://www.npmjs.com/package/eslint-formatter-html-extended) ![minified](https://badgen.net/bundlephobia/minzip/eslint-formatter-html-extended) 7 | 8 | ## Why you need this formatter 9 | 10 | With this formatter, you can generate HTML as report but still can see output in your terminal. 11 | 12 | Read the background story: 13 | 14 | + [in Bahasa Indonesia](https://mazipan.space/eslint-formatter-html-extended/?utm_source=readme) 15 | + [in English](https://mazipan.space/en/eslint-formatter-html-extended/?utm_source=readme) 16 | 17 | ## Output Report 18 | 19 | [preview here](http://htmlpreview.github.io/?https://github.com/mazipan/eslint-formatter-html-extended/blob/master/eslint-report.html) 20 | 21 | ## Screenshoot 22 | 23 | ![](screenshoot-html.png) 24 | 25 | ![](screenshoot-stylish.png) 26 | 27 | ## Installation 28 | 29 | ```bash 30 | $ yarn add eslint-formatter-html-extended -D 31 | # OR 32 | $ npm i eslint-formatter-html-extended --dev 33 | ``` 34 | 35 | ## Usage 36 | 37 | Refer to this [docs](https://eslint.org/docs/user-guide/formatters/), you just need to add parameter `-f nameFormatter -o nameFile`, e.g.: 38 | 39 | ```bash 40 | eslint --ext .js . -f node_modules/eslint-formatter-html-extended -o eslint-report.html 41 | ``` 42 | 43 | Or with shortcut name 44 | 45 | ```bash 46 | eslint --ext .js . -f html-extended -o eslint-report.html 47 | ``` 48 | 49 | ## Development 50 | 51 | ```bash 52 | # install dependencies 53 | $ yarn install 54 | 55 | # generate new output report 56 | $ yarn lint:test 57 | ``` 58 | 59 | 60 | --- 61 | 62 | Copyright © 2019 by Irfan Maulana 63 | 64 | -------------------------------------------------------------------------------- /eslint-report.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | ESLint HTML Report Extended 6 | 7 | 142 | 143 | 144 |
145 |

ESLint Report

146 |
147 |

36 problems (28 errors, 8 warnings)

148 | Generated on Fri Feb 15 2019 23:33:47 GMT+0700 (Western Indonesia Time) 149 |
150 |
151 |
152 |
153 | 154 | 155 | 156 |
157 | 158 | 159 | 160 | 170 | 171 | 172 | 173 | 176 | 177 | 180 | 181 | 182 | 183 | 184 | 187 | 188 | 191 | 192 | 193 | 194 | 204 | 205 | 206 | 207 | 210 | 211 | 214 | 215 | 216 | 217 | 218 | 221 | 222 | 225 | 226 | 227 | 228 | 229 | 232 | 233 | 236 | 237 | 238 | 239 | 249 | 250 | 251 | 252 | 255 | 256 | 259 | 260 | 261 | 262 | 263 | 266 | 267 | 270 | 271 | 272 | 273 | 274 | 277 | 278 | 281 | 282 | 283 | 284 | 294 | 295 | 296 | 297 | 307 | 308 | 309 | 310 | 313 | 314 | 317 | 318 | 319 | 320 | 321 | 324 | 325 | 328 | 329 | 330 | 331 | 332 | 335 | 336 | 339 | 340 | 341 | 342 | 343 | 346 | 347 | 350 | 351 | 352 | 353 | 354 | 357 | 358 | 361 | 362 | 363 | 364 | 365 | 368 | 369 | 372 | 373 | 374 | 375 | 376 | 379 | 380 | 383 | 384 | 385 | 386 | 387 | 390 | 391 | 394 | 395 | 396 | 397 | 398 | 401 | 402 | 405 | 406 | 407 | 408 | 409 | 412 | 413 | 416 | 417 | 418 | 419 | 420 | 423 | 424 | 427 | 428 | 429 | 430 | 431 | 434 | 435 | 438 | 439 | 440 | 441 | 442 | 445 | 446 | 449 | 450 | 451 | 452 | 453 | 456 | 457 | 460 | 461 | 462 | 463 | 473 | 474 | 475 | 476 | 479 | 480 | 483 | 484 | 485 | 486 | 487 | 490 | 491 | 494 | 495 | 496 | 497 | 498 | 501 | 502 | 505 | 506 | 507 | 508 | 509 | 512 | 513 | 516 | 517 | 518 | 519 | 520 | 523 | 524 | 527 | 528 | 529 | 530 | 531 | 534 | 535 | 538 | 539 | 540 | 541 | 542 | 545 | 546 | 549 | 550 | 551 | 552 | 553 | 556 | 557 | 560 | 561 | 562 | 563 | 564 | 567 | 568 | 571 | 572 | 573 | 574 | 575 | 578 | 579 | 582 | 583 | 584 | 585 | 586 | 589 | 590 | 593 | 594 | 595 | 596 | 597 | 600 | 601 | 604 | 605 | 606 | 607 | 608 | 611 | 612 | 615 | 616 | 617 | 618 | 619 | 622 | 623 | 626 | 627 | 628 | 629 |
161 | 162 | 163 | 164 | 165 | 166 | eslint-formatter-html-extended/lint-file/test-rule-1.js 167 | 168 | 2 problems (0 errors, 2 warnings) 169 |
195 | 196 | 197 | 198 | 199 | 200 | eslint-formatter-html-extended/lint-file/test-rule-2.js 201 | 202 | 3 problems (1 error, 2 warnings) 203 |
240 | 241 | 242 | 243 | 244 | 245 | eslint-formatter-html-extended/lint-file/test-rule-3.js 246 | 247 | 3 problems (1 error, 2 warnings) 248 |
285 | 286 | 287 | 288 | 289 | 290 | eslint-formatter-html-extended/lint-file/test-rule-4.js 291 | 292 | 0 problems 293 |
298 | 299 | 300 | 301 | 302 | 303 | eslint-formatter-html-extended/lint-file/test-rule-5.js 304 | 305 | 14 problems (13 errors, 1 warning) 306 |
464 | 465 | 466 | 467 | 468 | 469 | eslint-formatter-html-extended/lint-file/test-rule.js 470 | 471 | 14 problems (13 errors, 1 warning) 472 |
630 |
631 | 642 | 729 | 730 | 731 | 732 | -------------------------------------------------------------------------------- /lint-file/test-rule-1.js: -------------------------------------------------------------------------------- 1 | function addOne(a, b) { 2 | return a + b; 3 | } 4 | 5 | function multiply(a, b) { 6 | return a * b; 7 | } 8 | -------------------------------------------------------------------------------- /lint-file/test-rule-2.js: -------------------------------------------------------------------------------- 1 | function add(a, b) { 2 | return a + b; 3 | } 4 | 5 | function multiply(a, b) { 6 | return a * b; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /lint-file/test-rule-3.js: -------------------------------------------------------------------------------- 1 | function add(a, b) { 2 | return a + b; 3 | } 4 | 5 | function multiply(a, b) { 6 | return a * b; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /lint-file/test-rule-4.js: -------------------------------------------------------------------------------- 1 | function add(a, b) { 2 | return a + b; 3 | } 4 | 5 | function multiply(a, b) { 6 | return a * b; 7 | } 8 | 9 | add(5, 3); 10 | multiply(5, 3); 11 | -------------------------------------------------------------------------------- /lint-file/test-rule-5.js: -------------------------------------------------------------------------------- 1 | function addOne(i) { 2 | if (i != NaN) { 3 | return i ++ 4 | } else { 5 | return 6 | } 7 | }; -------------------------------------------------------------------------------- /lint-file/test-rule.js: -------------------------------------------------------------------------------- 1 | function addOne(i) { 2 | if (i != NaN) { 3 | return i ++ 4 | } else { 5 | return 6 | } 7 | }; -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eslint-formatter-html-extended", 3 | "version": "1.0.2", 4 | "description": "🌹 Beautiful ESLint HTML formatter extended from ESLint's official HTML formatter by JulianLaval combined with Stylish by Sindre Sorhus", 5 | "main": "src/formatter.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "lint": "./node_modules/.bin/eslint --ext .js ./src --fix", 9 | "lint:test": "./node_modules/.bin/eslint ./lint-file -f ./src/formatter.js -o eslint-report.html" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "git+https://github.com/mazipan/eslint-formatter-html-extended.git" 14 | }, 15 | "files": [ 16 | "src" 17 | ], 18 | "keywords": [ 19 | "eslint-formatter", 20 | "eslint-html-formatter", 21 | "eslint-reporter", 22 | "eslint-html-reporter", 23 | "eslintformatter", 24 | "eslintreporter" 25 | ], 26 | "author": "Irfan Maulana ", 27 | "license": "MIT", 28 | "bugs": { 29 | "url": "https://github.com/mazipan/eslint-formatter-html-extended/issues" 30 | }, 31 | "homepage": "https://github.com/mazipan/eslint-formatter-html-extended#readme", 32 | "dependencies": { 33 | "chalk": "^2.4.2", 34 | "lodash": "^4.17.11", 35 | "strip-ansi": "^5.0.0", 36 | "text-table": "^0.2.0" 37 | }, 38 | "devDependencies": { 39 | "eslint": "^5.13.0", 40 | "eslint-config-airbnb-base": "^13.1.0", 41 | "eslint-loader": "^2.1.2", 42 | "eslint-plugin-import": "^2.16.0", 43 | "eslint-plugin-node": "^8.0.1", 44 | "eslint-plugin-promise": "^4.0.1" 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /screenshoot-html.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mazipan/eslint-formatter-html-extended/f0bdbfee0feac9f58e5698d045d08b83a7f4af38/screenshoot-html.png -------------------------------------------------------------------------------- /screenshoot-stylish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mazipan/eslint-formatter-html-extended/f0bdbfee0feac9f58e5698d045d08b83a7f4af38/screenshoot-stylish.png -------------------------------------------------------------------------------- /src/formatter.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @fileoverview HTML reporter 3 | * @author Julian Laval 4 | */ 5 | 6 | const lodash = require('lodash'); 7 | const fs = require('fs'); 8 | const path = require('path'); 9 | const stylish = require('./stylish'); 10 | const icons = [ 11 | '', 12 | '', 13 | '' 14 | ] 15 | 16 | //------------------------------------------------------------------------------ 17 | // Helpers 18 | //------------------------------------------------------------------------------ 19 | 20 | const pageTemplate = lodash.template( 21 | fs.readFileSync(path.join(__dirname, 'html-template-page.html'), 'utf-8'), 22 | ); 23 | const messageTemplate = lodash.template( 24 | fs.readFileSync(path.join(__dirname, 'html-template-message.html'), 'utf-8'), 25 | ); 26 | const resultTemplate = lodash.template( 27 | fs.readFileSync(path.join(__dirname, 'html-template-result.html'), 'utf-8'), 28 | ); 29 | const projectSrc = path.resolve(__dirname).replace('eslint-formatter-html-extended/src', '') 30 | /** 31 | * Given a word and a count, append an s if count is not one. 32 | * @param {string} word A word in its singular form. 33 | * @param {int} count A number controlling whether word should be pluralized. 34 | * @returns {string} The original word with an s on the end if count is not one. 35 | */ 36 | function pluralize(word, count) { 37 | return count === 1 ? word : `${word}s`; 38 | } 39 | 40 | /** 41 | * Renders text along the template of x problems (x errors, x warnings) 42 | * @param {string} totalErrors Total errors 43 | * @param {string} totalWarnings Total warnings 44 | * @returns {string} The formatted string, pluralized where necessary 45 | */ 46 | function renderSummary(totalErrors, totalWarnings) { 47 | const totalProblems = totalErrors + totalWarnings; 48 | let renderedText = `${totalProblems} ${pluralize('problem', totalProblems)}`; 49 | 50 | if (totalProblems !== 0) { 51 | renderedText += ` (${totalErrors} ${pluralize( 52 | 'error', 53 | totalErrors, 54 | )}, ${totalWarnings} ${pluralize('warning', totalWarnings)})`; 55 | } 56 | return renderedText; 57 | } 58 | 59 | /** 60 | * Get the color based on whether there are errors/warnings... 61 | * @param {string} totalErrors Total errors 62 | * @param {string} totalWarnings Total warnings 63 | * @returns {int} The color code (0 = green, 1 = yellow, 2 = red) 64 | */ 65 | function renderColor(totalErrors, totalWarnings) { 66 | if (totalErrors !== 0) { 67 | return 2; 68 | } 69 | if (totalWarnings !== 0) { 70 | return 1; 71 | } 72 | return 0; 73 | } 74 | 75 | /** 76 | * Get HTML (table rows) describing the messages. 77 | * @param {Array} messages Messages. 78 | * @param {int} parentIndex Index of the parent HTML row. 79 | * @returns {string} HTML (table rows) describing the messages. 80 | */ 81 | function renderMessages(messages, parentIndex) { 82 | /** 83 | * Get HTML (table row) describing a message. 84 | * @param {Object} message Message. 85 | * @returns {string} HTML (table row) describing a message. 86 | */ 87 | return lodash 88 | .map(messages, (message) => { 89 | const lineNumber = message.line || 0; 90 | const columnNumber = message.column || 0; 91 | 92 | return messageTemplate({ 93 | parentIndex, 94 | lineNumber, 95 | columnNumber, 96 | severityNumber: message.severity, 97 | severityName: message.severity === 1 ? 'Warning' : 'Error', 98 | severityIcon: icons[message.severity], 99 | message: message.message, 100 | ruleId: message.ruleId, 101 | }); 102 | }) 103 | .join('\n'); 104 | } 105 | 106 | /** 107 | * @param {Array} results Test results. 108 | * @returns {string} HTML string describing the results. 109 | */ 110 | function renderResults(results) { 111 | return lodash 112 | .map(results, (result, index) => { 113 | const color = renderColor(result.errorCount, result.warningCount); 114 | 115 | return resultTemplate({ 116 | index, 117 | color, 118 | icon: icons[color], 119 | filePath: result.filePath.replace(projectSrc, ''), 120 | summary: renderSummary(result.errorCount, result.warningCount), 121 | }) + renderMessages(result.messages, index) 122 | }) 123 | .join('\n'); 124 | } 125 | 126 | //------------------------------------------------------------------------------ 127 | // Public Interface 128 | //------------------------------------------------------------------------------ 129 | 130 | // eslint-disable-next-line func-names 131 | module.exports = function (results) { 132 | let totalErrors; 133 | let totalWarnings; 134 | totalErrors = 0; 135 | totalWarnings = 0; 136 | 137 | // Iterate over results to get totals 138 | results.forEach((result) => { 139 | totalErrors += result.errorCount; 140 | totalWarnings += result.warningCount; 141 | }); 142 | 143 | const a = stylish(results); 144 | console.log(a); 145 | 146 | return pageTemplate({ 147 | date: new Date(), 148 | reportColor: renderColor(totalErrors, totalWarnings), 149 | reportSummary: renderSummary(totalErrors, totalWarnings), 150 | results: renderResults(results), 151 | }); 152 | }; 153 | -------------------------------------------------------------------------------- /src/html-template-message.html: -------------------------------------------------------------------------------- 1 | 2 | <%= lineNumber %>:<%= columnNumber %> 3 | 4 | <%= severityIcon %> 5 | 6 | <%- message %> 7 | 8 | <%= ruleId %> 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/html-template-page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | ESLint HTML Report Extended 6 | 7 | 142 | 143 | 144 |
145 |

ESLint Report

146 |
147 |

<%= reportSummary %>

148 | Generated on <%= date %> 149 |
150 |
151 |
152 |
153 | 154 | 155 | 156 |
157 | 158 | 159 | <%= results %> 160 | 161 |
162 |
163 | 174 | 261 | 262 | 263 | 264 | -------------------------------------------------------------------------------- /src/html-template-result.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | <%= icon %> 4 | 5 | 6 | 7 | 8 | <%- filePath %> 9 | 10 | <%- summary %> 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/stylish.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @fileoverview Stylish reporter 3 | * @author Sindre Sorhus 4 | */ 5 | 6 | 7 | const chalk = require('chalk'); 8 | const stripAnsi = require('strip-ansi'); 9 | const table = require('text-table'); 10 | 11 | //------------------------------------------------------------------------------ 12 | // Helpers 13 | //------------------------------------------------------------------------------ 14 | 15 | /** 16 | * Given a word and a count, append an s if count is not one. 17 | * @param {string} word A word in its singular form. 18 | * @param {int} count A number controlling whether word should be pluralized. 19 | * @returns {string} The original word with an s on the end if count is not one. 20 | */ 21 | function pluralize(word, count) { 22 | return (count === 1 ? word : `${word}s`); 23 | } 24 | 25 | //------------------------------------------------------------------------------ 26 | // Public Interface 27 | //------------------------------------------------------------------------------ 28 | 29 | // eslint-disable-next-line func-names 30 | module.exports = function (results) { 31 | let output = '\n'; 32 | 33 | 34 | let errorCount = 0; 35 | 36 | 37 | let warningCount = 0; 38 | 39 | 40 | let fixableErrorCount = 0; 41 | 42 | 43 | let fixableWarningCount = 0; 44 | 45 | 46 | let summaryColor = 'yellow'; 47 | 48 | results.forEach((result) => { 49 | const messages = result.messages; 50 | 51 | if (messages.length === 0) { 52 | return; 53 | } 54 | 55 | errorCount += result.errorCount; 56 | warningCount += result.warningCount; 57 | fixableErrorCount += result.fixableErrorCount; 58 | fixableWarningCount += result.fixableWarningCount; 59 | 60 | output += `${chalk.underline(result.filePath)}\n`; 61 | 62 | output += `${table( 63 | messages.map((message) => { 64 | let messageType; 65 | if (message.fatal || message.severity === 2) { 66 | messageType = chalk.red('error'); 67 | summaryColor = 'red'; 68 | } else { 69 | messageType = chalk.yellow('warning'); 70 | } 71 | return [ 72 | '', 73 | message.line || 0, 74 | message.column || 0, 75 | messageType, 76 | message.message.replace(/([^ ])\.$/, '$1'), 77 | chalk.dim(message.ruleId || ''), 78 | ]; 79 | }), 80 | { 81 | align: ['', 'r', 'l'], 82 | stringLength(str) { 83 | return stripAnsi(str).length; 84 | }, 85 | }, 86 | ).split('\n').map(el => el.replace(/(\d+)\s+(\d+)/, (m, p1, p2) => chalk.dim(`${p1}:${p2}`))).join('\n')}\n\n`; 87 | }); 88 | 89 | const total = errorCount + warningCount; 90 | 91 | if (total > 0) { 92 | output += chalk[summaryColor].bold([ 93 | '\u2716 ', total, pluralize(' problem', total), 94 | ' (', errorCount, pluralize(' error', errorCount), ', ', 95 | warningCount, pluralize(' warning', warningCount), ')\n', 96 | ].join('')); 97 | 98 | if (fixableErrorCount > 0 || fixableWarningCount > 0) { 99 | output += chalk[summaryColor].bold([ 100 | ' ', fixableErrorCount, pluralize(' error', fixableErrorCount), ' and ', 101 | fixableWarningCount, pluralize(' warning', fixableWarningCount), 102 | ' potentially fixable with the `--fix` option.\n', 103 | ].join('')); 104 | } 105 | } 106 | 107 | return total > 0 ? output : ''; 108 | }; 109 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0": 6 | version "7.0.0" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" 8 | integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/highlight@^7.0.0": 13 | version "7.0.0" 14 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" 15 | integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== 16 | dependencies: 17 | chalk "^2.0.0" 18 | esutils "^2.0.2" 19 | js-tokens "^4.0.0" 20 | 21 | acorn-jsx@^5.0.0: 22 | version "5.0.1" 23 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" 24 | integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== 25 | 26 | acorn@^6.0.2: 27 | version "6.4.2" 28 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" 29 | integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== 30 | 31 | ajv@^6.5.3, ajv@^6.9.1: 32 | version "6.9.1" 33 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.9.1.tgz#a4d3683d74abc5670e75f0b16520f70a20ea8dc1" 34 | integrity sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA== 35 | dependencies: 36 | fast-deep-equal "^2.0.1" 37 | fast-json-stable-stringify "^2.0.0" 38 | json-schema-traverse "^0.4.1" 39 | uri-js "^4.2.2" 40 | 41 | ansi-escapes@^3.2.0: 42 | version "3.2.0" 43 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" 44 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 45 | 46 | ansi-regex@^3.0.0: 47 | version "3.0.0" 48 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 49 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 50 | 51 | ansi-regex@^4.0.0: 52 | version "4.0.0" 53 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9" 54 | integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w== 55 | 56 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 57 | version "3.2.1" 58 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 59 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 60 | dependencies: 61 | color-convert "^1.9.0" 62 | 63 | argparse@^1.0.7: 64 | version "1.0.10" 65 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 66 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 67 | dependencies: 68 | sprintf-js "~1.0.2" 69 | 70 | astral-regex@^1.0.0: 71 | version "1.0.0" 72 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 73 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 74 | 75 | balanced-match@^1.0.0: 76 | version "1.0.0" 77 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 78 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 79 | 80 | big.js@^5.2.2: 81 | version "5.2.2" 82 | resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" 83 | integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== 84 | 85 | brace-expansion@^1.1.7: 86 | version "1.1.11" 87 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 88 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 89 | dependencies: 90 | balanced-match "^1.0.0" 91 | concat-map "0.0.1" 92 | 93 | callsites@^3.0.0: 94 | version "3.0.0" 95 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3" 96 | integrity sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw== 97 | 98 | chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2: 99 | version "2.4.2" 100 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 101 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 102 | dependencies: 103 | ansi-styles "^3.2.1" 104 | escape-string-regexp "^1.0.5" 105 | supports-color "^5.3.0" 106 | 107 | chardet@^0.7.0: 108 | version "0.7.0" 109 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" 110 | integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== 111 | 112 | circular-json@^0.3.1: 113 | version "0.3.3" 114 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" 115 | integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== 116 | 117 | cli-cursor@^2.1.0: 118 | version "2.1.0" 119 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 120 | integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= 121 | dependencies: 122 | restore-cursor "^2.0.0" 123 | 124 | cli-width@^2.0.0: 125 | version "2.2.0" 126 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" 127 | integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= 128 | 129 | color-convert@^1.9.0: 130 | version "1.9.3" 131 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 132 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 133 | dependencies: 134 | color-name "1.1.3" 135 | 136 | color-name@1.1.3: 137 | version "1.1.3" 138 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 139 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 140 | 141 | commondir@^1.0.1: 142 | version "1.0.1" 143 | resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 144 | integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= 145 | 146 | concat-map@0.0.1: 147 | version "0.0.1" 148 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 149 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 150 | 151 | contains-path@^0.1.0: 152 | version "0.1.0" 153 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 154 | integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= 155 | 156 | cross-spawn@^6.0.5: 157 | version "6.0.5" 158 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 159 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 160 | dependencies: 161 | nice-try "^1.0.4" 162 | path-key "^2.0.1" 163 | semver "^5.5.0" 164 | shebang-command "^1.2.0" 165 | which "^1.2.9" 166 | 167 | debug@^2.6.8, debug@^2.6.9: 168 | version "2.6.9" 169 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 170 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 171 | dependencies: 172 | ms "2.0.0" 173 | 174 | debug@^4.0.1: 175 | version "4.1.1" 176 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 177 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 178 | dependencies: 179 | ms "^2.1.1" 180 | 181 | deep-is@~0.1.3: 182 | version "0.1.3" 183 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 184 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 185 | 186 | define-properties@^1.1.2, define-properties@^1.1.3: 187 | version "1.1.3" 188 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 189 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 190 | dependencies: 191 | object-keys "^1.0.12" 192 | 193 | doctrine@1.5.0: 194 | version "1.5.0" 195 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 196 | integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= 197 | dependencies: 198 | esutils "^2.0.2" 199 | isarray "^1.0.0" 200 | 201 | doctrine@^2.1.0: 202 | version "2.1.0" 203 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" 204 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== 205 | dependencies: 206 | esutils "^2.0.2" 207 | 208 | emoji-regex@^7.0.1: 209 | version "7.0.3" 210 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 211 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 212 | 213 | emojis-list@^2.0.0: 214 | version "2.1.0" 215 | resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" 216 | integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= 217 | 218 | error-ex@^1.2.0: 219 | version "1.3.2" 220 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 221 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 222 | dependencies: 223 | is-arrayish "^0.2.1" 224 | 225 | es-abstract@^1.12.0: 226 | version "1.13.0" 227 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" 228 | integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== 229 | dependencies: 230 | es-to-primitive "^1.2.0" 231 | function-bind "^1.1.1" 232 | has "^1.0.3" 233 | is-callable "^1.1.4" 234 | is-regex "^1.0.4" 235 | object-keys "^1.0.12" 236 | 237 | es-to-primitive@^1.2.0: 238 | version "1.2.0" 239 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" 240 | integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== 241 | dependencies: 242 | is-callable "^1.1.4" 243 | is-date-object "^1.0.1" 244 | is-symbol "^1.0.2" 245 | 246 | escape-string-regexp@^1.0.5: 247 | version "1.0.5" 248 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 249 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 250 | 251 | eslint-config-airbnb-base@^13.1.0: 252 | version "13.1.0" 253 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz#b5a1b480b80dfad16433d6c4ad84e6605052c05c" 254 | integrity sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw== 255 | dependencies: 256 | eslint-restricted-globals "^0.1.1" 257 | object.assign "^4.1.0" 258 | object.entries "^1.0.4" 259 | 260 | eslint-import-resolver-node@^0.3.2: 261 | version "0.3.2" 262 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" 263 | integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== 264 | dependencies: 265 | debug "^2.6.9" 266 | resolve "^1.5.0" 267 | 268 | eslint-loader@^2.1.2: 269 | version "2.1.2" 270 | resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-2.1.2.tgz#453542a1230d6ffac90e4e7cb9cadba9d851be68" 271 | integrity sha512-rA9XiXEOilLYPOIInvVH5S/hYfyTPyxag6DZhoQOduM+3TkghAEQ3VcFO8VnX4J4qg/UIBzp72aOf/xvYmpmsg== 272 | dependencies: 273 | loader-fs-cache "^1.0.0" 274 | loader-utils "^1.0.2" 275 | object-assign "^4.0.1" 276 | object-hash "^1.1.4" 277 | rimraf "^2.6.1" 278 | 279 | eslint-module-utils@^2.3.0: 280 | version "2.3.0" 281 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.3.0.tgz#546178dab5e046c8b562bbb50705e2456d7bda49" 282 | integrity sha512-lmDJgeOOjk8hObTysjqH7wyMi+nsHwwvfBykwfhjR1LNdd7C2uFJBvx4OpWYpXOw4df1yE1cDEVd1yLHitk34w== 283 | dependencies: 284 | debug "^2.6.8" 285 | pkg-dir "^2.0.0" 286 | 287 | eslint-plugin-es@^1.3.1: 288 | version "1.4.0" 289 | resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" 290 | integrity sha512-XfFmgFdIUDgvaRAlaXUkxrRg5JSADoRC8IkKLc/cISeR3yHVMefFHQZpcyXXEUUPHfy5DwviBcrfqlyqEwlQVw== 291 | dependencies: 292 | eslint-utils "^1.3.0" 293 | regexpp "^2.0.1" 294 | 295 | eslint-plugin-import@^2.16.0: 296 | version "2.16.0" 297 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.16.0.tgz#97ac3e75d0791c4fac0e15ef388510217be7f66f" 298 | integrity sha512-z6oqWlf1x5GkHIFgrSvtmudnqM6Q60KM4KvpWi5ubonMjycLjndvd5+8VAZIsTlHC03djdgJuyKG6XO577px6A== 299 | dependencies: 300 | contains-path "^0.1.0" 301 | debug "^2.6.9" 302 | doctrine "1.5.0" 303 | eslint-import-resolver-node "^0.3.2" 304 | eslint-module-utils "^2.3.0" 305 | has "^1.0.3" 306 | lodash "^4.17.11" 307 | minimatch "^3.0.4" 308 | read-pkg-up "^2.0.0" 309 | resolve "^1.9.0" 310 | 311 | eslint-plugin-node@^8.0.1: 312 | version "8.0.1" 313 | resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-8.0.1.tgz#55ae3560022863d141fa7a11799532340a685964" 314 | integrity sha512-ZjOjbjEi6jd82rIpFSgagv4CHWzG9xsQAVp1ZPlhRnnYxcTgENUVBvhYmkQ7GvT1QFijUSo69RaiOJKhMu6i8w== 315 | dependencies: 316 | eslint-plugin-es "^1.3.1" 317 | eslint-utils "^1.3.1" 318 | ignore "^5.0.2" 319 | minimatch "^3.0.4" 320 | resolve "^1.8.1" 321 | semver "^5.5.0" 322 | 323 | eslint-plugin-promise@^4.0.1: 324 | version "4.0.1" 325 | resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz#2d074b653f35a23d1ba89d8e976a985117d1c6a2" 326 | integrity sha512-Si16O0+Hqz1gDHsys6RtFRrW7cCTB6P7p3OJmKp3Y3dxpQE2qwOA7d3xnV+0mBmrPoi0RBnxlCKvqu70te6wjg== 327 | 328 | eslint-restricted-globals@^0.1.1: 329 | version "0.1.1" 330 | resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" 331 | integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc= 332 | 333 | eslint-scope@^4.0.0: 334 | version "4.0.0" 335 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" 336 | integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== 337 | dependencies: 338 | esrecurse "^4.1.0" 339 | estraverse "^4.1.1" 340 | 341 | eslint-utils@^1.3.0, eslint-utils@^1.3.1: 342 | version "1.4.3" 343 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" 344 | integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== 345 | dependencies: 346 | eslint-visitor-keys "^1.1.0" 347 | 348 | eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: 349 | version "1.3.0" 350 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" 351 | integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== 352 | 353 | eslint@^5.13.0: 354 | version "5.13.0" 355 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.13.0.tgz#ce71cc529c450eed9504530939aa97527861ede9" 356 | integrity sha512-nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg== 357 | dependencies: 358 | "@babel/code-frame" "^7.0.0" 359 | ajv "^6.5.3" 360 | chalk "^2.1.0" 361 | cross-spawn "^6.0.5" 362 | debug "^4.0.1" 363 | doctrine "^2.1.0" 364 | eslint-scope "^4.0.0" 365 | eslint-utils "^1.3.1" 366 | eslint-visitor-keys "^1.0.0" 367 | espree "^5.0.0" 368 | esquery "^1.0.1" 369 | esutils "^2.0.2" 370 | file-entry-cache "^2.0.0" 371 | functional-red-black-tree "^1.0.1" 372 | glob "^7.1.2" 373 | globals "^11.7.0" 374 | ignore "^4.0.6" 375 | import-fresh "^3.0.0" 376 | imurmurhash "^0.1.4" 377 | inquirer "^6.1.0" 378 | js-yaml "^3.12.0" 379 | json-stable-stringify-without-jsonify "^1.0.1" 380 | levn "^0.3.0" 381 | lodash "^4.17.5" 382 | minimatch "^3.0.4" 383 | mkdirp "^0.5.1" 384 | natural-compare "^1.4.0" 385 | optionator "^0.8.2" 386 | path-is-inside "^1.0.2" 387 | progress "^2.0.0" 388 | regexpp "^2.0.1" 389 | semver "^5.5.1" 390 | strip-ansi "^4.0.0" 391 | strip-json-comments "^2.0.1" 392 | table "^5.0.2" 393 | text-table "^0.2.0" 394 | 395 | espree@^5.0.0: 396 | version "5.0.0" 397 | resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.0.tgz#fc7f984b62b36a0f543b13fb9cd7b9f4a7f5b65c" 398 | integrity sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA== 399 | dependencies: 400 | acorn "^6.0.2" 401 | acorn-jsx "^5.0.0" 402 | eslint-visitor-keys "^1.0.0" 403 | 404 | esprima@^4.0.0: 405 | version "4.0.1" 406 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 407 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 408 | 409 | esquery@^1.0.1: 410 | version "1.0.1" 411 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" 412 | integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== 413 | dependencies: 414 | estraverse "^4.0.0" 415 | 416 | esrecurse@^4.1.0: 417 | version "4.2.1" 418 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" 419 | integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== 420 | dependencies: 421 | estraverse "^4.1.0" 422 | 423 | estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1: 424 | version "4.2.0" 425 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 426 | integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= 427 | 428 | esutils@^2.0.2: 429 | version "2.0.2" 430 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 431 | integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= 432 | 433 | external-editor@^3.0.3: 434 | version "3.0.3" 435 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" 436 | integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== 437 | dependencies: 438 | chardet "^0.7.0" 439 | iconv-lite "^0.4.24" 440 | tmp "^0.0.33" 441 | 442 | fast-deep-equal@^2.0.1: 443 | version "2.0.1" 444 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" 445 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= 446 | 447 | fast-json-stable-stringify@^2.0.0: 448 | version "2.0.0" 449 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 450 | integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= 451 | 452 | fast-levenshtein@~2.0.4: 453 | version "2.0.6" 454 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 455 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 456 | 457 | figures@^2.0.0: 458 | version "2.0.0" 459 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 460 | integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= 461 | dependencies: 462 | escape-string-regexp "^1.0.5" 463 | 464 | file-entry-cache@^2.0.0: 465 | version "2.0.0" 466 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" 467 | integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= 468 | dependencies: 469 | flat-cache "^1.2.1" 470 | object-assign "^4.0.1" 471 | 472 | find-cache-dir@^0.1.1: 473 | version "0.1.1" 474 | resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" 475 | integrity sha1-yN765XyKUqinhPnjHFfHQumToLk= 476 | dependencies: 477 | commondir "^1.0.1" 478 | mkdirp "^0.5.1" 479 | pkg-dir "^1.0.0" 480 | 481 | find-up@^1.0.0: 482 | version "1.1.2" 483 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 484 | integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= 485 | dependencies: 486 | path-exists "^2.0.0" 487 | pinkie-promise "^2.0.0" 488 | 489 | find-up@^2.0.0, find-up@^2.1.0: 490 | version "2.1.0" 491 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 492 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 493 | dependencies: 494 | locate-path "^2.0.0" 495 | 496 | flat-cache@^1.2.1: 497 | version "1.3.4" 498 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz#2c2ef77525cc2929007dfffa1dd314aa9c9dee6f" 499 | integrity sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg== 500 | dependencies: 501 | circular-json "^0.3.1" 502 | graceful-fs "^4.1.2" 503 | rimraf "~2.6.2" 504 | write "^0.2.1" 505 | 506 | fs.realpath@^1.0.0: 507 | version "1.0.0" 508 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 509 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 510 | 511 | function-bind@^1.1.1: 512 | version "1.1.1" 513 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 514 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 515 | 516 | functional-red-black-tree@^1.0.1: 517 | version "1.0.1" 518 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 519 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= 520 | 521 | glob@^7.1.2, glob@^7.1.3: 522 | version "7.1.3" 523 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" 524 | integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== 525 | dependencies: 526 | fs.realpath "^1.0.0" 527 | inflight "^1.0.4" 528 | inherits "2" 529 | minimatch "^3.0.4" 530 | once "^1.3.0" 531 | path-is-absolute "^1.0.0" 532 | 533 | globals@^11.7.0: 534 | version "11.11.0" 535 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.11.0.tgz#dcf93757fa2de5486fbeed7118538adf789e9c2e" 536 | integrity sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw== 537 | 538 | graceful-fs@^4.1.2: 539 | version "4.1.15" 540 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" 541 | integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== 542 | 543 | has-flag@^3.0.0: 544 | version "3.0.0" 545 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 546 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 547 | 548 | has-symbols@^1.0.0: 549 | version "1.0.0" 550 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 551 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 552 | 553 | has@^1.0.1, has@^1.0.3: 554 | version "1.0.3" 555 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 556 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 557 | dependencies: 558 | function-bind "^1.1.1" 559 | 560 | hosted-git-info@^2.1.4: 561 | version "2.8.9" 562 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" 563 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== 564 | 565 | iconv-lite@^0.4.24: 566 | version "0.4.24" 567 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 568 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 569 | dependencies: 570 | safer-buffer ">= 2.1.2 < 3" 571 | 572 | ignore@^4.0.6: 573 | version "4.0.6" 574 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 575 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 576 | 577 | ignore@^5.0.2: 578 | version "5.0.5" 579 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.0.5.tgz#c663c548d6ce186fb33616a8ccb5d46e56bdbbf9" 580 | integrity sha512-kOC8IUb8HSDMVcYrDVezCxpJkzSQWTAzf3olpKM6o9rM5zpojx23O0Fl8Wr4+qJ6ZbPEHqf1fdwev/DS7v7pmA== 581 | 582 | import-fresh@^3.0.0: 583 | version "3.0.0" 584 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz#a3d897f420cab0e671236897f75bc14b4885c390" 585 | integrity sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ== 586 | dependencies: 587 | parent-module "^1.0.0" 588 | resolve-from "^4.0.0" 589 | 590 | imurmurhash@^0.1.4: 591 | version "0.1.4" 592 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 593 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 594 | 595 | inflight@^1.0.4: 596 | version "1.0.6" 597 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 598 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 599 | dependencies: 600 | once "^1.3.0" 601 | wrappy "1" 602 | 603 | inherits@2: 604 | version "2.0.3" 605 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 606 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 607 | 608 | inquirer@^6.1.0: 609 | version "6.2.2" 610 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.2.tgz#46941176f65c9eb20804627149b743a218f25406" 611 | integrity sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA== 612 | dependencies: 613 | ansi-escapes "^3.2.0" 614 | chalk "^2.4.2" 615 | cli-cursor "^2.1.0" 616 | cli-width "^2.0.0" 617 | external-editor "^3.0.3" 618 | figures "^2.0.0" 619 | lodash "^4.17.11" 620 | mute-stream "0.0.7" 621 | run-async "^2.2.0" 622 | rxjs "^6.4.0" 623 | string-width "^2.1.0" 624 | strip-ansi "^5.0.0" 625 | through "^2.3.6" 626 | 627 | is-arrayish@^0.2.1: 628 | version "0.2.1" 629 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 630 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 631 | 632 | is-callable@^1.1.4: 633 | version "1.1.4" 634 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 635 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 636 | 637 | is-date-object@^1.0.1: 638 | version "1.0.1" 639 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 640 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 641 | 642 | is-fullwidth-code-point@^2.0.0: 643 | version "2.0.0" 644 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 645 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 646 | 647 | is-promise@^2.1.0: 648 | version "2.1.0" 649 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 650 | integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= 651 | 652 | is-regex@^1.0.4: 653 | version "1.0.4" 654 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 655 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 656 | dependencies: 657 | has "^1.0.1" 658 | 659 | is-symbol@^1.0.2: 660 | version "1.0.2" 661 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 662 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 663 | dependencies: 664 | has-symbols "^1.0.0" 665 | 666 | isarray@^1.0.0: 667 | version "1.0.0" 668 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 669 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 670 | 671 | isexe@^2.0.0: 672 | version "2.0.0" 673 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 674 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 675 | 676 | js-tokens@^4.0.0: 677 | version "4.0.0" 678 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 679 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 680 | 681 | js-yaml@^3.12.0: 682 | version "3.14.1" 683 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" 684 | integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== 685 | dependencies: 686 | argparse "^1.0.7" 687 | esprima "^4.0.0" 688 | 689 | json-schema-traverse@^0.4.1: 690 | version "0.4.1" 691 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 692 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 693 | 694 | json-stable-stringify-without-jsonify@^1.0.1: 695 | version "1.0.1" 696 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 697 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= 698 | 699 | json5@^1.0.1: 700 | version "1.0.1" 701 | resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" 702 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 703 | dependencies: 704 | minimist "^1.2.0" 705 | 706 | levn@^0.3.0, levn@~0.3.0: 707 | version "0.3.0" 708 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 709 | integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= 710 | dependencies: 711 | prelude-ls "~1.1.2" 712 | type-check "~0.3.2" 713 | 714 | load-json-file@^2.0.0: 715 | version "2.0.0" 716 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 717 | integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= 718 | dependencies: 719 | graceful-fs "^4.1.2" 720 | parse-json "^2.2.0" 721 | pify "^2.0.0" 722 | strip-bom "^3.0.0" 723 | 724 | loader-fs-cache@^1.0.0: 725 | version "1.0.1" 726 | resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc" 727 | integrity sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw= 728 | dependencies: 729 | find-cache-dir "^0.1.1" 730 | mkdirp "0.5.1" 731 | 732 | loader-utils@^1.0.2: 733 | version "1.2.3" 734 | resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" 735 | integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== 736 | dependencies: 737 | big.js "^5.2.2" 738 | emojis-list "^2.0.0" 739 | json5 "^1.0.1" 740 | 741 | locate-path@^2.0.0: 742 | version "2.0.0" 743 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 744 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 745 | dependencies: 746 | p-locate "^2.0.0" 747 | path-exists "^3.0.0" 748 | 749 | lodash@^4.17.11, lodash@^4.17.5: 750 | version "4.17.21" 751 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 752 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 753 | 754 | mimic-fn@^1.0.0: 755 | version "1.2.0" 756 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" 757 | integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== 758 | 759 | minimatch@^3.0.4: 760 | version "3.0.4" 761 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 762 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 763 | dependencies: 764 | brace-expansion "^1.1.7" 765 | 766 | minimist@0.0.8: 767 | version "0.0.8" 768 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 769 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 770 | 771 | minimist@^1.2.0: 772 | version "1.2.0" 773 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 774 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 775 | 776 | mkdirp@0.5.1, mkdirp@^0.5.1: 777 | version "0.5.1" 778 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 779 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 780 | dependencies: 781 | minimist "0.0.8" 782 | 783 | ms@2.0.0: 784 | version "2.0.0" 785 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 786 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 787 | 788 | ms@^2.1.1: 789 | version "2.1.1" 790 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 791 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 792 | 793 | mute-stream@0.0.7: 794 | version "0.0.7" 795 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 796 | integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= 797 | 798 | natural-compare@^1.4.0: 799 | version "1.4.0" 800 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 801 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 802 | 803 | nice-try@^1.0.4: 804 | version "1.0.5" 805 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 806 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 807 | 808 | normalize-package-data@^2.3.2: 809 | version "2.5.0" 810 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" 811 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 812 | dependencies: 813 | hosted-git-info "^2.1.4" 814 | resolve "^1.10.0" 815 | semver "2 || 3 || 4 || 5" 816 | validate-npm-package-license "^3.0.1" 817 | 818 | object-assign@^4.0.1: 819 | version "4.1.1" 820 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 821 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 822 | 823 | object-hash@^1.1.4: 824 | version "1.3.1" 825 | resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz#fde452098a951cb145f039bb7d455449ddc126df" 826 | integrity sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA== 827 | 828 | object-keys@^1.0.11, object-keys@^1.0.12: 829 | version "1.1.0" 830 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032" 831 | integrity sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg== 832 | 833 | object.assign@^4.1.0: 834 | version "4.1.0" 835 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 836 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 837 | dependencies: 838 | define-properties "^1.1.2" 839 | function-bind "^1.1.1" 840 | has-symbols "^1.0.0" 841 | object-keys "^1.0.11" 842 | 843 | object.entries@^1.0.4: 844 | version "1.1.0" 845 | resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" 846 | integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== 847 | dependencies: 848 | define-properties "^1.1.3" 849 | es-abstract "^1.12.0" 850 | function-bind "^1.1.1" 851 | has "^1.0.3" 852 | 853 | once@^1.3.0: 854 | version "1.4.0" 855 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 856 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 857 | dependencies: 858 | wrappy "1" 859 | 860 | onetime@^2.0.0: 861 | version "2.0.1" 862 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 863 | integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= 864 | dependencies: 865 | mimic-fn "^1.0.0" 866 | 867 | optionator@^0.8.2: 868 | version "0.8.2" 869 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 870 | integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= 871 | dependencies: 872 | deep-is "~0.1.3" 873 | fast-levenshtein "~2.0.4" 874 | levn "~0.3.0" 875 | prelude-ls "~1.1.2" 876 | type-check "~0.3.2" 877 | wordwrap "~1.0.0" 878 | 879 | os-tmpdir@~1.0.2: 880 | version "1.0.2" 881 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 882 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 883 | 884 | p-limit@^1.1.0: 885 | version "1.3.0" 886 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" 887 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 888 | dependencies: 889 | p-try "^1.0.0" 890 | 891 | p-locate@^2.0.0: 892 | version "2.0.0" 893 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 894 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 895 | dependencies: 896 | p-limit "^1.1.0" 897 | 898 | p-try@^1.0.0: 899 | version "1.0.0" 900 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" 901 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 902 | 903 | parent-module@^1.0.0: 904 | version "1.0.0" 905 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.0.tgz#df250bdc5391f4a085fb589dad761f5ad6b865b5" 906 | integrity sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA== 907 | dependencies: 908 | callsites "^3.0.0" 909 | 910 | parse-json@^2.2.0: 911 | version "2.2.0" 912 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 913 | integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= 914 | dependencies: 915 | error-ex "^1.2.0" 916 | 917 | path-exists@^2.0.0: 918 | version "2.1.0" 919 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 920 | integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= 921 | dependencies: 922 | pinkie-promise "^2.0.0" 923 | 924 | path-exists@^3.0.0: 925 | version "3.0.0" 926 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 927 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 928 | 929 | path-is-absolute@^1.0.0: 930 | version "1.0.1" 931 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 932 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 933 | 934 | path-is-inside@^1.0.2: 935 | version "1.0.2" 936 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 937 | integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= 938 | 939 | path-key@^2.0.1: 940 | version "2.0.1" 941 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 942 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 943 | 944 | path-parse@^1.0.6: 945 | version "1.0.6" 946 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 947 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 948 | 949 | path-type@^2.0.0: 950 | version "2.0.0" 951 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 952 | integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= 953 | dependencies: 954 | pify "^2.0.0" 955 | 956 | pify@^2.0.0: 957 | version "2.3.0" 958 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 959 | integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= 960 | 961 | pinkie-promise@^2.0.0: 962 | version "2.0.1" 963 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 964 | integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= 965 | dependencies: 966 | pinkie "^2.0.0" 967 | 968 | pinkie@^2.0.0: 969 | version "2.0.4" 970 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 971 | integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= 972 | 973 | pkg-dir@^1.0.0: 974 | version "1.0.0" 975 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" 976 | integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= 977 | dependencies: 978 | find-up "^1.0.0" 979 | 980 | pkg-dir@^2.0.0: 981 | version "2.0.0" 982 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" 983 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 984 | dependencies: 985 | find-up "^2.1.0" 986 | 987 | prelude-ls@~1.1.2: 988 | version "1.1.2" 989 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 990 | integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= 991 | 992 | progress@^2.0.0: 993 | version "2.0.3" 994 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" 995 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== 996 | 997 | punycode@^2.1.0: 998 | version "2.1.1" 999 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1000 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1001 | 1002 | read-pkg-up@^2.0.0: 1003 | version "2.0.0" 1004 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 1005 | integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= 1006 | dependencies: 1007 | find-up "^2.0.0" 1008 | read-pkg "^2.0.0" 1009 | 1010 | read-pkg@^2.0.0: 1011 | version "2.0.0" 1012 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 1013 | integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= 1014 | dependencies: 1015 | load-json-file "^2.0.0" 1016 | normalize-package-data "^2.3.2" 1017 | path-type "^2.0.0" 1018 | 1019 | regexpp@^2.0.1: 1020 | version "2.0.1" 1021 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" 1022 | integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== 1023 | 1024 | resolve-from@^4.0.0: 1025 | version "4.0.0" 1026 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 1027 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1028 | 1029 | resolve@^1.10.0, resolve@^1.5.0, resolve@^1.8.1, resolve@^1.9.0: 1030 | version "1.10.0" 1031 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba" 1032 | integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg== 1033 | dependencies: 1034 | path-parse "^1.0.6" 1035 | 1036 | restore-cursor@^2.0.0: 1037 | version "2.0.0" 1038 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 1039 | integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= 1040 | dependencies: 1041 | onetime "^2.0.0" 1042 | signal-exit "^3.0.2" 1043 | 1044 | rimraf@^2.6.1, rimraf@~2.6.2: 1045 | version "2.6.3" 1046 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 1047 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 1048 | dependencies: 1049 | glob "^7.1.3" 1050 | 1051 | run-async@^2.2.0: 1052 | version "2.3.0" 1053 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 1054 | integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= 1055 | dependencies: 1056 | is-promise "^2.1.0" 1057 | 1058 | rxjs@^6.4.0: 1059 | version "6.4.0" 1060 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.4.0.tgz#f3bb0fe7bda7fb69deac0c16f17b50b0b8790504" 1061 | integrity sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw== 1062 | dependencies: 1063 | tslib "^1.9.0" 1064 | 1065 | "safer-buffer@>= 2.1.2 < 3": 1066 | version "2.1.2" 1067 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 1068 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 1069 | 1070 | "semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.5.1: 1071 | version "5.6.0" 1072 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" 1073 | integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== 1074 | 1075 | shebang-command@^1.2.0: 1076 | version "1.2.0" 1077 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 1078 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 1079 | dependencies: 1080 | shebang-regex "^1.0.0" 1081 | 1082 | shebang-regex@^1.0.0: 1083 | version "1.0.0" 1084 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 1085 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 1086 | 1087 | signal-exit@^3.0.2: 1088 | version "3.0.2" 1089 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 1090 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 1091 | 1092 | slice-ansi@^2.1.0: 1093 | version "2.1.0" 1094 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" 1095 | integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== 1096 | dependencies: 1097 | ansi-styles "^3.2.0" 1098 | astral-regex "^1.0.0" 1099 | is-fullwidth-code-point "^2.0.0" 1100 | 1101 | spdx-correct@^3.0.0: 1102 | version "3.1.0" 1103 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" 1104 | integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== 1105 | dependencies: 1106 | spdx-expression-parse "^3.0.0" 1107 | spdx-license-ids "^3.0.0" 1108 | 1109 | spdx-exceptions@^2.1.0: 1110 | version "2.2.0" 1111 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" 1112 | integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== 1113 | 1114 | spdx-expression-parse@^3.0.0: 1115 | version "3.0.0" 1116 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 1117 | integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== 1118 | dependencies: 1119 | spdx-exceptions "^2.1.0" 1120 | spdx-license-ids "^3.0.0" 1121 | 1122 | spdx-license-ids@^3.0.0: 1123 | version "3.0.3" 1124 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz#81c0ce8f21474756148bbb5f3bfc0f36bf15d76e" 1125 | integrity sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g== 1126 | 1127 | sprintf-js@~1.0.2: 1128 | version "1.0.3" 1129 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 1130 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 1131 | 1132 | string-width@^2.1.0: 1133 | version "2.1.1" 1134 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 1135 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 1136 | dependencies: 1137 | is-fullwidth-code-point "^2.0.0" 1138 | strip-ansi "^4.0.0" 1139 | 1140 | string-width@^3.0.0: 1141 | version "3.0.0" 1142 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.0.0.tgz#5a1690a57cc78211fffd9bf24bbe24d090604eb1" 1143 | integrity sha512-rr8CUxBbvOZDUvc5lNIJ+OC1nPVpz+Siw9VBtUjB9b6jZehZLFt0JMCZzShFHIsI8cbhm0EsNIfWJMFV3cu3Ew== 1144 | dependencies: 1145 | emoji-regex "^7.0.1" 1146 | is-fullwidth-code-point "^2.0.0" 1147 | strip-ansi "^5.0.0" 1148 | 1149 | strip-ansi@^4.0.0: 1150 | version "4.0.0" 1151 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 1152 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 1153 | dependencies: 1154 | ansi-regex "^3.0.0" 1155 | 1156 | strip-ansi@^5.0.0: 1157 | version "5.0.0" 1158 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f" 1159 | integrity sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow== 1160 | dependencies: 1161 | ansi-regex "^4.0.0" 1162 | 1163 | strip-bom@^3.0.0: 1164 | version "3.0.0" 1165 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1166 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 1167 | 1168 | strip-json-comments@^2.0.1: 1169 | version "2.0.1" 1170 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 1171 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 1172 | 1173 | supports-color@^5.3.0: 1174 | version "5.5.0" 1175 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1176 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 1177 | dependencies: 1178 | has-flag "^3.0.0" 1179 | 1180 | table@^5.0.2: 1181 | version "5.2.3" 1182 | resolved "https://registry.yarnpkg.com/table/-/table-5.2.3.tgz#cde0cc6eb06751c009efab27e8c820ca5b67b7f2" 1183 | integrity sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ== 1184 | dependencies: 1185 | ajv "^6.9.1" 1186 | lodash "^4.17.11" 1187 | slice-ansi "^2.1.0" 1188 | string-width "^3.0.0" 1189 | 1190 | text-table@^0.2.0: 1191 | version "0.2.0" 1192 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1193 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 1194 | 1195 | through@^2.3.6: 1196 | version "2.3.8" 1197 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 1198 | integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= 1199 | 1200 | tmp@^0.0.33: 1201 | version "0.0.33" 1202 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 1203 | integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== 1204 | dependencies: 1205 | os-tmpdir "~1.0.2" 1206 | 1207 | tslib@^1.9.0: 1208 | version "1.9.3" 1209 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" 1210 | integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== 1211 | 1212 | type-check@~0.3.2: 1213 | version "0.3.2" 1214 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 1215 | integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= 1216 | dependencies: 1217 | prelude-ls "~1.1.2" 1218 | 1219 | uri-js@^4.2.2: 1220 | version "4.2.2" 1221 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 1222 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 1223 | dependencies: 1224 | punycode "^2.1.0" 1225 | 1226 | validate-npm-package-license@^3.0.1: 1227 | version "3.0.4" 1228 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 1229 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 1230 | dependencies: 1231 | spdx-correct "^3.0.0" 1232 | spdx-expression-parse "^3.0.0" 1233 | 1234 | which@^1.2.9: 1235 | version "1.3.1" 1236 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 1237 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 1238 | dependencies: 1239 | isexe "^2.0.0" 1240 | 1241 | wordwrap@~1.0.0: 1242 | version "1.0.0" 1243 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 1244 | integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= 1245 | 1246 | wrappy@1: 1247 | version "1.0.2" 1248 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1249 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1250 | 1251 | write@^0.2.1: 1252 | version "0.2.1" 1253 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" 1254 | integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= 1255 | dependencies: 1256 | mkdirp "^0.5.1" 1257 | --------------------------------------------------------------------------------