├── .editorconfig ├── .gitattributes ├── .gitignore ├── .npmignore ├── .travis.yml ├── ISSUE_TEMPLATE.md ├── README.md ├── cli.js ├── package.json ├── test └── cli.spec.js └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | charset = utf-8 4 | end_of_line = lf 5 | trim_trailing_whitespace = true 6 | insert_final_newline = true 7 | 8 | [*.cpp] 9 | indent_style = space 10 | indent_size = 4 11 | 12 | [*.js] 13 | indent_style = space 14 | indent_size = 2 15 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.gyp linguist-vendored 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Created by https://www.gitignore.io/api/node,intellij 3 | 4 | ### Node ### 5 | # Logs 6 | logs 7 | *.log 8 | npm-debug.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | 15 | # Directory for instrumented libs generated by jscoverage/JSCover 16 | lib-cov 17 | 18 | # Coverage directory used by tools like istanbul 19 | coverage 20 | 21 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 22 | .grunt 23 | 24 | # node-waf configuration 25 | .lock-wscript 26 | 27 | # Compiled binary addons (http://nodejs.org/api/addons.html) 28 | build/Release 29 | 30 | # Dependency directory 31 | # https://docs.npmjs.com/misc/faq#should-i-check-my-node-modules-folder-into-git 32 | node_modules 33 | 34 | # Optional npm cache directory 35 | .npm 36 | 37 | # Optional REPL history 38 | .node_repl_history 39 | 40 | 41 | ### Intellij ### 42 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm 43 | 44 | *.iml 45 | 46 | ## Directory-based project format: 47 | .idea/ 48 | # if you remove the above rule, at least ignore the following: 49 | 50 | # User-specific stuff: 51 | # .idea/workspace.xml 52 | # .idea/tasks.xml 53 | # .idea/dictionaries 54 | # .idea/shelf 55 | 56 | # Sensitive or high-churn files: 57 | # .idea/dataSources.ids 58 | # .idea/dataSources.xml 59 | # .idea/sqlDataSources.xml 60 | # .idea/dynamic.xml 61 | # .idea/uiDesigner.xml 62 | 63 | # Gradle: 64 | # .idea/gradle.xml 65 | # .idea/libraries 66 | 67 | # Mongo Explorer plugin: 68 | # .idea/mongoSettings.xml 69 | 70 | ## File-based project format: 71 | *.ipr 72 | *.iws 73 | 74 | ## Plugin-specific files: 75 | 76 | # IntelliJ 77 | /out/ 78 | 79 | # mpeltonen/sbt-idea plugin 80 | .idea_modules/ 81 | 82 | # JIRA plugin 83 | atlassian-ide-plugin.xml 84 | 85 | # Crashlytics plugin (for Android Studio and IntelliJ) 86 | com_crashlytics_export_strings.xml 87 | crashlytics.properties 88 | crashlytics-build.properties 89 | fabric.properties 90 | 91 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | ISSUE_TEMPLATE.md 2 | .editorconfig 3 | .git* 4 | .idea 5 | .travis.yml 6 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | dist: trusty 3 | language: node_js 4 | node_js: 5 | - "8" 6 | - "10" 7 | - "12" 8 | - "13" 9 | before_script: npm install -g coveralls nyc 10 | after_success: 11 | - nyc --reporter=lcov npm test 12 | - coveralls < coverage/lcov.info 13 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Welcome to the issues section if it's your first time! 2 | 3 | ### Before creating an issue, please be sure to: 4 | - [ ] Checkout to the latest version, **including submodules** 5 | - [ ] Try to find an *isolated* way to reproduce the behavior 6 | - [ ] Fill in all the blanks in the most specific way you can 7 | 8 | ### Steps to reproduce 9 | 1. 10 | 2. 11 | 3. 12 | 13 | ### Expected behaviour 14 | Tell us what should happen 15 | 16 | ### Actual behaviour 17 | Tell us what happens instead 18 | 19 | ### Environment 20 | **Operating system**: 21 | 22 | **Node version:** 23 | 24 | **Compiler version:** 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # node-argon2-cli [![NPM package][npm-image]][npm-url] [![Build status][travis-image]][travis-url] [![Coverage status][coverage-image]][coverage-url] [![Code Quality][codequality-image]][codequality-url] [![Dependencies][david-dm-image]][david-dm-url] 2 | CLI utility for [node-argon2](https://github.com/ranisalt/node-argon2). 3 | 4 | **Want to use it in your Javascript application? Instead check 5 | [node-argon2](https://github.com/ranisalt/node-argon2).** 6 | 7 | ### Before installing 8 | Check requirements for [node-argon2](https://github.com/ranisalt/node-argon2) 9 | prior to installing this. 10 | 11 | **node-argon2-cli** works only and is tested against Node >=8.0.0. 12 | 13 | 14 | ### Usage 15 | Run `argon2-cli -h` for a quick help on usage and arguments: 16 | ```bash 17 | $ argon2-cli -h 18 | usage: argon2-cli [-h] salt [-i|-d|-id] [-t iterations] [-m log2(memory in KiB) | -k memory in KiB] [-p parallelism] [-l hash length] [-e|-r] [-v (10|13)] 19 | Password is read from stdin 20 | 21 | Positional arguments: 22 | salt 23 | 24 | Optional arguments: 25 | -h, --help Show this help message and exit. 26 | -i Use Argon2i (this is the default) 27 | -d Use Argon2d instead of Argon2i 28 | -id Use Argon2id instead of Argon2i 29 | -t N Sets the number of iterations to N (default 3) 30 | -m N Sets the memory usage to 2^N KiB (default 12) 31 | -k N Sets the memory usage to N KiB (default 4096) 32 | -p N Sets parallelism to N threads (default 1) 33 | -l N Sets hash output length to N bytes (default 32) 34 | -e Output only encoded hash 35 | -r Output only the raw bytes of the hash 36 | -v (10|13) Argon2 version (defaults to the most recent version, currently 13) 37 | ``` 38 | 39 | To hash a password: 40 | ```bash 41 | $ echo -n "password" | argon2-cli 42 | Type: Argon2i 43 | Iterations: 3 44 | Memory: 4096 KiB 45 | Parallelism: 1 46 | Encoded: $argon2i$v=19$m=4096,t=3,p=1$lwEEWp+MVB8ha79mVt8Gog$KXc3+y9Lg4YBm0C1nxk7t6j3ku4pw/uyd4RfVq3e8yI 47 | 0.010 seconds 48 | Verification ok 49 | ``` 50 | 51 | By default, the output is verbose. You can output the hash only with `-e`: 52 | ```bash 53 | $ echo -n "password" | argon2-cli -e 54 | $argon2i$v=19$m=4096,t=3,p=1$wST5QhBgk2lu1ih4DMuxvg$LS1alrVdIWtvZHwnzCM1DUGg+5DTO3Dt1d5v9XtLws4 55 | ``` 56 | 57 | You can choose between Argon2i and Argon2d by using the `-d` flag: 58 | ```bash 59 | $ echo -n "password" | argon2-cli -d -e 60 | $argon2d$v=19$m=4096,t=3,p=1$diS6FEpcDzlFacSfAHyWSw$+JLnSo3YQP/CJ7g2cRSx6YjC1eRmxHPETmd99R6eaa8 61 | ``` 62 | 63 | You can provide your own salt as the positional argument. It is **highly** 64 | recommended to use the generated salt instead of a hardcoded salt, though: 65 | ```bash 66 | $ echo -n "password" | argon2-cli somesalt -e 67 | $argon2i$v=19$m=4096,t=3,p=1$c29tZXNhbHQ$iWh06vD8Fy27wf9npn6FXWiCX4K6pW6Ue1Bnzz07Z8A 68 | ``` 69 | 70 | You can also modify time, memory and parallelism constraints with `-t`, `-m` and 71 | `-p` respectively, followed by a valid number: 72 | ```bash 73 | $ echo -n "password" | argon2-cli -t 2 -k 65536 -p 4 74 | Type: Argon2i 75 | Iterations: 2 76 | Memory: 65536 KiB 77 | Parallelism: 4 78 | Encoded: $argon2i$v=19$m=65536,t=2,p=4$1LoWDI7KvUoSIUlA+26nHw$KK1P9iYjYn8+FE1ACGWFNhC3UfJsc1LYS7ciMcxS7EA 79 | 0.058 seconds 80 | Verification ok 81 | ``` 82 | 83 | All arguments are optional, and it's not possible to pass your password as 84 | argument for safety purposes (consider you should never write a password with 85 | `echo`). 86 | 87 | # License 88 | Work licensed under the [MIT License](LICENSE). Please check 89 | [P-H-C/phc-winner-argon2] (https://github.com/P-H-C/phc-winner-argon2) for 90 | license over Argon2 and the reference implementation. 91 | 92 | [npm-image]: https://img.shields.io/npm/v/argon2-cli.svg?style=flat-square 93 | [npm-url]: https://www.npmjs.com/package/argon2-cli 94 | [travis-image]: https://img.shields.io/travis/ranisalt/node-argon2-cli/master.svg?style=flat-square 95 | [travis-url]: https://travis-ci.org/ranisalt/node-argon2-cli 96 | [coverage-image]: https://img.shields.io/coveralls/ranisalt/node-argon2-cli/master.svg?style=flat-square 97 | [coverage-url]: https://coveralls.io/github/ranisalt/node-argon2-cli 98 | [codequality-image]: https://img.shields.io/codacy/15927f4eb15747fd8a537e48a04bd4f6/master.svg?style=flat-square 99 | [codequality-url]: https://www.codacy.com/app/ranisalt/node-argon2-cli 100 | [david-dm-image]: https://img.shields.io/david/ranisalt/node-argon2-cli.svg?style=flat-square 101 | [david-dm-url]: https://david-dm.org/ranisalt/node-argon2-cli 102 | -------------------------------------------------------------------------------- /cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | const argon2 = require('argon2') 4 | const argparse = require('argparse') 5 | 6 | function typeToString (type) { 7 | switch (type) { 8 | case argon2.argon2d: 9 | return 'Argon2d' 10 | case argon2.argon2id: 11 | return 'Argon2id' 12 | default: 13 | return 'Argon2i' 14 | } 15 | } 16 | 17 | const hash = async (password, options) => { 18 | // argparse sets an unset optional argument to null. WTF? 19 | if (options.salt === null) { 20 | delete options.salt 21 | } else { 22 | options.salt = Buffer.from(options.salt) 23 | } 24 | if (options.type === null) { 25 | delete options.type 26 | } 27 | options.memoryCost = options.memoryCostAbs || (1 << options.memoryCostExp) 28 | options.version = parseInt(options.version, 16) 29 | 30 | const start = Date.now() 31 | const hash = await argon2.hash(password, options) 32 | const delta = Date.now() - start 33 | 34 | if (options.raw) { 35 | console.info(hash.toString('hex')) 36 | } else if (options.encoded) { 37 | console.info(hash) 38 | } else { 39 | console.info(`Type: \t\t${typeToString(options.type)}`) 40 | console.info('Iterations: \t%d', options.timeCost) 41 | console.info('Memory: \t%d KiB', options.memoryCost) 42 | console.info('Parallelism: \t%d', options.parallelism) 43 | console.info('Encoded: \t%s', hash) 44 | console.info('%s seconds', (delta / 1000).toFixed(3)) 45 | 46 | const result = argon2.verify(hash, password) 47 | console.info('Verification %s', result ? 'ok' : 'failed') 48 | } 49 | } 50 | 51 | const main = () => { 52 | const {defaults} = argon2 53 | 54 | const parser = new argparse.ArgumentParser({ 55 | prog: 'argon2', 56 | usage: './argon2 [-h] salt [-i|-d|-id] [-t iterations] [-m log2(memory in KiB) | -k memory in KiB] [-p parallelism] [-l hash length] [-e|-r] [-v (10|13)]' + 57 | '\n Password is read from stdin' 58 | }) 59 | parser.addArgument(['salt'], { 60 | nargs: argparse.Const.OPTIONAL 61 | }) 62 | 63 | const type = parser.addMutuallyExclusiveGroup() 64 | type.addArgument(['-i'], { 65 | action: 'storeConst', 66 | constant: argon2.argon2i, 67 | dest: 'type', 68 | help: 'Use Argon2i (this is the default)' 69 | }) 70 | type.addArgument(['-d'], { 71 | action: 'storeConst', 72 | constant: argon2.argon2d, 73 | dest: 'type', 74 | help: 'Use Argon2d instead of Argon2i' 75 | }) 76 | type.addArgument(['-id'], { 77 | action: 'storeConst', 78 | constant: argon2.argon2id, 79 | dest: 'type', 80 | help: 'Use Argon2id instead of Argon2i' 81 | }) 82 | 83 | parser.addArgument(['-t'], { 84 | defaultValue: defaults.timeCost, 85 | dest: 'timeCost', 86 | help: `Sets the number of iterations to N (default ${defaults.timeCost})`, 87 | metavar: 'N' 88 | }) 89 | 90 | const memory = parser.addMutuallyExclusiveGroup() 91 | memory.addArgument(['-m'], { 92 | defaultValue: Math.log2(defaults.memoryCost), 93 | dest: 'memoryCostExp', 94 | help: `Sets the memory usage to 2^N KiB (default ${Math.log2(defaults.memoryCost)})`, 95 | metavar: 'N', 96 | type: 'int' 97 | }) 98 | memory.addArgument(['-k'], { 99 | defaultValue: defaults.memoryCost, 100 | dest: 'memoryCostAbs', 101 | help: `Sets the memory usage to N KiB (default ${defaults.memoryCost})`, 102 | metavar: 'N', 103 | type: 'int' 104 | }) 105 | 106 | parser.addArgument(['-p'], { 107 | defaultValue: defaults.parallelism, 108 | dest: 'parallelism', 109 | help: `Sets parallelism to N threads (default ${defaults.parallelism})`, 110 | metavar: 'N', 111 | type: 'int' 112 | }) 113 | parser.addArgument(['-l'], { 114 | defaultValue: defaults.hashLength, 115 | dest: 'hashLength', 116 | help: `Sets hash output length to N bytes (default ${defaults.hashLength})`, 117 | metavar: 'N', 118 | type: 'int' 119 | }) 120 | 121 | const output = parser.addMutuallyExclusiveGroup() 122 | output.addArgument(['-e'], { 123 | action: 'storeTrue', 124 | dest: 'encoded', 125 | help: 'Output only encoded hash' 126 | }) 127 | output.addArgument(['-r'], { 128 | action: 'storeTrue', 129 | dest: 'raw', 130 | help: 'Output only the raw bytes of the hash' 131 | }) 132 | 133 | parser.addArgument(['-v'], { 134 | choices: ['10', '13'], 135 | defaultValue: '13', 136 | dest: 'version', 137 | help: 'Argon2 version (defaults to the most recent version, currently 13)', 138 | metavar: '(10|13)' 139 | }) 140 | 141 | const args = parser.parseArgs() 142 | 143 | let password = Buffer.alloc(0) 144 | process.stdin.on('data', data => { 145 | password = Buffer.concat([password, data]) 146 | }) 147 | process.stdin.on('end', () => { 148 | hash(password, args).catch(err => { 149 | console.error('Error: %s', err.message) 150 | 151 | // invalid argument error 152 | process.exit(22) 153 | }) 154 | }) 155 | } 156 | 157 | main() 158 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "argon2-cli", 3 | "version": "0.25.1", 4 | "description": "A CLI tool for argon2 hashing", 5 | "main": "cli.js", 6 | "bin": "cli.js", 7 | "scripts": { 8 | "test": "mocha" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "git+https://github.com/ranisalt/node-argon2-cli.git" 13 | }, 14 | "keywords": [ 15 | "argon2", 16 | "crypto", 17 | "encryption", 18 | "hashing", 19 | "password", 20 | "cli" 21 | ], 22 | "author": "Ranieri Althoff ", 23 | "license": "MIT", 24 | "bugs": { 25 | "url": "https://github.com/ranisalt/node-argon2-cli/issues" 26 | }, 27 | "homepage": "https://github.com/ranisalt/node-argon2-cli#readme", 28 | "dependencies": { 29 | "argon2": "^0.25.1", 30 | "argparse": "^1.0.10" 31 | }, 32 | "devDependencies": { 33 | "mocha": "^6.2.2" 34 | }, 35 | "engines": { 36 | "node": ">=8.0.0" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /test/cli.spec.js: -------------------------------------------------------------------------------- 1 | const {spawn} = require('child_process') 2 | const _assert = require('assert') 3 | const argon2 = require('argon2') 4 | 5 | const {defaults, limits} = argon2 6 | 7 | const salt = Buffer.from('somesalt') 8 | 9 | const genChild = (...params) => new Promise((resolve, reject) => { 10 | const child = spawn('./cli.js', params) 11 | child.stdin.end('password') 12 | 13 | let errbuf = Buffer.alloc(0) 14 | let outbuf = Buffer.alloc(0) 15 | 16 | child.stderr.on('data', data => { 17 | errbuf = Buffer.concat([errbuf, data]) 18 | }) 19 | 20 | child.stdout.on('data', data => { 21 | outbuf = Buffer.concat([outbuf, data]) 22 | }) 23 | 24 | child.on('close', () => { 25 | if (errbuf.length) { 26 | reject(errbuf.toString()) 27 | } else { 28 | resolve(outbuf.toString().split('\n').map(s => s.trim())) 29 | } 30 | }) 31 | }) 32 | 33 | describe('hash', () => { 34 | const assert = _assert.strict || _assert 35 | 36 | it('hash with defaults', async () => { 37 | const expected = await argon2.hash('password', {salt}) 38 | const output = await genChild('somesalt') 39 | assert.equal('Type: \t\tArgon2i', output[0]) 40 | assert.equal(`Iterations: \t${defaults.timeCost}`, output[1]) 41 | assert.equal(`Memory: \t${defaults.memoryCost} KiB`, output[2]) 42 | assert.equal(`Parallelism: \t${defaults.parallelism}`, output[3]) 43 | assert.equal(`Encoded: \t${expected}`, output[4]) 44 | assert.equal('Verification ok', output[6]) 45 | }) 46 | 47 | it('hash with generated salt', async () => { 48 | const output = await genChild() 49 | assert(/Encoded:.*\$.{22}\$[^$]*/.test(output[4])) 50 | }) 51 | 52 | it('hash with argon2d', async () => { 53 | const expected = await argon2.hash('password', {salt, type: argon2.argon2d}) 54 | const output = await genChild('somesalt', '-d') 55 | assert.equal('Type: \t\tArgon2d', output[0]) 56 | assert.equal(`Encoded: \t${expected}`, output[4]) 57 | }) 58 | 59 | it('hash with options', async () => { 60 | const expected = await argon2.hash('password', { 61 | timeCost: 4, memoryCost: 8192, parallelism: 2, salt 62 | }) 63 | const output = await genChild('somesalt', '-t', '4', '-k', '8192', '-p', '2') 64 | assert.equal(`Iterations: \t4`, output[1]) 65 | assert.equal(`Memory: \t8192 KiB`, output[2]) 66 | assert.equal(`Parallelism: \t2`, output[3]) 67 | assert.equal(`Encoded: \t${expected}`, output[4]) 68 | }) 69 | 70 | it('hash encoded', async () => { 71 | const expected = await argon2.hash('password', {salt}) 72 | const output = await genChild('somesalt', '-e') 73 | assert.equal(expected, output[0]) 74 | }) 75 | 76 | it('hash raw', async () => { 77 | const expected = await argon2.hash('password', {salt, raw: true}) 78 | const output = await genChild('somesalt', '-r') 79 | assert.equal(expected.toString('hex'), output[0]) 80 | }) 81 | }) 82 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@phc/format@^0.5.0": 6 | version "0.5.0" 7 | resolved "https://registry.yarnpkg.com/@phc/format/-/format-0.5.0.tgz#a99d27a83d78b3100a191412adda04315e2e3aba" 8 | integrity sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg== 9 | dependencies: 10 | safe-buffer "^5.1.2" 11 | 12 | abbrev@1: 13 | version "1.1.1" 14 | resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" 15 | integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== 16 | 17 | ansi-colors@3.2.3: 18 | version "3.2.3" 19 | resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" 20 | integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== 21 | 22 | ansi-regex@^2.0.0: 23 | version "2.1.1" 24 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 25 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 26 | 27 | ansi-regex@^3.0.0: 28 | version "3.0.0" 29 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 30 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 31 | 32 | ansi-regex@^4.1.0: 33 | version "4.1.0" 34 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 35 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 36 | 37 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 38 | version "3.2.1" 39 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 40 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 41 | dependencies: 42 | color-convert "^1.9.0" 43 | 44 | aproba@^1.0.3: 45 | version "1.2.0" 46 | resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" 47 | integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== 48 | 49 | are-we-there-yet@~1.1.2: 50 | version "1.1.5" 51 | resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" 52 | integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== 53 | dependencies: 54 | delegates "^1.0.0" 55 | readable-stream "^2.0.6" 56 | 57 | argon2@^0.25.1: 58 | version "0.25.1" 59 | resolved "https://registry.yarnpkg.com/argon2/-/argon2-0.25.1.tgz#7c6b1d41d8bca66ac966a8703131503ee830171b" 60 | integrity sha512-DGm6Wp6csT7Xmlny1gB5qHW+f6aNlEFzhfNaEH2HMmUT7Eymf+68HznvZH4cW9+8fdyBmkoIC+GDV74P14k1zw== 61 | dependencies: 62 | "@phc/format" "^0.5.0" 63 | node-addon-api "^1.7.1" 64 | node-pre-gyp "^0.13.0" 65 | 66 | argparse@^1.0.10, argparse@^1.0.7: 67 | version "1.0.10" 68 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 69 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 70 | dependencies: 71 | sprintf-js "~1.0.2" 72 | 73 | balanced-match@^1.0.0: 74 | version "1.0.0" 75 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 76 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 77 | 78 | brace-expansion@^1.1.7: 79 | version "1.1.11" 80 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 81 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 82 | dependencies: 83 | balanced-match "^1.0.0" 84 | concat-map "0.0.1" 85 | 86 | browser-stdout@1.3.1: 87 | version "1.3.1" 88 | resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" 89 | integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== 90 | 91 | camelcase@^5.0.0: 92 | version "5.3.1" 93 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 94 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 95 | 96 | chalk@^2.0.1: 97 | version "2.4.2" 98 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 99 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 100 | dependencies: 101 | ansi-styles "^3.2.1" 102 | escape-string-regexp "^1.0.5" 103 | supports-color "^5.3.0" 104 | 105 | chownr@^1.1.4: 106 | version "1.1.4" 107 | resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" 108 | integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== 109 | 110 | cliui@^5.0.0: 111 | version "5.0.0" 112 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" 113 | integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== 114 | dependencies: 115 | string-width "^3.1.0" 116 | strip-ansi "^5.2.0" 117 | wrap-ansi "^5.1.0" 118 | 119 | code-point-at@^1.0.0: 120 | version "1.1.0" 121 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 122 | integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= 123 | 124 | color-convert@^1.9.0: 125 | version "1.9.3" 126 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 127 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 128 | dependencies: 129 | color-name "1.1.3" 130 | 131 | color-name@1.1.3: 132 | version "1.1.3" 133 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 134 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 135 | 136 | concat-map@0.0.1: 137 | version "0.0.1" 138 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 139 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 140 | 141 | console-control-strings@^1.0.0, console-control-strings@~1.1.0: 142 | version "1.1.0" 143 | resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" 144 | integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= 145 | 146 | core-util-is@~1.0.0: 147 | version "1.0.2" 148 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 149 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 150 | 151 | debug@3.2.6, debug@^3.2.6: 152 | version "3.2.6" 153 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" 154 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== 155 | dependencies: 156 | ms "^2.1.1" 157 | 158 | decamelize@^1.2.0: 159 | version "1.2.0" 160 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 161 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 162 | 163 | deep-extend@^0.6.0: 164 | version "0.6.0" 165 | resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" 166 | integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== 167 | 168 | define-properties@^1.1.2, define-properties@^1.1.3: 169 | version "1.1.3" 170 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 171 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 172 | dependencies: 173 | object-keys "^1.0.12" 174 | 175 | delegates@^1.0.0: 176 | version "1.0.0" 177 | resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" 178 | integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= 179 | 180 | detect-libc@^1.0.2: 181 | version "1.0.3" 182 | resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" 183 | integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= 184 | 185 | diff@3.5.0: 186 | version "3.5.0" 187 | resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" 188 | integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== 189 | 190 | emoji-regex@^7.0.1: 191 | version "7.0.3" 192 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 193 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 194 | 195 | es-abstract@^1.5.1: 196 | version "1.16.0" 197 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d" 198 | integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg== 199 | dependencies: 200 | es-to-primitive "^1.2.0" 201 | function-bind "^1.1.1" 202 | has "^1.0.3" 203 | has-symbols "^1.0.0" 204 | is-callable "^1.1.4" 205 | is-regex "^1.0.4" 206 | object-inspect "^1.6.0" 207 | object-keys "^1.1.1" 208 | string.prototype.trimleft "^2.1.0" 209 | string.prototype.trimright "^2.1.0" 210 | 211 | es-to-primitive@^1.2.0: 212 | version "1.2.1" 213 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" 214 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 215 | dependencies: 216 | is-callable "^1.1.4" 217 | is-date-object "^1.0.1" 218 | is-symbol "^1.0.2" 219 | 220 | escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: 221 | version "1.0.5" 222 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 223 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 224 | 225 | esprima@^4.0.0: 226 | version "4.0.1" 227 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 228 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 229 | 230 | find-up@3.0.0, find-up@^3.0.0: 231 | version "3.0.0" 232 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 233 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 234 | dependencies: 235 | locate-path "^3.0.0" 236 | 237 | flat@^4.1.0: 238 | version "4.1.0" 239 | resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" 240 | integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== 241 | dependencies: 242 | is-buffer "~2.0.3" 243 | 244 | fs-minipass@^1.2.7: 245 | version "1.2.7" 246 | resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" 247 | integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== 248 | dependencies: 249 | minipass "^2.6.0" 250 | 251 | fs.realpath@^1.0.0: 252 | version "1.0.0" 253 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 254 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 255 | 256 | function-bind@^1.1.1: 257 | version "1.1.1" 258 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 259 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 260 | 261 | gauge@~2.7.3: 262 | version "2.7.4" 263 | resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" 264 | integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= 265 | dependencies: 266 | aproba "^1.0.3" 267 | console-control-strings "^1.0.0" 268 | has-unicode "^2.0.0" 269 | object-assign "^4.1.0" 270 | signal-exit "^3.0.0" 271 | string-width "^1.0.1" 272 | strip-ansi "^3.0.1" 273 | wide-align "^1.1.0" 274 | 275 | get-caller-file@^2.0.1: 276 | version "2.0.5" 277 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" 278 | integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== 279 | 280 | glob@7.1.3: 281 | version "7.1.3" 282 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" 283 | integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== 284 | dependencies: 285 | fs.realpath "^1.0.0" 286 | inflight "^1.0.4" 287 | inherits "2" 288 | minimatch "^3.0.4" 289 | once "^1.3.0" 290 | path-is-absolute "^1.0.0" 291 | 292 | glob@^7.1.3: 293 | version "7.1.6" 294 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 295 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 296 | dependencies: 297 | fs.realpath "^1.0.0" 298 | inflight "^1.0.4" 299 | inherits "2" 300 | minimatch "^3.0.4" 301 | once "^1.3.0" 302 | path-is-absolute "^1.0.0" 303 | 304 | growl@1.10.5: 305 | version "1.10.5" 306 | resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" 307 | integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== 308 | 309 | has-flag@^3.0.0: 310 | version "3.0.0" 311 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 312 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 313 | 314 | has-symbols@^1.0.0: 315 | version "1.0.0" 316 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 317 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 318 | 319 | has-unicode@^2.0.0: 320 | version "2.0.1" 321 | resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" 322 | integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= 323 | 324 | has@^1.0.1, has@^1.0.3: 325 | version "1.0.3" 326 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 327 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 328 | dependencies: 329 | function-bind "^1.1.1" 330 | 331 | he@1.2.0: 332 | version "1.2.0" 333 | resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" 334 | integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== 335 | 336 | iconv-lite@^0.4.4: 337 | version "0.4.24" 338 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 339 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 340 | dependencies: 341 | safer-buffer ">= 2.1.2 < 3" 342 | 343 | ignore-walk@^3.0.1: 344 | version "3.0.3" 345 | resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" 346 | integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== 347 | dependencies: 348 | minimatch "^3.0.4" 349 | 350 | inflight@^1.0.4: 351 | version "1.0.6" 352 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 353 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 354 | dependencies: 355 | once "^1.3.0" 356 | wrappy "1" 357 | 358 | inherits@2, inherits@~2.0.3: 359 | version "2.0.4" 360 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 361 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 362 | 363 | ini@~1.3.0: 364 | version "1.3.8" 365 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" 366 | integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== 367 | 368 | is-buffer@~2.0.3: 369 | version "2.0.4" 370 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" 371 | integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== 372 | 373 | is-callable@^1.1.4: 374 | version "1.1.4" 375 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 376 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 377 | 378 | is-date-object@^1.0.1: 379 | version "1.0.1" 380 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 381 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 382 | 383 | is-fullwidth-code-point@^1.0.0: 384 | version "1.0.0" 385 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 386 | integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= 387 | dependencies: 388 | number-is-nan "^1.0.0" 389 | 390 | is-fullwidth-code-point@^2.0.0: 391 | version "2.0.0" 392 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 393 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 394 | 395 | is-regex@^1.0.4: 396 | version "1.0.4" 397 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 398 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 399 | dependencies: 400 | has "^1.0.1" 401 | 402 | is-symbol@^1.0.2: 403 | version "1.0.2" 404 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 405 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 406 | dependencies: 407 | has-symbols "^1.0.0" 408 | 409 | isarray@~1.0.0: 410 | version "1.0.0" 411 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 412 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 413 | 414 | isexe@^2.0.0: 415 | version "2.0.0" 416 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 417 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 418 | 419 | js-yaml@3.13.1: 420 | version "3.13.1" 421 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 422 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 423 | dependencies: 424 | argparse "^1.0.7" 425 | esprima "^4.0.0" 426 | 427 | locate-path@^3.0.0: 428 | version "3.0.0" 429 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 430 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 431 | dependencies: 432 | p-locate "^3.0.0" 433 | path-exists "^3.0.0" 434 | 435 | lodash@^4.17.15: 436 | version "4.17.21" 437 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 438 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 439 | 440 | log-symbols@2.2.0: 441 | version "2.2.0" 442 | resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" 443 | integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== 444 | dependencies: 445 | chalk "^2.0.1" 446 | 447 | minimatch@3.0.4, minimatch@^3.0.4: 448 | version "3.0.4" 449 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 450 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 451 | dependencies: 452 | brace-expansion "^1.1.7" 453 | 454 | minimist@0.0.8: 455 | version "0.0.8" 456 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 457 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 458 | 459 | minimist@^1.2.0: 460 | version "1.2.0" 461 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 462 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 463 | 464 | minimist@^1.2.5: 465 | version "1.2.5" 466 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 467 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 468 | 469 | minipass@^2.6.0, minipass@^2.9.0: 470 | version "2.9.0" 471 | resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" 472 | integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== 473 | dependencies: 474 | safe-buffer "^5.1.2" 475 | yallist "^3.0.0" 476 | 477 | minizlib@^1.3.3: 478 | version "1.3.3" 479 | resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" 480 | integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== 481 | dependencies: 482 | minipass "^2.9.0" 483 | 484 | mkdirp@0.5.1: 485 | version "0.5.1" 486 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 487 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 488 | dependencies: 489 | minimist "0.0.8" 490 | 491 | mkdirp@^0.5.1, mkdirp@^0.5.5: 492 | version "0.5.5" 493 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" 494 | integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== 495 | dependencies: 496 | minimist "^1.2.5" 497 | 498 | mocha@^6.2.2: 499 | version "6.2.2" 500 | resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.2.tgz#5d8987e28940caf8957a7d7664b910dc5b2fea20" 501 | integrity sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A== 502 | dependencies: 503 | ansi-colors "3.2.3" 504 | browser-stdout "1.3.1" 505 | debug "3.2.6" 506 | diff "3.5.0" 507 | escape-string-regexp "1.0.5" 508 | find-up "3.0.0" 509 | glob "7.1.3" 510 | growl "1.10.5" 511 | he "1.2.0" 512 | js-yaml "3.13.1" 513 | log-symbols "2.2.0" 514 | minimatch "3.0.4" 515 | mkdirp "0.5.1" 516 | ms "2.1.1" 517 | node-environment-flags "1.0.5" 518 | object.assign "4.1.0" 519 | strip-json-comments "2.0.1" 520 | supports-color "6.0.0" 521 | which "1.3.1" 522 | wide-align "1.1.3" 523 | yargs "13.3.0" 524 | yargs-parser "13.1.1" 525 | yargs-unparser "1.6.0" 526 | 527 | ms@2.1.1: 528 | version "2.1.1" 529 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 530 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 531 | 532 | ms@^2.1.1: 533 | version "2.1.2" 534 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 535 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 536 | 537 | needle@^2.2.1: 538 | version "2.4.0" 539 | resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" 540 | integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== 541 | dependencies: 542 | debug "^3.2.6" 543 | iconv-lite "^0.4.4" 544 | sax "^1.2.4" 545 | 546 | node-addon-api@^1.7.1: 547 | version "1.7.1" 548 | resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.1.tgz#cf813cd69bb8d9100f6bdca6755fc268f54ac492" 549 | integrity sha512-2+DuKodWvwRTrCfKOeR24KIc5unKjOh8mz17NCzVnHWfjAdDqbfbjqh7gUT+BkXBRQM52+xCHciKWonJ3CbJMQ== 550 | 551 | node-environment-flags@1.0.5: 552 | version "1.0.5" 553 | resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" 554 | integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== 555 | dependencies: 556 | object.getownpropertydescriptors "^2.0.3" 557 | semver "^5.7.0" 558 | 559 | node-pre-gyp@^0.13.0: 560 | version "0.13.0" 561 | resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.13.0.tgz#df9ab7b68dd6498137717838e4f92a33fc9daa42" 562 | integrity sha512-Md1D3xnEne8b/HGVQkZZwV27WUi1ZRuZBij24TNaZwUPU3ZAFtvT6xxJGaUVillfmMKnn5oD1HoGsp2Ftik7SQ== 563 | dependencies: 564 | detect-libc "^1.0.2" 565 | mkdirp "^0.5.1" 566 | needle "^2.2.1" 567 | nopt "^4.0.1" 568 | npm-packlist "^1.1.6" 569 | npmlog "^4.0.2" 570 | rc "^1.2.7" 571 | rimraf "^2.6.1" 572 | semver "^5.3.0" 573 | tar "^4" 574 | 575 | nopt@^4.0.1: 576 | version "4.0.1" 577 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" 578 | integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= 579 | dependencies: 580 | abbrev "1" 581 | osenv "^0.1.4" 582 | 583 | npm-bundled@^1.0.1: 584 | version "1.0.6" 585 | resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd" 586 | integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== 587 | 588 | npm-packlist@^1.1.6: 589 | version "1.4.6" 590 | resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.6.tgz#53ba3ed11f8523079f1457376dd379ee4ea42ff4" 591 | integrity sha512-u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg== 592 | dependencies: 593 | ignore-walk "^3.0.1" 594 | npm-bundled "^1.0.1" 595 | 596 | npmlog@^4.0.2: 597 | version "4.1.2" 598 | resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" 599 | integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== 600 | dependencies: 601 | are-we-there-yet "~1.1.2" 602 | console-control-strings "~1.1.0" 603 | gauge "~2.7.3" 604 | set-blocking "~2.0.0" 605 | 606 | number-is-nan@^1.0.0: 607 | version "1.0.1" 608 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 609 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 610 | 611 | object-assign@^4.1.0: 612 | version "4.1.1" 613 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 614 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 615 | 616 | object-inspect@^1.6.0: 617 | version "1.7.0" 618 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" 619 | integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== 620 | 621 | object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: 622 | version "1.1.1" 623 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 624 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 625 | 626 | object.assign@4.1.0: 627 | version "4.1.0" 628 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 629 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 630 | dependencies: 631 | define-properties "^1.1.2" 632 | function-bind "^1.1.1" 633 | has-symbols "^1.0.0" 634 | object-keys "^1.0.11" 635 | 636 | object.getownpropertydescriptors@^2.0.3: 637 | version "2.0.3" 638 | resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" 639 | integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= 640 | dependencies: 641 | define-properties "^1.1.2" 642 | es-abstract "^1.5.1" 643 | 644 | once@^1.3.0: 645 | version "1.4.0" 646 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 647 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 648 | dependencies: 649 | wrappy "1" 650 | 651 | os-homedir@^1.0.0: 652 | version "1.0.2" 653 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 654 | integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= 655 | 656 | os-tmpdir@^1.0.0: 657 | version "1.0.2" 658 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 659 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 660 | 661 | osenv@^0.1.4: 662 | version "0.1.5" 663 | resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" 664 | integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== 665 | dependencies: 666 | os-homedir "^1.0.0" 667 | os-tmpdir "^1.0.0" 668 | 669 | p-limit@^2.0.0: 670 | version "2.2.1" 671 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" 672 | integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== 673 | dependencies: 674 | p-try "^2.0.0" 675 | 676 | p-locate@^3.0.0: 677 | version "3.0.0" 678 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 679 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 680 | dependencies: 681 | p-limit "^2.0.0" 682 | 683 | p-try@^2.0.0: 684 | version "2.2.0" 685 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 686 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 687 | 688 | path-exists@^3.0.0: 689 | version "3.0.0" 690 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 691 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 692 | 693 | path-is-absolute@^1.0.0: 694 | version "1.0.1" 695 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 696 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 697 | 698 | process-nextick-args@~2.0.0: 699 | version "2.0.1" 700 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" 701 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== 702 | 703 | rc@^1.2.7: 704 | version "1.2.8" 705 | resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" 706 | integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== 707 | dependencies: 708 | deep-extend "^0.6.0" 709 | ini "~1.3.0" 710 | minimist "^1.2.0" 711 | strip-json-comments "~2.0.1" 712 | 713 | readable-stream@^2.0.6: 714 | version "2.3.6" 715 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" 716 | integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== 717 | dependencies: 718 | core-util-is "~1.0.0" 719 | inherits "~2.0.3" 720 | isarray "~1.0.0" 721 | process-nextick-args "~2.0.0" 722 | safe-buffer "~5.1.1" 723 | string_decoder "~1.1.1" 724 | util-deprecate "~1.0.1" 725 | 726 | require-directory@^2.1.1: 727 | version "2.1.1" 728 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 729 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 730 | 731 | require-main-filename@^2.0.0: 732 | version "2.0.0" 733 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" 734 | integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== 735 | 736 | rimraf@^2.6.1: 737 | version "2.7.1" 738 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" 739 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 740 | dependencies: 741 | glob "^7.1.3" 742 | 743 | safe-buffer@^5.1.2, safe-buffer@^5.2.1: 744 | version "5.2.1" 745 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 746 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 747 | 748 | safe-buffer@~5.1.0, safe-buffer@~5.1.1: 749 | version "5.1.2" 750 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 751 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 752 | 753 | "safer-buffer@>= 2.1.2 < 3": 754 | version "2.1.2" 755 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 756 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 757 | 758 | sax@^1.2.4: 759 | version "1.2.4" 760 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" 761 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 762 | 763 | semver@^5.3.0, semver@^5.7.0: 764 | version "5.7.2" 765 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" 766 | integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== 767 | 768 | set-blocking@^2.0.0, set-blocking@~2.0.0: 769 | version "2.0.0" 770 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 771 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 772 | 773 | signal-exit@^3.0.0: 774 | version "3.0.2" 775 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 776 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 777 | 778 | sprintf-js@~1.0.2: 779 | version "1.0.3" 780 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 781 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 782 | 783 | string-width@^1.0.1: 784 | version "1.0.2" 785 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 786 | integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= 787 | dependencies: 788 | code-point-at "^1.0.0" 789 | is-fullwidth-code-point "^1.0.0" 790 | strip-ansi "^3.0.0" 791 | 792 | "string-width@^1.0.2 || 2": 793 | version "2.1.1" 794 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 795 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 796 | dependencies: 797 | is-fullwidth-code-point "^2.0.0" 798 | strip-ansi "^4.0.0" 799 | 800 | string-width@^3.0.0, string-width@^3.1.0: 801 | version "3.1.0" 802 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 803 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 804 | dependencies: 805 | emoji-regex "^7.0.1" 806 | is-fullwidth-code-point "^2.0.0" 807 | strip-ansi "^5.1.0" 808 | 809 | string.prototype.trimleft@^2.1.0: 810 | version "2.1.0" 811 | resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" 812 | integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== 813 | dependencies: 814 | define-properties "^1.1.3" 815 | function-bind "^1.1.1" 816 | 817 | string.prototype.trimright@^2.1.0: 818 | version "2.1.0" 819 | resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" 820 | integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== 821 | dependencies: 822 | define-properties "^1.1.3" 823 | function-bind "^1.1.1" 824 | 825 | string_decoder@~1.1.1: 826 | version "1.1.1" 827 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 828 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 829 | dependencies: 830 | safe-buffer "~5.1.0" 831 | 832 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 833 | version "3.0.1" 834 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 835 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 836 | dependencies: 837 | ansi-regex "^2.0.0" 838 | 839 | strip-ansi@^4.0.0: 840 | version "4.0.0" 841 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 842 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 843 | dependencies: 844 | ansi-regex "^3.0.0" 845 | 846 | strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: 847 | version "5.2.0" 848 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 849 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 850 | dependencies: 851 | ansi-regex "^4.1.0" 852 | 853 | strip-json-comments@2.0.1, strip-json-comments@~2.0.1: 854 | version "2.0.1" 855 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 856 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 857 | 858 | supports-color@6.0.0: 859 | version "6.0.0" 860 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" 861 | integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== 862 | dependencies: 863 | has-flag "^3.0.0" 864 | 865 | supports-color@^5.3.0: 866 | version "5.5.0" 867 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 868 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 869 | dependencies: 870 | has-flag "^3.0.0" 871 | 872 | tar@^4: 873 | version "4.4.19" 874 | resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" 875 | integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== 876 | dependencies: 877 | chownr "^1.1.4" 878 | fs-minipass "^1.2.7" 879 | minipass "^2.9.0" 880 | minizlib "^1.3.3" 881 | mkdirp "^0.5.5" 882 | safe-buffer "^5.2.1" 883 | yallist "^3.1.1" 884 | 885 | util-deprecate@~1.0.1: 886 | version "1.0.2" 887 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 888 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 889 | 890 | which-module@^2.0.0: 891 | version "2.0.0" 892 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 893 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 894 | 895 | which@1.3.1: 896 | version "1.3.1" 897 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 898 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 899 | dependencies: 900 | isexe "^2.0.0" 901 | 902 | wide-align@1.1.3, wide-align@^1.1.0: 903 | version "1.1.3" 904 | resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" 905 | integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== 906 | dependencies: 907 | string-width "^1.0.2 || 2" 908 | 909 | wrap-ansi@^5.1.0: 910 | version "5.1.0" 911 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" 912 | integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== 913 | dependencies: 914 | ansi-styles "^3.2.0" 915 | string-width "^3.0.0" 916 | strip-ansi "^5.0.0" 917 | 918 | wrappy@1: 919 | version "1.0.2" 920 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 921 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 922 | 923 | y18n@^4.0.0: 924 | version "4.0.3" 925 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" 926 | integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== 927 | 928 | yallist@^3.0.0, yallist@^3.1.1: 929 | version "3.1.1" 930 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" 931 | integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== 932 | 933 | yargs-parser@13.1.1, yargs-parser@^13.1.1: 934 | version "13.1.1" 935 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" 936 | integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== 937 | dependencies: 938 | camelcase "^5.0.0" 939 | decamelize "^1.2.0" 940 | 941 | yargs-unparser@1.6.0: 942 | version "1.6.0" 943 | resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" 944 | integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== 945 | dependencies: 946 | flat "^4.1.0" 947 | lodash "^4.17.15" 948 | yargs "^13.3.0" 949 | 950 | yargs@13.3.0, yargs@^13.3.0: 951 | version "13.3.0" 952 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" 953 | integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== 954 | dependencies: 955 | cliui "^5.0.0" 956 | find-up "^3.0.0" 957 | get-caller-file "^2.0.1" 958 | require-directory "^2.1.1" 959 | require-main-filename "^2.0.0" 960 | set-blocking "^2.0.0" 961 | string-width "^3.0.0" 962 | which-module "^2.0.0" 963 | y18n "^4.0.0" 964 | yargs-parser "^13.1.1" 965 | --------------------------------------------------------------------------------