├── .babelrc ├── .codeclimate.yml ├── .editorconfig ├── .eslintrc ├── .gitignore ├── .prettierrc ├── .travis.yml ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── src └── index.js ├── test ├── specs │ └── index-spec.js └── testFiles.js └── wallaby.conf.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | "@babel/preset-env", 4 | { 5 | "targets": { 6 | "node": "current" 7 | } 8 | } 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /.codeclimate.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | plugins: 3 | eslint: 4 | enabled: true 5 | channel: 'eslint-5' 6 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent 2 | # coding styles between different editors and IDEs 3 | # editorconfig.org 4 | 5 | root = true 6 | 7 | 8 | [*] 9 | 10 | # Change these settings to your own preference 11 | indent_style = space 12 | indent_size = 2 13 | 14 | # We recommend you to keep these unchanged 15 | end_of_line = lf 16 | charset = utf-8 17 | trim_trailing_whitespace = true 18 | insert_final_newline = true 19 | 20 | [*.md] 21 | trim_trailing_whitespace = false 22 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "node": true 4 | }, 5 | "parserOptions": { 6 | "ecmaVersion": 2018 7 | }, 8 | "extends": ["plugin:prettier/recommended"], 9 | "plugins": ["prettier"] 10 | } 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | coverage 3 | .nyc_output 4 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true 3 | } 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '12' 4 | - '10' 5 | - '8' 6 | before_script: 7 | - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 --output cc-test-reporter 8 | - chmod +x ./cc-test-reporter 9 | - ./cc-test-reporter before-build 10 | script: 11 | - npm run qa 12 | after_script: 13 | - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Frank van Wijk 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 13 | all 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 21 | THE SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Test Runner Config 2 | 3 | [![Build Status](https://travis-ci.org/fvanwijk/testRunnerConfig.svg?branch=master)](https://travis-ci.org/fvanwijk/testRunnerConfig) 4 | [![Test Coverage](https://codeclimate.com/github/fvanwijk/testRunnerConfig/badges/coverage.svg)](https://codeclimate.com/github/fvanwijk/testRunnerConfig) 5 | [![Code Climate](https://codeclimate.com/github/fvanwijk/testRunnerConfig/badges/gpa.svg)](https://codeclimate.com/github/fvanwijk/testRunnerConfig) 6 | [![devDependency Status](https://david-dm.org/fvanwijk/testRunnerConfig/dev-status.svg)](https://david-dm.org/fvanwijk/testRunnerConfig#info=devDependencies) 7 | 8 | When you run your unit tests using either Wallaby, Karma and Mocha, a lot of configuration such as the files list is duplicated. 9 | We like DRY, so put the files in a separate file list and load them into your Wallaby, Karma and/or Mocha config using this script! 10 | 11 | # Usage 12 | 13 | Install this node module into your project. 14 | 15 | ``` 16 | npm i test-runner-config --save-dev 17 | ``` 18 | 19 | Require testRunnerConfig in your karma.conf.js or wallaby.conf.js file and pass a structured file list to a `testRunnerConfig` method to get your configuration. 20 | Mocha is not supported because it passes the files as argument to the `mocha` command, but you can get a files list for the Grunt or Gulp task that runs Mocha. 21 | 22 | The file list should have the following format. You can use glob patterns, but note that Wallaby does not support them all. 23 | See [Wallaby issue 69](https://github.com/wallabyjs/public/issues/69). 24 | You can use any type, however 'specs' and 'ignore' are special types that are mapped onto the correct output properties. 25 | 26 | ```json 27 | [{ 28 | "type": "lib", 29 | "files": ["node_modules/angular/angular.js"] 30 | }, 31 | { 32 | "type": "src", 33 | "files": ["src/*.js"] 34 | }, 35 | { 36 | "type": "specs", 37 | "files": ["test/specs/*.js"] 38 | }] 39 | ``` 40 | 41 | ```javascript 42 | var testRunnerConfig = require('test-runner-config'); 43 | var config = testRunnerConfig.getWallabyFiles(files); // For Karma config call getKarmaFiles() and for Mocha call getMochaFiles() 44 | ``` 45 | 46 | `config` contains the part of your Wallaby config with the files and specs, which you can merge into your Wallaby config object. 47 | To get the files array for the Mocha grunt or Gulp task, call `testRunnerConfig.getMochaFiles(require('./test/testFiles.js'))`. 48 | 49 | This is now in the `config` variable. 50 | 51 | ```javascript 52 | { 53 | files: [ 54 | { pattern: 'node_modules/angular/angular.js', load: true, instrument: false, ignore: false }, 55 | { pattern: 'src/*.js', load: true, instrument: true, ignore: false } 56 | ], 57 | tests: [ 58 | { pattern: 'test/specs/*.js', load: true, instrument: true, ignore: false } 59 | ] 60 | } 61 | ``` 62 | 63 | The arrays with file patterns will be mapped onto the new data structure using default mappings. 64 | You can override the mapping per type by passing a mapping object as second argument. 65 | The following example shows you the default mappings passed explicitely. 66 | 67 | ```javascript 68 | var config = testRunnerConfig.getWallabyFiles(files, { 69 | config: function (file) { return { pattern: file, instrument: false, load: true, ignore: false }; }, 70 | ignore: function (file) { return { pattern: file, instrument: false, load: false, ignore: true }; }, 71 | lib: function (file) { return { pattern: file, instrument: false, load: true, ignore: false }; }, 72 | mock: function (file) { return { pattern: file, instrument: false, load: false, ignore: false }; }, 73 | specs: function (file) { return { pattern: file, instrument: true, load: true, ignore: false }; }, 74 | src: function (file) { return { pattern: file, instrument: true, load: true, ignore: false }; }, 75 | }); 76 | ``` 77 | 78 | Note that if you have set defaults in your Wallaby config file, these will be overridden by the default mappings. 79 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-runner-config", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@babel/code-frame": { 8 | "version": "7.5.5", 9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", 10 | "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", 11 | "dev": true, 12 | "requires": { 13 | "@babel/highlight": "^7.0.0" 14 | } 15 | }, 16 | "@babel/core": { 17 | "version": "7.6.4", 18 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.4.tgz", 19 | "integrity": "sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ==", 20 | "dev": true, 21 | "requires": { 22 | "@babel/code-frame": "^7.5.5", 23 | "@babel/generator": "^7.6.4", 24 | "@babel/helpers": "^7.6.2", 25 | "@babel/parser": "^7.6.4", 26 | "@babel/template": "^7.6.0", 27 | "@babel/traverse": "^7.6.3", 28 | "@babel/types": "^7.6.3", 29 | "convert-source-map": "^1.1.0", 30 | "debug": "^4.1.0", 31 | "json5": "^2.1.0", 32 | "lodash": "^4.17.13", 33 | "resolve": "^1.3.2", 34 | "semver": "^5.4.1", 35 | "source-map": "^0.5.0" 36 | }, 37 | "dependencies": { 38 | "debug": { 39 | "version": "4.1.1", 40 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 41 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 42 | "dev": true, 43 | "requires": { 44 | "ms": "^2.1.1" 45 | } 46 | }, 47 | "json5": { 48 | "version": "2.1.1", 49 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", 50 | "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", 51 | "dev": true, 52 | "requires": { 53 | "minimist": "^1.2.0" 54 | } 55 | }, 56 | "lodash": { 57 | "version": "4.17.15", 58 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 59 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 60 | "dev": true 61 | }, 62 | "minimist": { 63 | "version": "1.2.0", 64 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 65 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 66 | "dev": true 67 | }, 68 | "ms": { 69 | "version": "2.1.2", 70 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 71 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 72 | "dev": true 73 | } 74 | } 75 | }, 76 | "@babel/generator": { 77 | "version": "7.6.4", 78 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.4.tgz", 79 | "integrity": "sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w==", 80 | "dev": true, 81 | "requires": { 82 | "@babel/types": "^7.6.3", 83 | "jsesc": "^2.5.1", 84 | "lodash": "^4.17.13", 85 | "source-map": "^0.5.0" 86 | }, 87 | "dependencies": { 88 | "jsesc": { 89 | "version": "2.5.2", 90 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 91 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 92 | "dev": true 93 | }, 94 | "lodash": { 95 | "version": "4.17.15", 96 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 97 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 98 | "dev": true 99 | } 100 | } 101 | }, 102 | "@babel/helper-annotate-as-pure": { 103 | "version": "7.0.0", 104 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", 105 | "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", 106 | "dev": true, 107 | "requires": { 108 | "@babel/types": "^7.0.0" 109 | } 110 | }, 111 | "@babel/helper-builder-binary-assignment-operator-visitor": { 112 | "version": "7.1.0", 113 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", 114 | "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", 115 | "dev": true, 116 | "requires": { 117 | "@babel/helper-explode-assignable-expression": "^7.1.0", 118 | "@babel/types": "^7.0.0" 119 | } 120 | }, 121 | "@babel/helper-call-delegate": { 122 | "version": "7.4.4", 123 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", 124 | "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", 125 | "dev": true, 126 | "requires": { 127 | "@babel/helper-hoist-variables": "^7.4.4", 128 | "@babel/traverse": "^7.4.4", 129 | "@babel/types": "^7.4.4" 130 | } 131 | }, 132 | "@babel/helper-define-map": { 133 | "version": "7.5.5", 134 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz", 135 | "integrity": "sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg==", 136 | "dev": true, 137 | "requires": { 138 | "@babel/helper-function-name": "^7.1.0", 139 | "@babel/types": "^7.5.5", 140 | "lodash": "^4.17.13" 141 | }, 142 | "dependencies": { 143 | "lodash": { 144 | "version": "4.17.15", 145 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 146 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 147 | "dev": true 148 | } 149 | } 150 | }, 151 | "@babel/helper-explode-assignable-expression": { 152 | "version": "7.1.0", 153 | "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", 154 | "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", 155 | "dev": true, 156 | "requires": { 157 | "@babel/traverse": "^7.1.0", 158 | "@babel/types": "^7.0.0" 159 | } 160 | }, 161 | "@babel/helper-function-name": { 162 | "version": "7.1.0", 163 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", 164 | "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", 165 | "dev": true, 166 | "requires": { 167 | "@babel/helper-get-function-arity": "^7.0.0", 168 | "@babel/template": "^7.1.0", 169 | "@babel/types": "^7.0.0" 170 | } 171 | }, 172 | "@babel/helper-get-function-arity": { 173 | "version": "7.0.0", 174 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", 175 | "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", 176 | "dev": true, 177 | "requires": { 178 | "@babel/types": "^7.0.0" 179 | } 180 | }, 181 | "@babel/helper-hoist-variables": { 182 | "version": "7.4.4", 183 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", 184 | "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", 185 | "dev": true, 186 | "requires": { 187 | "@babel/types": "^7.4.4" 188 | } 189 | }, 190 | "@babel/helper-member-expression-to-functions": { 191 | "version": "7.5.5", 192 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz", 193 | "integrity": "sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA==", 194 | "dev": true, 195 | "requires": { 196 | "@babel/types": "^7.5.5" 197 | } 198 | }, 199 | "@babel/helper-module-imports": { 200 | "version": "7.0.0", 201 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", 202 | "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", 203 | "dev": true, 204 | "requires": { 205 | "@babel/types": "^7.0.0" 206 | } 207 | }, 208 | "@babel/helper-module-transforms": { 209 | "version": "7.5.5", 210 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz", 211 | "integrity": "sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw==", 212 | "dev": true, 213 | "requires": { 214 | "@babel/helper-module-imports": "^7.0.0", 215 | "@babel/helper-simple-access": "^7.1.0", 216 | "@babel/helper-split-export-declaration": "^7.4.4", 217 | "@babel/template": "^7.4.4", 218 | "@babel/types": "^7.5.5", 219 | "lodash": "^4.17.13" 220 | }, 221 | "dependencies": { 222 | "lodash": { 223 | "version": "4.17.15", 224 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 225 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 226 | "dev": true 227 | } 228 | } 229 | }, 230 | "@babel/helper-optimise-call-expression": { 231 | "version": "7.0.0", 232 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", 233 | "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", 234 | "dev": true, 235 | "requires": { 236 | "@babel/types": "^7.0.0" 237 | } 238 | }, 239 | "@babel/helper-plugin-utils": { 240 | "version": "7.0.0", 241 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", 242 | "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", 243 | "dev": true 244 | }, 245 | "@babel/helper-regex": { 246 | "version": "7.5.5", 247 | "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", 248 | "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", 249 | "dev": true, 250 | "requires": { 251 | "lodash": "^4.17.13" 252 | }, 253 | "dependencies": { 254 | "lodash": { 255 | "version": "4.17.15", 256 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 257 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 258 | "dev": true 259 | } 260 | } 261 | }, 262 | "@babel/helper-remap-async-to-generator": { 263 | "version": "7.1.0", 264 | "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", 265 | "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", 266 | "dev": true, 267 | "requires": { 268 | "@babel/helper-annotate-as-pure": "^7.0.0", 269 | "@babel/helper-wrap-function": "^7.1.0", 270 | "@babel/template": "^7.1.0", 271 | "@babel/traverse": "^7.1.0", 272 | "@babel/types": "^7.0.0" 273 | } 274 | }, 275 | "@babel/helper-replace-supers": { 276 | "version": "7.5.5", 277 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz", 278 | "integrity": "sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg==", 279 | "dev": true, 280 | "requires": { 281 | "@babel/helper-member-expression-to-functions": "^7.5.5", 282 | "@babel/helper-optimise-call-expression": "^7.0.0", 283 | "@babel/traverse": "^7.5.5", 284 | "@babel/types": "^7.5.5" 285 | } 286 | }, 287 | "@babel/helper-simple-access": { 288 | "version": "7.1.0", 289 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", 290 | "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", 291 | "dev": true, 292 | "requires": { 293 | "@babel/template": "^7.1.0", 294 | "@babel/types": "^7.0.0" 295 | } 296 | }, 297 | "@babel/helper-split-export-declaration": { 298 | "version": "7.4.4", 299 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", 300 | "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", 301 | "dev": true, 302 | "requires": { 303 | "@babel/types": "^7.4.4" 304 | } 305 | }, 306 | "@babel/helper-wrap-function": { 307 | "version": "7.2.0", 308 | "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", 309 | "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", 310 | "dev": true, 311 | "requires": { 312 | "@babel/helper-function-name": "^7.1.0", 313 | "@babel/template": "^7.1.0", 314 | "@babel/traverse": "^7.1.0", 315 | "@babel/types": "^7.2.0" 316 | } 317 | }, 318 | "@babel/helpers": { 319 | "version": "7.6.2", 320 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.2.tgz", 321 | "integrity": "sha512-3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA==", 322 | "dev": true, 323 | "requires": { 324 | "@babel/template": "^7.6.0", 325 | "@babel/traverse": "^7.6.2", 326 | "@babel/types": "^7.6.0" 327 | } 328 | }, 329 | "@babel/highlight": { 330 | "version": "7.5.0", 331 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", 332 | "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", 333 | "dev": true, 334 | "requires": { 335 | "chalk": "^2.0.0", 336 | "esutils": "^2.0.2", 337 | "js-tokens": "^4.0.0" 338 | }, 339 | "dependencies": { 340 | "ansi-styles": { 341 | "version": "3.2.1", 342 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 343 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 344 | "dev": true, 345 | "requires": { 346 | "color-convert": "^1.9.0" 347 | } 348 | }, 349 | "chalk": { 350 | "version": "2.4.2", 351 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 352 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 353 | "dev": true, 354 | "requires": { 355 | "ansi-styles": "^3.2.1", 356 | "escape-string-regexp": "^1.0.5", 357 | "supports-color": "^5.3.0" 358 | } 359 | }, 360 | "js-tokens": { 361 | "version": "4.0.0", 362 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 363 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 364 | "dev": true 365 | }, 366 | "supports-color": { 367 | "version": "5.5.0", 368 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 369 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 370 | "dev": true, 371 | "requires": { 372 | "has-flag": "^3.0.0" 373 | } 374 | } 375 | } 376 | }, 377 | "@babel/parser": { 378 | "version": "7.6.4", 379 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.4.tgz", 380 | "integrity": "sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==", 381 | "dev": true 382 | }, 383 | "@babel/plugin-proposal-async-generator-functions": { 384 | "version": "7.2.0", 385 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", 386 | "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", 387 | "dev": true, 388 | "requires": { 389 | "@babel/helper-plugin-utils": "^7.0.0", 390 | "@babel/helper-remap-async-to-generator": "^7.1.0", 391 | "@babel/plugin-syntax-async-generators": "^7.2.0" 392 | } 393 | }, 394 | "@babel/plugin-proposal-dynamic-import": { 395 | "version": "7.5.0", 396 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz", 397 | "integrity": "sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw==", 398 | "dev": true, 399 | "requires": { 400 | "@babel/helper-plugin-utils": "^7.0.0", 401 | "@babel/plugin-syntax-dynamic-import": "^7.2.0" 402 | } 403 | }, 404 | "@babel/plugin-proposal-json-strings": { 405 | "version": "7.2.0", 406 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", 407 | "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", 408 | "dev": true, 409 | "requires": { 410 | "@babel/helper-plugin-utils": "^7.0.0", 411 | "@babel/plugin-syntax-json-strings": "^7.2.0" 412 | } 413 | }, 414 | "@babel/plugin-proposal-object-rest-spread": { 415 | "version": "7.6.2", 416 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz", 417 | "integrity": "sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw==", 418 | "dev": true, 419 | "requires": { 420 | "@babel/helper-plugin-utils": "^7.0.0", 421 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0" 422 | } 423 | }, 424 | "@babel/plugin-proposal-optional-catch-binding": { 425 | "version": "7.2.0", 426 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", 427 | "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", 428 | "dev": true, 429 | "requires": { 430 | "@babel/helper-plugin-utils": "^7.0.0", 431 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" 432 | } 433 | }, 434 | "@babel/plugin-proposal-unicode-property-regex": { 435 | "version": "7.6.2", 436 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.6.2.tgz", 437 | "integrity": "sha512-NxHETdmpeSCtiatMRYWVJo7266rrvAC3DTeG5exQBIH/fMIUK7ejDNznBbn3HQl/o9peymRRg7Yqkx6PdUXmMw==", 438 | "dev": true, 439 | "requires": { 440 | "@babel/helper-plugin-utils": "^7.0.0", 441 | "@babel/helper-regex": "^7.4.4", 442 | "regexpu-core": "^4.6.0" 443 | }, 444 | "dependencies": { 445 | "regexpu-core": { 446 | "version": "4.6.0", 447 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 448 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 449 | "dev": true, 450 | "requires": { 451 | "regenerate": "^1.4.0", 452 | "regenerate-unicode-properties": "^8.1.0", 453 | "regjsgen": "^0.5.0", 454 | "regjsparser": "^0.6.0", 455 | "unicode-match-property-ecmascript": "^1.0.4", 456 | "unicode-match-property-value-ecmascript": "^1.1.0" 457 | } 458 | }, 459 | "regjsgen": { 460 | "version": "0.5.1", 461 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 462 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 463 | "dev": true 464 | }, 465 | "regjsparser": { 466 | "version": "0.6.0", 467 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 468 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 469 | "dev": true, 470 | "requires": { 471 | "jsesc": "~0.5.0" 472 | } 473 | } 474 | } 475 | }, 476 | "@babel/plugin-syntax-async-generators": { 477 | "version": "7.2.0", 478 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", 479 | "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", 480 | "dev": true, 481 | "requires": { 482 | "@babel/helper-plugin-utils": "^7.0.0" 483 | } 484 | }, 485 | "@babel/plugin-syntax-dynamic-import": { 486 | "version": "7.2.0", 487 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", 488 | "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", 489 | "dev": true, 490 | "requires": { 491 | "@babel/helper-plugin-utils": "^7.0.0" 492 | } 493 | }, 494 | "@babel/plugin-syntax-json-strings": { 495 | "version": "7.2.0", 496 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", 497 | "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", 498 | "dev": true, 499 | "requires": { 500 | "@babel/helper-plugin-utils": "^7.0.0" 501 | } 502 | }, 503 | "@babel/plugin-syntax-object-rest-spread": { 504 | "version": "7.2.0", 505 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", 506 | "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", 507 | "dev": true, 508 | "requires": { 509 | "@babel/helper-plugin-utils": "^7.0.0" 510 | } 511 | }, 512 | "@babel/plugin-syntax-optional-catch-binding": { 513 | "version": "7.2.0", 514 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", 515 | "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", 516 | "dev": true, 517 | "requires": { 518 | "@babel/helper-plugin-utils": "^7.0.0" 519 | } 520 | }, 521 | "@babel/plugin-transform-arrow-functions": { 522 | "version": "7.2.0", 523 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", 524 | "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", 525 | "dev": true, 526 | "requires": { 527 | "@babel/helper-plugin-utils": "^7.0.0" 528 | } 529 | }, 530 | "@babel/plugin-transform-async-to-generator": { 531 | "version": "7.5.0", 532 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz", 533 | "integrity": "sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg==", 534 | "dev": true, 535 | "requires": { 536 | "@babel/helper-module-imports": "^7.0.0", 537 | "@babel/helper-plugin-utils": "^7.0.0", 538 | "@babel/helper-remap-async-to-generator": "^7.1.0" 539 | } 540 | }, 541 | "@babel/plugin-transform-block-scoped-functions": { 542 | "version": "7.2.0", 543 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", 544 | "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", 545 | "dev": true, 546 | "requires": { 547 | "@babel/helper-plugin-utils": "^7.0.0" 548 | } 549 | }, 550 | "@babel/plugin-transform-block-scoping": { 551 | "version": "7.6.3", 552 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz", 553 | "integrity": "sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw==", 554 | "dev": true, 555 | "requires": { 556 | "@babel/helper-plugin-utils": "^7.0.0", 557 | "lodash": "^4.17.13" 558 | }, 559 | "dependencies": { 560 | "lodash": { 561 | "version": "4.17.15", 562 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 563 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 564 | "dev": true 565 | } 566 | } 567 | }, 568 | "@babel/plugin-transform-classes": { 569 | "version": "7.5.5", 570 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz", 571 | "integrity": "sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg==", 572 | "dev": true, 573 | "requires": { 574 | "@babel/helper-annotate-as-pure": "^7.0.0", 575 | "@babel/helper-define-map": "^7.5.5", 576 | "@babel/helper-function-name": "^7.1.0", 577 | "@babel/helper-optimise-call-expression": "^7.0.0", 578 | "@babel/helper-plugin-utils": "^7.0.0", 579 | "@babel/helper-replace-supers": "^7.5.5", 580 | "@babel/helper-split-export-declaration": "^7.4.4", 581 | "globals": "^11.1.0" 582 | }, 583 | "dependencies": { 584 | "globals": { 585 | "version": "11.12.0", 586 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 587 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 588 | "dev": true 589 | } 590 | } 591 | }, 592 | "@babel/plugin-transform-computed-properties": { 593 | "version": "7.2.0", 594 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", 595 | "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", 596 | "dev": true, 597 | "requires": { 598 | "@babel/helper-plugin-utils": "^7.0.0" 599 | } 600 | }, 601 | "@babel/plugin-transform-destructuring": { 602 | "version": "7.6.0", 603 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz", 604 | "integrity": "sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ==", 605 | "dev": true, 606 | "requires": { 607 | "@babel/helper-plugin-utils": "^7.0.0" 608 | } 609 | }, 610 | "@babel/plugin-transform-dotall-regex": { 611 | "version": "7.6.2", 612 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.6.2.tgz", 613 | "integrity": "sha512-KGKT9aqKV+9YMZSkowzYoYEiHqgaDhGmPNZlZxX6UeHC4z30nC1J9IrZuGqbYFB1jaIGdv91ujpze0exiVK8bA==", 614 | "dev": true, 615 | "requires": { 616 | "@babel/helper-plugin-utils": "^7.0.0", 617 | "@babel/helper-regex": "^7.4.4", 618 | "regexpu-core": "^4.6.0" 619 | }, 620 | "dependencies": { 621 | "regexpu-core": { 622 | "version": "4.6.0", 623 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 624 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 625 | "dev": true, 626 | "requires": { 627 | "regenerate": "^1.4.0", 628 | "regenerate-unicode-properties": "^8.1.0", 629 | "regjsgen": "^0.5.0", 630 | "regjsparser": "^0.6.0", 631 | "unicode-match-property-ecmascript": "^1.0.4", 632 | "unicode-match-property-value-ecmascript": "^1.1.0" 633 | } 634 | }, 635 | "regjsgen": { 636 | "version": "0.5.1", 637 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 638 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 639 | "dev": true 640 | }, 641 | "regjsparser": { 642 | "version": "0.6.0", 643 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 644 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 645 | "dev": true, 646 | "requires": { 647 | "jsesc": "~0.5.0" 648 | } 649 | } 650 | } 651 | }, 652 | "@babel/plugin-transform-duplicate-keys": { 653 | "version": "7.5.0", 654 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz", 655 | "integrity": "sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==", 656 | "dev": true, 657 | "requires": { 658 | "@babel/helper-plugin-utils": "^7.0.0" 659 | } 660 | }, 661 | "@babel/plugin-transform-exponentiation-operator": { 662 | "version": "7.2.0", 663 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", 664 | "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", 665 | "dev": true, 666 | "requires": { 667 | "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", 668 | "@babel/helper-plugin-utils": "^7.0.0" 669 | } 670 | }, 671 | "@babel/plugin-transform-for-of": { 672 | "version": "7.4.4", 673 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", 674 | "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", 675 | "dev": true, 676 | "requires": { 677 | "@babel/helper-plugin-utils": "^7.0.0" 678 | } 679 | }, 680 | "@babel/plugin-transform-function-name": { 681 | "version": "7.4.4", 682 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", 683 | "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", 684 | "dev": true, 685 | "requires": { 686 | "@babel/helper-function-name": "^7.1.0", 687 | "@babel/helper-plugin-utils": "^7.0.0" 688 | } 689 | }, 690 | "@babel/plugin-transform-literals": { 691 | "version": "7.2.0", 692 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", 693 | "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", 694 | "dev": true, 695 | "requires": { 696 | "@babel/helper-plugin-utils": "^7.0.0" 697 | } 698 | }, 699 | "@babel/plugin-transform-member-expression-literals": { 700 | "version": "7.2.0", 701 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", 702 | "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", 703 | "dev": true, 704 | "requires": { 705 | "@babel/helper-plugin-utils": "^7.0.0" 706 | } 707 | }, 708 | "@babel/plugin-transform-modules-amd": { 709 | "version": "7.5.0", 710 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz", 711 | "integrity": "sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==", 712 | "dev": true, 713 | "requires": { 714 | "@babel/helper-module-transforms": "^7.1.0", 715 | "@babel/helper-plugin-utils": "^7.0.0", 716 | "babel-plugin-dynamic-import-node": "^2.3.0" 717 | } 718 | }, 719 | "@babel/plugin-transform-modules-commonjs": { 720 | "version": "7.6.0", 721 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz", 722 | "integrity": "sha512-Ma93Ix95PNSEngqomy5LSBMAQvYKVe3dy+JlVJSHEXZR5ASL9lQBedMiCyVtmTLraIDVRE3ZjTZvmXXD2Ozw3g==", 723 | "dev": true, 724 | "requires": { 725 | "@babel/helper-module-transforms": "^7.4.4", 726 | "@babel/helper-plugin-utils": "^7.0.0", 727 | "@babel/helper-simple-access": "^7.1.0", 728 | "babel-plugin-dynamic-import-node": "^2.3.0" 729 | } 730 | }, 731 | "@babel/plugin-transform-modules-systemjs": { 732 | "version": "7.5.0", 733 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz", 734 | "integrity": "sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg==", 735 | "dev": true, 736 | "requires": { 737 | "@babel/helper-hoist-variables": "^7.4.4", 738 | "@babel/helper-plugin-utils": "^7.0.0", 739 | "babel-plugin-dynamic-import-node": "^2.3.0" 740 | } 741 | }, 742 | "@babel/plugin-transform-modules-umd": { 743 | "version": "7.2.0", 744 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", 745 | "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", 746 | "dev": true, 747 | "requires": { 748 | "@babel/helper-module-transforms": "^7.1.0", 749 | "@babel/helper-plugin-utils": "^7.0.0" 750 | } 751 | }, 752 | "@babel/plugin-transform-named-capturing-groups-regex": { 753 | "version": "7.6.3", 754 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.3.tgz", 755 | "integrity": "sha512-jTkk7/uE6H2s5w6VlMHeWuH+Pcy2lmdwFoeWCVnvIrDUnB5gQqTVI8WfmEAhF2CDEarGrknZcmSFg1+bkfCoSw==", 756 | "dev": true, 757 | "requires": { 758 | "regexpu-core": "^4.6.0" 759 | }, 760 | "dependencies": { 761 | "regexpu-core": { 762 | "version": "4.6.0", 763 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 764 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 765 | "dev": true, 766 | "requires": { 767 | "regenerate": "^1.4.0", 768 | "regenerate-unicode-properties": "^8.1.0", 769 | "regjsgen": "^0.5.0", 770 | "regjsparser": "^0.6.0", 771 | "unicode-match-property-ecmascript": "^1.0.4", 772 | "unicode-match-property-value-ecmascript": "^1.1.0" 773 | } 774 | }, 775 | "regjsgen": { 776 | "version": "0.5.1", 777 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 778 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 779 | "dev": true 780 | }, 781 | "regjsparser": { 782 | "version": "0.6.0", 783 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 784 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 785 | "dev": true, 786 | "requires": { 787 | "jsesc": "~0.5.0" 788 | } 789 | } 790 | } 791 | }, 792 | "@babel/plugin-transform-new-target": { 793 | "version": "7.4.4", 794 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", 795 | "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", 796 | "dev": true, 797 | "requires": { 798 | "@babel/helper-plugin-utils": "^7.0.0" 799 | } 800 | }, 801 | "@babel/plugin-transform-object-super": { 802 | "version": "7.5.5", 803 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz", 804 | "integrity": "sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==", 805 | "dev": true, 806 | "requires": { 807 | "@babel/helper-plugin-utils": "^7.0.0", 808 | "@babel/helper-replace-supers": "^7.5.5" 809 | } 810 | }, 811 | "@babel/plugin-transform-parameters": { 812 | "version": "7.4.4", 813 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", 814 | "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", 815 | "dev": true, 816 | "requires": { 817 | "@babel/helper-call-delegate": "^7.4.4", 818 | "@babel/helper-get-function-arity": "^7.0.0", 819 | "@babel/helper-plugin-utils": "^7.0.0" 820 | } 821 | }, 822 | "@babel/plugin-transform-property-literals": { 823 | "version": "7.2.0", 824 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", 825 | "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", 826 | "dev": true, 827 | "requires": { 828 | "@babel/helper-plugin-utils": "^7.0.0" 829 | } 830 | }, 831 | "@babel/plugin-transform-regenerator": { 832 | "version": "7.4.5", 833 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", 834 | "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", 835 | "dev": true, 836 | "requires": { 837 | "regenerator-transform": "^0.14.0" 838 | }, 839 | "dependencies": { 840 | "regenerator-transform": { 841 | "version": "0.14.1", 842 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", 843 | "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", 844 | "dev": true, 845 | "requires": { 846 | "private": "^0.1.6" 847 | } 848 | } 849 | } 850 | }, 851 | "@babel/plugin-transform-reserved-words": { 852 | "version": "7.2.0", 853 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", 854 | "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", 855 | "dev": true, 856 | "requires": { 857 | "@babel/helper-plugin-utils": "^7.0.0" 858 | } 859 | }, 860 | "@babel/plugin-transform-shorthand-properties": { 861 | "version": "7.2.0", 862 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", 863 | "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", 864 | "dev": true, 865 | "requires": { 866 | "@babel/helper-plugin-utils": "^7.0.0" 867 | } 868 | }, 869 | "@babel/plugin-transform-spread": { 870 | "version": "7.6.2", 871 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz", 872 | "integrity": "sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg==", 873 | "dev": true, 874 | "requires": { 875 | "@babel/helper-plugin-utils": "^7.0.0" 876 | } 877 | }, 878 | "@babel/plugin-transform-sticky-regex": { 879 | "version": "7.2.0", 880 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", 881 | "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", 882 | "dev": true, 883 | "requires": { 884 | "@babel/helper-plugin-utils": "^7.0.0", 885 | "@babel/helper-regex": "^7.0.0" 886 | } 887 | }, 888 | "@babel/plugin-transform-template-literals": { 889 | "version": "7.4.4", 890 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", 891 | "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", 892 | "dev": true, 893 | "requires": { 894 | "@babel/helper-annotate-as-pure": "^7.0.0", 895 | "@babel/helper-plugin-utils": "^7.0.0" 896 | } 897 | }, 898 | "@babel/plugin-transform-typeof-symbol": { 899 | "version": "7.2.0", 900 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", 901 | "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", 902 | "dev": true, 903 | "requires": { 904 | "@babel/helper-plugin-utils": "^7.0.0" 905 | } 906 | }, 907 | "@babel/plugin-transform-unicode-regex": { 908 | "version": "7.6.2", 909 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.6.2.tgz", 910 | "integrity": "sha512-orZI6cWlR3nk2YmYdb0gImrgCUwb5cBUwjf6Ks6dvNVvXERkwtJWOQaEOjPiu0Gu1Tq6Yq/hruCZZOOi9F34Dw==", 911 | "dev": true, 912 | "requires": { 913 | "@babel/helper-plugin-utils": "^7.0.0", 914 | "@babel/helper-regex": "^7.4.4", 915 | "regexpu-core": "^4.6.0" 916 | }, 917 | "dependencies": { 918 | "regexpu-core": { 919 | "version": "4.6.0", 920 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 921 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 922 | "dev": true, 923 | "requires": { 924 | "regenerate": "^1.4.0", 925 | "regenerate-unicode-properties": "^8.1.0", 926 | "regjsgen": "^0.5.0", 927 | "regjsparser": "^0.6.0", 928 | "unicode-match-property-ecmascript": "^1.0.4", 929 | "unicode-match-property-value-ecmascript": "^1.1.0" 930 | } 931 | }, 932 | "regjsgen": { 933 | "version": "0.5.1", 934 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 935 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 936 | "dev": true 937 | }, 938 | "regjsparser": { 939 | "version": "0.6.0", 940 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 941 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 942 | "dev": true, 943 | "requires": { 944 | "jsesc": "~0.5.0" 945 | } 946 | } 947 | } 948 | }, 949 | "@babel/preset-env": { 950 | "version": "7.6.3", 951 | "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.6.3.tgz", 952 | "integrity": "sha512-CWQkn7EVnwzlOdR5NOm2+pfgSNEZmvGjOhlCHBDq0J8/EStr+G+FvPEiz9B56dR6MoiUFjXhfE4hjLoAKKJtIQ==", 953 | "dev": true, 954 | "requires": { 955 | "@babel/helper-module-imports": "^7.0.0", 956 | "@babel/helper-plugin-utils": "^7.0.0", 957 | "@babel/plugin-proposal-async-generator-functions": "^7.2.0", 958 | "@babel/plugin-proposal-dynamic-import": "^7.5.0", 959 | "@babel/plugin-proposal-json-strings": "^7.2.0", 960 | "@babel/plugin-proposal-object-rest-spread": "^7.6.2", 961 | "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", 962 | "@babel/plugin-proposal-unicode-property-regex": "^7.6.2", 963 | "@babel/plugin-syntax-async-generators": "^7.2.0", 964 | "@babel/plugin-syntax-dynamic-import": "^7.2.0", 965 | "@babel/plugin-syntax-json-strings": "^7.2.0", 966 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0", 967 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", 968 | "@babel/plugin-transform-arrow-functions": "^7.2.0", 969 | "@babel/plugin-transform-async-to-generator": "^7.5.0", 970 | "@babel/plugin-transform-block-scoped-functions": "^7.2.0", 971 | "@babel/plugin-transform-block-scoping": "^7.6.3", 972 | "@babel/plugin-transform-classes": "^7.5.5", 973 | "@babel/plugin-transform-computed-properties": "^7.2.0", 974 | "@babel/plugin-transform-destructuring": "^7.6.0", 975 | "@babel/plugin-transform-dotall-regex": "^7.6.2", 976 | "@babel/plugin-transform-duplicate-keys": "^7.5.0", 977 | "@babel/plugin-transform-exponentiation-operator": "^7.2.0", 978 | "@babel/plugin-transform-for-of": "^7.4.4", 979 | "@babel/plugin-transform-function-name": "^7.4.4", 980 | "@babel/plugin-transform-literals": "^7.2.0", 981 | "@babel/plugin-transform-member-expression-literals": "^7.2.0", 982 | "@babel/plugin-transform-modules-amd": "^7.5.0", 983 | "@babel/plugin-transform-modules-commonjs": "^7.6.0", 984 | "@babel/plugin-transform-modules-systemjs": "^7.5.0", 985 | "@babel/plugin-transform-modules-umd": "^7.2.0", 986 | "@babel/plugin-transform-named-capturing-groups-regex": "^7.6.3", 987 | "@babel/plugin-transform-new-target": "^7.4.4", 988 | "@babel/plugin-transform-object-super": "^7.5.5", 989 | "@babel/plugin-transform-parameters": "^7.4.4", 990 | "@babel/plugin-transform-property-literals": "^7.2.0", 991 | "@babel/plugin-transform-regenerator": "^7.4.5", 992 | "@babel/plugin-transform-reserved-words": "^7.2.0", 993 | "@babel/plugin-transform-shorthand-properties": "^7.2.0", 994 | "@babel/plugin-transform-spread": "^7.6.2", 995 | "@babel/plugin-transform-sticky-regex": "^7.2.0", 996 | "@babel/plugin-transform-template-literals": "^7.4.4", 997 | "@babel/plugin-transform-typeof-symbol": "^7.2.0", 998 | "@babel/plugin-transform-unicode-regex": "^7.6.2", 999 | "@babel/types": "^7.6.3", 1000 | "browserslist": "^4.6.0", 1001 | "core-js-compat": "^3.1.1", 1002 | "invariant": "^2.2.2", 1003 | "js-levenshtein": "^1.1.3", 1004 | "semver": "^5.5.0" 1005 | } 1006 | }, 1007 | "@babel/template": { 1008 | "version": "7.6.0", 1009 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz", 1010 | "integrity": "sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ==", 1011 | "dev": true, 1012 | "requires": { 1013 | "@babel/code-frame": "^7.0.0", 1014 | "@babel/parser": "^7.6.0", 1015 | "@babel/types": "^7.6.0" 1016 | } 1017 | }, 1018 | "@babel/traverse": { 1019 | "version": "7.6.3", 1020 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.3.tgz", 1021 | "integrity": "sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw==", 1022 | "dev": true, 1023 | "requires": { 1024 | "@babel/code-frame": "^7.5.5", 1025 | "@babel/generator": "^7.6.3", 1026 | "@babel/helper-function-name": "^7.1.0", 1027 | "@babel/helper-split-export-declaration": "^7.4.4", 1028 | "@babel/parser": "^7.6.3", 1029 | "@babel/types": "^7.6.3", 1030 | "debug": "^4.1.0", 1031 | "globals": "^11.1.0", 1032 | "lodash": "^4.17.13" 1033 | }, 1034 | "dependencies": { 1035 | "debug": { 1036 | "version": "4.1.1", 1037 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 1038 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 1039 | "dev": true, 1040 | "requires": { 1041 | "ms": "^2.1.1" 1042 | } 1043 | }, 1044 | "globals": { 1045 | "version": "11.12.0", 1046 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 1047 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 1048 | "dev": true 1049 | }, 1050 | "lodash": { 1051 | "version": "4.17.15", 1052 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 1053 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 1054 | "dev": true 1055 | }, 1056 | "ms": { 1057 | "version": "2.1.2", 1058 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1059 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1060 | "dev": true 1061 | } 1062 | } 1063 | }, 1064 | "@babel/types": { 1065 | "version": "7.6.3", 1066 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.3.tgz", 1067 | "integrity": "sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA==", 1068 | "dev": true, 1069 | "requires": { 1070 | "esutils": "^2.0.2", 1071 | "lodash": "^4.17.13", 1072 | "to-fast-properties": "^2.0.0" 1073 | }, 1074 | "dependencies": { 1075 | "lodash": { 1076 | "version": "4.17.15", 1077 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 1078 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 1079 | "dev": true 1080 | }, 1081 | "to-fast-properties": { 1082 | "version": "2.0.0", 1083 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 1084 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", 1085 | "dev": true 1086 | } 1087 | } 1088 | }, 1089 | "acorn": { 1090 | "version": "7.1.1", 1091 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", 1092 | "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", 1093 | "dev": true 1094 | }, 1095 | "acorn-jsx": { 1096 | "version": "5.1.0", 1097 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz", 1098 | "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==", 1099 | "dev": true 1100 | }, 1101 | "ajv": { 1102 | "version": "6.10.2", 1103 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", 1104 | "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", 1105 | "dev": true, 1106 | "requires": { 1107 | "fast-deep-equal": "^2.0.1", 1108 | "fast-json-stable-stringify": "^2.0.0", 1109 | "json-schema-traverse": "^0.4.1", 1110 | "uri-js": "^4.2.2" 1111 | } 1112 | }, 1113 | "ansi-colors": { 1114 | "version": "3.2.3", 1115 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", 1116 | "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", 1117 | "dev": true 1118 | }, 1119 | "ansi-escapes": { 1120 | "version": "4.2.1", 1121 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.1.tgz", 1122 | "integrity": "sha512-Cg3ymMAdN10wOk/VYfLV7KCQyv7EDirJ64500sU7n9UlmioEtDuU5Gd+hj73hXSU/ex7tHJSssmyftDdkMLO8Q==", 1123 | "dev": true, 1124 | "requires": { 1125 | "type-fest": "^0.5.2" 1126 | } 1127 | }, 1128 | "ansi-regex": { 1129 | "version": "2.1.1", 1130 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 1131 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 1132 | "dev": true 1133 | }, 1134 | "ansi-styles": { 1135 | "version": "3.2.1", 1136 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1137 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1138 | "dev": true, 1139 | "requires": { 1140 | "color-convert": "^1.9.0" 1141 | } 1142 | }, 1143 | "append-transform": { 1144 | "version": "1.0.0", 1145 | "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", 1146 | "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", 1147 | "dev": true, 1148 | "requires": { 1149 | "default-require-extensions": "^2.0.0" 1150 | } 1151 | }, 1152 | "archy": { 1153 | "version": "1.0.0", 1154 | "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", 1155 | "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", 1156 | "dev": true 1157 | }, 1158 | "argparse": { 1159 | "version": "1.0.10", 1160 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 1161 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 1162 | "dev": true, 1163 | "requires": { 1164 | "sprintf-js": "~1.0.2" 1165 | }, 1166 | "dependencies": { 1167 | "sprintf-js": { 1168 | "version": "1.0.3", 1169 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 1170 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 1171 | "dev": true 1172 | } 1173 | } 1174 | }, 1175 | "assertion-error": { 1176 | "version": "1.1.0", 1177 | "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", 1178 | "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", 1179 | "dev": true 1180 | }, 1181 | "astral-regex": { 1182 | "version": "1.0.0", 1183 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", 1184 | "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", 1185 | "dev": true 1186 | }, 1187 | "babel-plugin-dynamic-import-node": { 1188 | "version": "2.3.0", 1189 | "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", 1190 | "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", 1191 | "dev": true, 1192 | "requires": { 1193 | "object.assign": "^4.1.0" 1194 | } 1195 | }, 1196 | "balanced-match": { 1197 | "version": "1.0.0", 1198 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 1199 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 1200 | "dev": true 1201 | }, 1202 | "brace-expansion": { 1203 | "version": "1.1.11", 1204 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 1205 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 1206 | "dev": true, 1207 | "requires": { 1208 | "balanced-match": "^1.0.0", 1209 | "concat-map": "0.0.1" 1210 | } 1211 | }, 1212 | "browser-stdout": { 1213 | "version": "1.3.1", 1214 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", 1215 | "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", 1216 | "dev": true 1217 | }, 1218 | "browserslist": { 1219 | "version": "4.7.2", 1220 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.2.tgz", 1221 | "integrity": "sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw==", 1222 | "dev": true, 1223 | "requires": { 1224 | "caniuse-lite": "^1.0.30001004", 1225 | "electron-to-chromium": "^1.3.295", 1226 | "node-releases": "^1.1.38" 1227 | } 1228 | }, 1229 | "caching-transform": { 1230 | "version": "3.0.2", 1231 | "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", 1232 | "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", 1233 | "dev": true, 1234 | "requires": { 1235 | "hasha": "^3.0.0", 1236 | "make-dir": "^2.0.0", 1237 | "package-hash": "^3.0.0", 1238 | "write-file-atomic": "^2.4.2" 1239 | } 1240 | }, 1241 | "callsites": { 1242 | "version": "3.1.0", 1243 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 1244 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 1245 | "dev": true 1246 | }, 1247 | "camelcase": { 1248 | "version": "5.3.1", 1249 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 1250 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", 1251 | "dev": true 1252 | }, 1253 | "caniuse-lite": { 1254 | "version": "1.0.30001006", 1255 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001006.tgz", 1256 | "integrity": "sha512-MXnUVX27aGs/QINz+QG1sWSLDr3P1A3Hq5EUWoIt0T7K24DuvMxZEnh3Y5aHlJW6Bz2aApJdSewdYLd8zQnUuw==", 1257 | "dev": true 1258 | }, 1259 | "chai": { 1260 | "version": "4.2.0", 1261 | "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", 1262 | "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", 1263 | "dev": true, 1264 | "requires": { 1265 | "assertion-error": "^1.1.0", 1266 | "check-error": "^1.0.2", 1267 | "deep-eql": "^3.0.1", 1268 | "get-func-name": "^2.0.0", 1269 | "pathval": "^1.1.0", 1270 | "type-detect": "^4.0.5" 1271 | } 1272 | }, 1273 | "chalk": { 1274 | "version": "2.4.2", 1275 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1276 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1277 | "dev": true, 1278 | "requires": { 1279 | "ansi-styles": "^3.2.1", 1280 | "escape-string-regexp": "^1.0.5", 1281 | "supports-color": "^5.3.0" 1282 | }, 1283 | "dependencies": { 1284 | "supports-color": { 1285 | "version": "5.5.0", 1286 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1287 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1288 | "dev": true, 1289 | "requires": { 1290 | "has-flag": "^3.0.0" 1291 | } 1292 | } 1293 | } 1294 | }, 1295 | "chardet": { 1296 | "version": "0.7.0", 1297 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", 1298 | "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", 1299 | "dev": true 1300 | }, 1301 | "check-error": { 1302 | "version": "1.0.2", 1303 | "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", 1304 | "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", 1305 | "dev": true 1306 | }, 1307 | "cli-cursor": { 1308 | "version": "3.1.0", 1309 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", 1310 | "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", 1311 | "dev": true, 1312 | "requires": { 1313 | "restore-cursor": "^3.1.0" 1314 | } 1315 | }, 1316 | "cli-width": { 1317 | "version": "2.2.0", 1318 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", 1319 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", 1320 | "dev": true 1321 | }, 1322 | "cliui": { 1323 | "version": "4.1.0", 1324 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", 1325 | "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", 1326 | "dev": true, 1327 | "requires": { 1328 | "string-width": "^2.1.1", 1329 | "strip-ansi": "^4.0.0", 1330 | "wrap-ansi": "^2.0.0" 1331 | }, 1332 | "dependencies": { 1333 | "ansi-regex": { 1334 | "version": "3.0.0", 1335 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 1336 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 1337 | "dev": true 1338 | }, 1339 | "strip-ansi": { 1340 | "version": "4.0.0", 1341 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1342 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1343 | "dev": true, 1344 | "requires": { 1345 | "ansi-regex": "^3.0.0" 1346 | } 1347 | } 1348 | } 1349 | }, 1350 | "code-point-at": { 1351 | "version": "1.1.0", 1352 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 1353 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", 1354 | "dev": true 1355 | }, 1356 | "color-convert": { 1357 | "version": "1.9.3", 1358 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 1359 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 1360 | "dev": true, 1361 | "requires": { 1362 | "color-name": "1.1.3" 1363 | } 1364 | }, 1365 | "color-name": { 1366 | "version": "1.1.3", 1367 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1368 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 1369 | "dev": true 1370 | }, 1371 | "commander": { 1372 | "version": "2.20.3", 1373 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", 1374 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", 1375 | "dev": true, 1376 | "optional": true 1377 | }, 1378 | "commondir": { 1379 | "version": "1.0.1", 1380 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", 1381 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", 1382 | "dev": true 1383 | }, 1384 | "concat-map": { 1385 | "version": "0.0.1", 1386 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1387 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 1388 | "dev": true 1389 | }, 1390 | "convert-source-map": { 1391 | "version": "1.6.0", 1392 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", 1393 | "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", 1394 | "dev": true, 1395 | "requires": { 1396 | "safe-buffer": "~5.1.1" 1397 | } 1398 | }, 1399 | "core-js-compat": { 1400 | "version": "3.3.6", 1401 | "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.3.6.tgz", 1402 | "integrity": "sha512-YnwZG/+0/f7Pf6Lr3jxtVAFjtGBW9lsLYcqrxhYJai1GfvrP8DEyEpnNzj/FRQfIkOOfk1j5tTBvPBLWVVJm4A==", 1403 | "dev": true, 1404 | "requires": { 1405 | "browserslist": "^4.7.2", 1406 | "semver": "^6.3.0" 1407 | }, 1408 | "dependencies": { 1409 | "semver": { 1410 | "version": "6.3.0", 1411 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1412 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1413 | "dev": true 1414 | } 1415 | } 1416 | }, 1417 | "cp-file": { 1418 | "version": "6.2.0", 1419 | "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", 1420 | "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", 1421 | "dev": true, 1422 | "requires": { 1423 | "graceful-fs": "^4.1.2", 1424 | "make-dir": "^2.0.0", 1425 | "nested-error-stacks": "^2.0.0", 1426 | "pify": "^4.0.1", 1427 | "safe-buffer": "^5.0.1" 1428 | } 1429 | }, 1430 | "cross-spawn": { 1431 | "version": "6.0.5", 1432 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", 1433 | "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", 1434 | "dev": true, 1435 | "requires": { 1436 | "nice-try": "^1.0.4", 1437 | "path-key": "^2.0.1", 1438 | "semver": "^5.5.0", 1439 | "shebang-command": "^1.2.0", 1440 | "which": "^1.2.9" 1441 | } 1442 | }, 1443 | "debug": { 1444 | "version": "4.1.1", 1445 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 1446 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 1447 | "dev": true, 1448 | "requires": { 1449 | "ms": "^2.1.1" 1450 | } 1451 | }, 1452 | "decamelize": { 1453 | "version": "1.2.0", 1454 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 1455 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 1456 | "dev": true 1457 | }, 1458 | "deep-eql": { 1459 | "version": "3.0.1", 1460 | "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", 1461 | "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", 1462 | "dev": true, 1463 | "requires": { 1464 | "type-detect": "^4.0.0" 1465 | } 1466 | }, 1467 | "deep-is": { 1468 | "version": "0.1.3", 1469 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1470 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 1471 | "dev": true 1472 | }, 1473 | "default-require-extensions": { 1474 | "version": "2.0.0", 1475 | "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", 1476 | "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", 1477 | "dev": true, 1478 | "requires": { 1479 | "strip-bom": "^3.0.0" 1480 | } 1481 | }, 1482 | "define-properties": { 1483 | "version": "1.1.3", 1484 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 1485 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 1486 | "dev": true, 1487 | "requires": { 1488 | "object-keys": "^1.0.12" 1489 | } 1490 | }, 1491 | "diff": { 1492 | "version": "3.5.0", 1493 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", 1494 | "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", 1495 | "dev": true 1496 | }, 1497 | "doctrine": { 1498 | "version": "3.0.0", 1499 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 1500 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 1501 | "dev": true, 1502 | "requires": { 1503 | "esutils": "^2.0.2" 1504 | } 1505 | }, 1506 | "electron-to-chromium": { 1507 | "version": "1.3.302", 1508 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.302.tgz", 1509 | "integrity": "sha512-1qConyiVEbj4xZRBXqtGR003+9tV0rJF0PS6aeO0Ln/UL637js9hdwweCl07meh/kJoI2N4W8q3R3g3F5z46ww==", 1510 | "dev": true 1511 | }, 1512 | "emoji-regex": { 1513 | "version": "7.0.3", 1514 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", 1515 | "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", 1516 | "dev": true 1517 | }, 1518 | "end-of-stream": { 1519 | "version": "1.4.1", 1520 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", 1521 | "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", 1522 | "dev": true, 1523 | "requires": { 1524 | "once": "^1.4.0" 1525 | } 1526 | }, 1527 | "error-ex": { 1528 | "version": "1.3.2", 1529 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1530 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1531 | "dev": true, 1532 | "requires": { 1533 | "is-arrayish": "^0.2.1" 1534 | } 1535 | }, 1536 | "es-abstract": { 1537 | "version": "1.16.0", 1538 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz", 1539 | "integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==", 1540 | "dev": true, 1541 | "requires": { 1542 | "es-to-primitive": "^1.2.0", 1543 | "function-bind": "^1.1.1", 1544 | "has": "^1.0.3", 1545 | "has-symbols": "^1.0.0", 1546 | "is-callable": "^1.1.4", 1547 | "is-regex": "^1.0.4", 1548 | "object-inspect": "^1.6.0", 1549 | "object-keys": "^1.1.1", 1550 | "string.prototype.trimleft": "^2.1.0", 1551 | "string.prototype.trimright": "^2.1.0" 1552 | } 1553 | }, 1554 | "es-to-primitive": { 1555 | "version": "1.2.0", 1556 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", 1557 | "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", 1558 | "dev": true, 1559 | "requires": { 1560 | "is-callable": "^1.1.4", 1561 | "is-date-object": "^1.0.1", 1562 | "is-symbol": "^1.0.2" 1563 | } 1564 | }, 1565 | "es6-error": { 1566 | "version": "4.1.1", 1567 | "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", 1568 | "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", 1569 | "dev": true 1570 | }, 1571 | "escape-string-regexp": { 1572 | "version": "1.0.5", 1573 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1574 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1575 | "dev": true 1576 | }, 1577 | "eslint": { 1578 | "version": "6.6.0", 1579 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.6.0.tgz", 1580 | "integrity": "sha512-PpEBq7b6qY/qrOmpYQ/jTMDYfuQMELR4g4WI1M/NaSDDD/bdcMb+dj4Hgks7p41kW2caXsPsEZAEAyAgjVVC0g==", 1581 | "dev": true, 1582 | "requires": { 1583 | "@babel/code-frame": "^7.0.0", 1584 | "ajv": "^6.10.0", 1585 | "chalk": "^2.1.0", 1586 | "cross-spawn": "^6.0.5", 1587 | "debug": "^4.0.1", 1588 | "doctrine": "^3.0.0", 1589 | "eslint-scope": "^5.0.0", 1590 | "eslint-utils": "^1.4.3", 1591 | "eslint-visitor-keys": "^1.1.0", 1592 | "espree": "^6.1.2", 1593 | "esquery": "^1.0.1", 1594 | "esutils": "^2.0.2", 1595 | "file-entry-cache": "^5.0.1", 1596 | "functional-red-black-tree": "^1.0.1", 1597 | "glob-parent": "^5.0.0", 1598 | "globals": "^11.7.0", 1599 | "ignore": "^4.0.6", 1600 | "import-fresh": "^3.0.0", 1601 | "imurmurhash": "^0.1.4", 1602 | "inquirer": "^7.0.0", 1603 | "is-glob": "^4.0.0", 1604 | "js-yaml": "^3.13.1", 1605 | "json-stable-stringify-without-jsonify": "^1.0.1", 1606 | "levn": "^0.3.0", 1607 | "lodash": "^4.17.14", 1608 | "minimatch": "^3.0.4", 1609 | "mkdirp": "^0.5.1", 1610 | "natural-compare": "^1.4.0", 1611 | "optionator": "^0.8.2", 1612 | "progress": "^2.0.0", 1613 | "regexpp": "^2.0.1", 1614 | "semver": "^6.1.2", 1615 | "strip-ansi": "^5.2.0", 1616 | "strip-json-comments": "^3.0.1", 1617 | "table": "^5.2.3", 1618 | "text-table": "^0.2.0", 1619 | "v8-compile-cache": "^2.0.3" 1620 | }, 1621 | "dependencies": { 1622 | "ansi-regex": { 1623 | "version": "4.1.0", 1624 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 1625 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 1626 | "dev": true 1627 | }, 1628 | "ansi-styles": { 1629 | "version": "3.2.1", 1630 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1631 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1632 | "dev": true, 1633 | "requires": { 1634 | "color-convert": "^1.9.0" 1635 | } 1636 | }, 1637 | "chalk": { 1638 | "version": "2.4.2", 1639 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1640 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1641 | "dev": true, 1642 | "requires": { 1643 | "ansi-styles": "^3.2.1", 1644 | "escape-string-regexp": "^1.0.5", 1645 | "supports-color": "^5.3.0" 1646 | } 1647 | }, 1648 | "debug": { 1649 | "version": "4.1.1", 1650 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 1651 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 1652 | "dev": true, 1653 | "requires": { 1654 | "ms": "^2.1.1" 1655 | } 1656 | }, 1657 | "globals": { 1658 | "version": "11.12.0", 1659 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 1660 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 1661 | "dev": true 1662 | }, 1663 | "lodash": { 1664 | "version": "4.17.15", 1665 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 1666 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 1667 | "dev": true 1668 | }, 1669 | "ms": { 1670 | "version": "2.1.2", 1671 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1672 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1673 | "dev": true 1674 | }, 1675 | "natural-compare": { 1676 | "version": "1.4.0", 1677 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 1678 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 1679 | "dev": true 1680 | }, 1681 | "semver": { 1682 | "version": "6.3.0", 1683 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1684 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1685 | "dev": true 1686 | }, 1687 | "strip-ansi": { 1688 | "version": "5.2.0", 1689 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 1690 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 1691 | "dev": true, 1692 | "requires": { 1693 | "ansi-regex": "^4.1.0" 1694 | } 1695 | }, 1696 | "strip-json-comments": { 1697 | "version": "3.0.1", 1698 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", 1699 | "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", 1700 | "dev": true 1701 | }, 1702 | "supports-color": { 1703 | "version": "5.5.0", 1704 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1705 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1706 | "dev": true, 1707 | "requires": { 1708 | "has-flag": "^3.0.0" 1709 | } 1710 | } 1711 | } 1712 | }, 1713 | "eslint-config-prettier": { 1714 | "version": "6.5.0", 1715 | "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.5.0.tgz", 1716 | "integrity": "sha512-cjXp8SbO9VFGW/Z7mbTydqS9to8Z58E5aYhj3e1+Hx7lS9s6gL5ILKNpCqZAFOVYRcSkWPFYljHrEh8QFEK5EQ==", 1717 | "dev": true, 1718 | "requires": { 1719 | "get-stdin": "^6.0.0" 1720 | }, 1721 | "dependencies": { 1722 | "get-stdin": { 1723 | "version": "6.0.0", 1724 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", 1725 | "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", 1726 | "dev": true 1727 | } 1728 | } 1729 | }, 1730 | "eslint-plugin-prettier": { 1731 | "version": "3.1.1", 1732 | "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.1.tgz", 1733 | "integrity": "sha512-A+TZuHZ0KU0cnn56/9mfR7/KjUJ9QNVXUhwvRFSR7PGPe0zQR6PTkmyqg1AtUUEOzTqeRsUwyKFh0oVZKVCrtA==", 1734 | "dev": true, 1735 | "requires": { 1736 | "prettier-linter-helpers": "^1.0.0" 1737 | } 1738 | }, 1739 | "eslint-scope": { 1740 | "version": "5.0.0", 1741 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", 1742 | "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", 1743 | "dev": true, 1744 | "requires": { 1745 | "esrecurse": "^4.1.0", 1746 | "estraverse": "^4.1.1" 1747 | } 1748 | }, 1749 | "eslint-utils": { 1750 | "version": "1.4.3", 1751 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", 1752 | "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", 1753 | "dev": true, 1754 | "requires": { 1755 | "eslint-visitor-keys": "^1.1.0" 1756 | } 1757 | }, 1758 | "eslint-visitor-keys": { 1759 | "version": "1.1.0", 1760 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", 1761 | "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", 1762 | "dev": true 1763 | }, 1764 | "espree": { 1765 | "version": "6.1.2", 1766 | "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz", 1767 | "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==", 1768 | "dev": true, 1769 | "requires": { 1770 | "acorn": "^7.1.0", 1771 | "acorn-jsx": "^5.1.0", 1772 | "eslint-visitor-keys": "^1.1.0" 1773 | } 1774 | }, 1775 | "esprima": { 1776 | "version": "4.0.1", 1777 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 1778 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 1779 | "dev": true 1780 | }, 1781 | "esquery": { 1782 | "version": "1.0.1", 1783 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", 1784 | "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", 1785 | "dev": true, 1786 | "requires": { 1787 | "estraverse": "^4.0.0" 1788 | } 1789 | }, 1790 | "esrecurse": { 1791 | "version": "4.2.1", 1792 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", 1793 | "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", 1794 | "dev": true, 1795 | "requires": { 1796 | "estraverse": "^4.1.0" 1797 | } 1798 | }, 1799 | "estraverse": { 1800 | "version": "4.2.0", 1801 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 1802 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", 1803 | "dev": true 1804 | }, 1805 | "esutils": { 1806 | "version": "2.0.2", 1807 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1808 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 1809 | "dev": true 1810 | }, 1811 | "execa": { 1812 | "version": "1.0.0", 1813 | "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", 1814 | "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", 1815 | "dev": true, 1816 | "requires": { 1817 | "cross-spawn": "^6.0.0", 1818 | "get-stream": "^4.0.0", 1819 | "is-stream": "^1.1.0", 1820 | "npm-run-path": "^2.0.0", 1821 | "p-finally": "^1.0.0", 1822 | "signal-exit": "^3.0.0", 1823 | "strip-eof": "^1.0.0" 1824 | } 1825 | }, 1826 | "external-editor": { 1827 | "version": "3.1.0", 1828 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", 1829 | "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", 1830 | "dev": true, 1831 | "requires": { 1832 | "chardet": "^0.7.0", 1833 | "iconv-lite": "^0.4.24", 1834 | "tmp": "^0.0.33" 1835 | } 1836 | }, 1837 | "fast-deep-equal": { 1838 | "version": "2.0.1", 1839 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", 1840 | "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", 1841 | "dev": true 1842 | }, 1843 | "fast-diff": { 1844 | "version": "1.2.0", 1845 | "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", 1846 | "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", 1847 | "dev": true 1848 | }, 1849 | "fast-json-stable-stringify": { 1850 | "version": "2.0.0", 1851 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", 1852 | "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", 1853 | "dev": true 1854 | }, 1855 | "fast-levenshtein": { 1856 | "version": "2.0.6", 1857 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1858 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1859 | "dev": true 1860 | }, 1861 | "figures": { 1862 | "version": "3.1.0", 1863 | "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", 1864 | "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==", 1865 | "dev": true, 1866 | "requires": { 1867 | "escape-string-regexp": "^1.0.5" 1868 | } 1869 | }, 1870 | "file-entry-cache": { 1871 | "version": "5.0.1", 1872 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", 1873 | "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", 1874 | "dev": true, 1875 | "requires": { 1876 | "flat-cache": "^2.0.1" 1877 | } 1878 | }, 1879 | "find-cache-dir": { 1880 | "version": "2.1.0", 1881 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", 1882 | "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", 1883 | "dev": true, 1884 | "requires": { 1885 | "commondir": "^1.0.1", 1886 | "make-dir": "^2.0.0", 1887 | "pkg-dir": "^3.0.0" 1888 | } 1889 | }, 1890 | "find-up": { 1891 | "version": "3.0.0", 1892 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", 1893 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", 1894 | "dev": true, 1895 | "requires": { 1896 | "locate-path": "^3.0.0" 1897 | } 1898 | }, 1899 | "flat": { 1900 | "version": "4.1.0", 1901 | "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", 1902 | "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", 1903 | "dev": true, 1904 | "requires": { 1905 | "is-buffer": "~2.0.3" 1906 | } 1907 | }, 1908 | "flat-cache": { 1909 | "version": "2.0.1", 1910 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", 1911 | "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", 1912 | "dev": true, 1913 | "requires": { 1914 | "flatted": "^2.0.0", 1915 | "rimraf": "2.6.3", 1916 | "write": "1.0.3" 1917 | } 1918 | }, 1919 | "flatted": { 1920 | "version": "2.0.1", 1921 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", 1922 | "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", 1923 | "dev": true 1924 | }, 1925 | "foreground-child": { 1926 | "version": "1.5.6", 1927 | "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", 1928 | "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", 1929 | "dev": true, 1930 | "requires": { 1931 | "cross-spawn": "^4", 1932 | "signal-exit": "^3.0.0" 1933 | }, 1934 | "dependencies": { 1935 | "cross-spawn": { 1936 | "version": "4.0.2", 1937 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", 1938 | "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", 1939 | "dev": true, 1940 | "requires": { 1941 | "lru-cache": "^4.0.1", 1942 | "which": "^1.2.9" 1943 | } 1944 | } 1945 | } 1946 | }, 1947 | "fs.realpath": { 1948 | "version": "1.0.0", 1949 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1950 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1951 | "dev": true 1952 | }, 1953 | "function-bind": { 1954 | "version": "1.1.1", 1955 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1956 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1957 | "dev": true 1958 | }, 1959 | "functional-red-black-tree": { 1960 | "version": "1.0.1", 1961 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 1962 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 1963 | "dev": true 1964 | }, 1965 | "get-caller-file": { 1966 | "version": "2.0.5", 1967 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 1968 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", 1969 | "dev": true 1970 | }, 1971 | "get-func-name": { 1972 | "version": "2.0.0", 1973 | "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", 1974 | "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", 1975 | "dev": true 1976 | }, 1977 | "get-stream": { 1978 | "version": "4.1.0", 1979 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 1980 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 1981 | "dev": true, 1982 | "requires": { 1983 | "pump": "^3.0.0" 1984 | } 1985 | }, 1986 | "glob": { 1987 | "version": "7.1.5", 1988 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz", 1989 | "integrity": "sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ==", 1990 | "dev": true, 1991 | "requires": { 1992 | "fs.realpath": "^1.0.0", 1993 | "inflight": "^1.0.4", 1994 | "inherits": "2", 1995 | "minimatch": "^3.0.4", 1996 | "once": "^1.3.0", 1997 | "path-is-absolute": "^1.0.0" 1998 | } 1999 | }, 2000 | "glob-parent": { 2001 | "version": "5.1.0", 2002 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", 2003 | "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", 2004 | "dev": true, 2005 | "requires": { 2006 | "is-glob": "^4.0.1" 2007 | } 2008 | }, 2009 | "graceful-fs": { 2010 | "version": "4.2.3", 2011 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", 2012 | "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", 2013 | "dev": true 2014 | }, 2015 | "growl": { 2016 | "version": "1.10.5", 2017 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", 2018 | "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", 2019 | "dev": true 2020 | }, 2021 | "handlebars": { 2022 | "version": "4.5.1", 2023 | "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", 2024 | "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", 2025 | "dev": true, 2026 | "requires": { 2027 | "neo-async": "^2.6.0", 2028 | "optimist": "^0.6.1", 2029 | "source-map": "^0.6.1", 2030 | "uglify-js": "^3.1.4" 2031 | }, 2032 | "dependencies": { 2033 | "source-map": { 2034 | "version": "0.6.1", 2035 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 2036 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 2037 | "dev": true 2038 | } 2039 | } 2040 | }, 2041 | "has": { 2042 | "version": "1.0.3", 2043 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 2044 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 2045 | "dev": true, 2046 | "requires": { 2047 | "function-bind": "^1.1.1" 2048 | } 2049 | }, 2050 | "has-flag": { 2051 | "version": "3.0.0", 2052 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 2053 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 2054 | "dev": true 2055 | }, 2056 | "has-symbols": { 2057 | "version": "1.0.0", 2058 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", 2059 | "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", 2060 | "dev": true 2061 | }, 2062 | "hasha": { 2063 | "version": "3.0.0", 2064 | "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", 2065 | "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", 2066 | "dev": true, 2067 | "requires": { 2068 | "is-stream": "^1.0.1" 2069 | } 2070 | }, 2071 | "he": { 2072 | "version": "1.2.0", 2073 | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 2074 | "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", 2075 | "dev": true 2076 | }, 2077 | "hosted-git-info": { 2078 | "version": "2.8.5", 2079 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", 2080 | "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", 2081 | "dev": true 2082 | }, 2083 | "iconv-lite": { 2084 | "version": "0.4.24", 2085 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 2086 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 2087 | "dev": true, 2088 | "requires": { 2089 | "safer-buffer": ">= 2.1.2 < 3" 2090 | } 2091 | }, 2092 | "ignore": { 2093 | "version": "4.0.6", 2094 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", 2095 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", 2096 | "dev": true 2097 | }, 2098 | "import-fresh": { 2099 | "version": "3.1.0", 2100 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", 2101 | "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", 2102 | "dev": true, 2103 | "requires": { 2104 | "parent-module": "^1.0.0", 2105 | "resolve-from": "^4.0.0" 2106 | }, 2107 | "dependencies": { 2108 | "resolve-from": { 2109 | "version": "4.0.0", 2110 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 2111 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 2112 | "dev": true 2113 | } 2114 | } 2115 | }, 2116 | "imurmurhash": { 2117 | "version": "0.1.4", 2118 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 2119 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 2120 | "dev": true 2121 | }, 2122 | "inflight": { 2123 | "version": "1.0.6", 2124 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 2125 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 2126 | "dev": true, 2127 | "requires": { 2128 | "once": "^1.3.0", 2129 | "wrappy": "1" 2130 | } 2131 | }, 2132 | "inherits": { 2133 | "version": "2.0.3", 2134 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2135 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", 2136 | "dev": true 2137 | }, 2138 | "inquirer": { 2139 | "version": "7.0.0", 2140 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.0.tgz", 2141 | "integrity": "sha512-rSdC7zelHdRQFkWnhsMu2+2SO41mpv2oF2zy4tMhmiLWkcKbOAs87fWAJhVXttKVwhdZvymvnuM95EyEXg2/tQ==", 2142 | "dev": true, 2143 | "requires": { 2144 | "ansi-escapes": "^4.2.1", 2145 | "chalk": "^2.4.2", 2146 | "cli-cursor": "^3.1.0", 2147 | "cli-width": "^2.0.0", 2148 | "external-editor": "^3.0.3", 2149 | "figures": "^3.0.0", 2150 | "lodash": "^4.17.15", 2151 | "mute-stream": "0.0.8", 2152 | "run-async": "^2.2.0", 2153 | "rxjs": "^6.4.0", 2154 | "string-width": "^4.1.0", 2155 | "strip-ansi": "^5.1.0", 2156 | "through": "^2.3.6" 2157 | }, 2158 | "dependencies": { 2159 | "ansi-regex": { 2160 | "version": "4.1.0", 2161 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 2162 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 2163 | "dev": true 2164 | }, 2165 | "ansi-styles": { 2166 | "version": "3.2.1", 2167 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 2168 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 2169 | "dev": true, 2170 | "requires": { 2171 | "color-convert": "^1.9.0" 2172 | } 2173 | }, 2174 | "chalk": { 2175 | "version": "2.4.2", 2176 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 2177 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 2178 | "dev": true, 2179 | "requires": { 2180 | "ansi-styles": "^3.2.1", 2181 | "escape-string-regexp": "^1.0.5", 2182 | "supports-color": "^5.3.0" 2183 | } 2184 | }, 2185 | "emoji-regex": { 2186 | "version": "8.0.0", 2187 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 2188 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 2189 | "dev": true 2190 | }, 2191 | "is-fullwidth-code-point": { 2192 | "version": "3.0.0", 2193 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 2194 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 2195 | "dev": true 2196 | }, 2197 | "lodash": { 2198 | "version": "4.17.15", 2199 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 2200 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 2201 | "dev": true 2202 | }, 2203 | "string-width": { 2204 | "version": "4.1.0", 2205 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", 2206 | "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", 2207 | "dev": true, 2208 | "requires": { 2209 | "emoji-regex": "^8.0.0", 2210 | "is-fullwidth-code-point": "^3.0.0", 2211 | "strip-ansi": "^5.2.0" 2212 | } 2213 | }, 2214 | "strip-ansi": { 2215 | "version": "5.2.0", 2216 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 2217 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 2218 | "dev": true, 2219 | "requires": { 2220 | "ansi-regex": "^4.1.0" 2221 | } 2222 | }, 2223 | "supports-color": { 2224 | "version": "5.5.0", 2225 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 2226 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 2227 | "dev": true, 2228 | "requires": { 2229 | "has-flag": "^3.0.0" 2230 | } 2231 | } 2232 | } 2233 | }, 2234 | "invariant": { 2235 | "version": "2.2.4", 2236 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 2237 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 2238 | "dev": true, 2239 | "requires": { 2240 | "loose-envify": "^1.0.0" 2241 | } 2242 | }, 2243 | "invert-kv": { 2244 | "version": "2.0.0", 2245 | "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", 2246 | "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", 2247 | "dev": true 2248 | }, 2249 | "is-arrayish": { 2250 | "version": "0.2.1", 2251 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 2252 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 2253 | "dev": true 2254 | }, 2255 | "is-buffer": { 2256 | "version": "2.0.4", 2257 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", 2258 | "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", 2259 | "dev": true 2260 | }, 2261 | "is-callable": { 2262 | "version": "1.1.4", 2263 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", 2264 | "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", 2265 | "dev": true 2266 | }, 2267 | "is-date-object": { 2268 | "version": "1.0.1", 2269 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", 2270 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", 2271 | "dev": true 2272 | }, 2273 | "is-extglob": { 2274 | "version": "2.1.1", 2275 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 2276 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 2277 | "dev": true 2278 | }, 2279 | "is-fullwidth-code-point": { 2280 | "version": "2.0.0", 2281 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 2282 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 2283 | "dev": true 2284 | }, 2285 | "is-glob": { 2286 | "version": "4.0.1", 2287 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 2288 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 2289 | "dev": true, 2290 | "requires": { 2291 | "is-extglob": "^2.1.1" 2292 | } 2293 | }, 2294 | "is-promise": { 2295 | "version": "2.1.0", 2296 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 2297 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", 2298 | "dev": true 2299 | }, 2300 | "is-regex": { 2301 | "version": "1.0.4", 2302 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 2303 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 2304 | "dev": true, 2305 | "requires": { 2306 | "has": "^1.0.1" 2307 | } 2308 | }, 2309 | "is-stream": { 2310 | "version": "1.1.0", 2311 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 2312 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 2313 | "dev": true 2314 | }, 2315 | "is-symbol": { 2316 | "version": "1.0.2", 2317 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", 2318 | "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", 2319 | "dev": true, 2320 | "requires": { 2321 | "has-symbols": "^1.0.0" 2322 | } 2323 | }, 2324 | "isexe": { 2325 | "version": "2.0.0", 2326 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2327 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 2328 | "dev": true 2329 | }, 2330 | "istanbul-lib-coverage": { 2331 | "version": "2.0.5", 2332 | "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", 2333 | "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", 2334 | "dev": true 2335 | }, 2336 | "istanbul-lib-hook": { 2337 | "version": "2.0.7", 2338 | "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", 2339 | "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", 2340 | "dev": true, 2341 | "requires": { 2342 | "append-transform": "^1.0.0" 2343 | } 2344 | }, 2345 | "istanbul-lib-instrument": { 2346 | "version": "3.3.0", 2347 | "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", 2348 | "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", 2349 | "dev": true, 2350 | "requires": { 2351 | "@babel/generator": "^7.4.0", 2352 | "@babel/parser": "^7.4.3", 2353 | "@babel/template": "^7.4.0", 2354 | "@babel/traverse": "^7.4.3", 2355 | "@babel/types": "^7.4.0", 2356 | "istanbul-lib-coverage": "^2.0.5", 2357 | "semver": "^6.0.0" 2358 | }, 2359 | "dependencies": { 2360 | "semver": { 2361 | "version": "6.3.0", 2362 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 2363 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 2364 | "dev": true 2365 | } 2366 | } 2367 | }, 2368 | "istanbul-lib-report": { 2369 | "version": "2.0.8", 2370 | "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", 2371 | "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", 2372 | "dev": true, 2373 | "requires": { 2374 | "istanbul-lib-coverage": "^2.0.5", 2375 | "make-dir": "^2.1.0", 2376 | "supports-color": "^6.1.0" 2377 | } 2378 | }, 2379 | "istanbul-lib-source-maps": { 2380 | "version": "3.0.6", 2381 | "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", 2382 | "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", 2383 | "dev": true, 2384 | "requires": { 2385 | "debug": "^4.1.1", 2386 | "istanbul-lib-coverage": "^2.0.5", 2387 | "make-dir": "^2.1.0", 2388 | "rimraf": "^2.6.3", 2389 | "source-map": "^0.6.1" 2390 | }, 2391 | "dependencies": { 2392 | "source-map": { 2393 | "version": "0.6.1", 2394 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 2395 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 2396 | "dev": true 2397 | } 2398 | } 2399 | }, 2400 | "istanbul-reports": { 2401 | "version": "2.2.6", 2402 | "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", 2403 | "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", 2404 | "dev": true, 2405 | "requires": { 2406 | "handlebars": "^4.1.2" 2407 | } 2408 | }, 2409 | "js-levenshtein": { 2410 | "version": "1.1.6", 2411 | "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", 2412 | "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", 2413 | "dev": true 2414 | }, 2415 | "js-tokens": { 2416 | "version": "3.0.2", 2417 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 2418 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 2419 | "dev": true 2420 | }, 2421 | "js-yaml": { 2422 | "version": "3.13.1", 2423 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 2424 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 2425 | "dev": true, 2426 | "requires": { 2427 | "argparse": "^1.0.7", 2428 | "esprima": "^4.0.0" 2429 | } 2430 | }, 2431 | "jsesc": { 2432 | "version": "0.5.0", 2433 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 2434 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 2435 | "dev": true 2436 | }, 2437 | "json-parse-better-errors": { 2438 | "version": "1.0.2", 2439 | "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", 2440 | "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", 2441 | "dev": true 2442 | }, 2443 | "json-schema-traverse": { 2444 | "version": "0.4.1", 2445 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 2446 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 2447 | "dev": true 2448 | }, 2449 | "json-stable-stringify-without-jsonify": { 2450 | "version": "1.0.1", 2451 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 2452 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", 2453 | "dev": true 2454 | }, 2455 | "lcid": { 2456 | "version": "2.0.0", 2457 | "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", 2458 | "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", 2459 | "dev": true, 2460 | "requires": { 2461 | "invert-kv": "^2.0.0" 2462 | } 2463 | }, 2464 | "levn": { 2465 | "version": "0.3.0", 2466 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 2467 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 2468 | "dev": true, 2469 | "requires": { 2470 | "prelude-ls": "~1.1.2", 2471 | "type-check": "~0.3.2" 2472 | } 2473 | }, 2474 | "load-json-file": { 2475 | "version": "4.0.0", 2476 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", 2477 | "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", 2478 | "dev": true, 2479 | "requires": { 2480 | "graceful-fs": "^4.1.2", 2481 | "parse-json": "^4.0.0", 2482 | "pify": "^3.0.0", 2483 | "strip-bom": "^3.0.0" 2484 | }, 2485 | "dependencies": { 2486 | "pify": { 2487 | "version": "3.0.0", 2488 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 2489 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 2490 | "dev": true 2491 | } 2492 | } 2493 | }, 2494 | "locate-path": { 2495 | "version": "3.0.0", 2496 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", 2497 | "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", 2498 | "dev": true, 2499 | "requires": { 2500 | "p-locate": "^3.0.0", 2501 | "path-exists": "^3.0.0" 2502 | }, 2503 | "dependencies": { 2504 | "path-exists": { 2505 | "version": "3.0.0", 2506 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 2507 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 2508 | "dev": true 2509 | } 2510 | } 2511 | }, 2512 | "lodash": { 2513 | "version": "4.17.15", 2514 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 2515 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 2516 | "dev": true 2517 | }, 2518 | "lodash.flattendeep": { 2519 | "version": "4.4.0", 2520 | "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", 2521 | "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", 2522 | "dev": true 2523 | }, 2524 | "log-symbols": { 2525 | "version": "2.2.0", 2526 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", 2527 | "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", 2528 | "dev": true, 2529 | "requires": { 2530 | "chalk": "^2.0.1" 2531 | } 2532 | }, 2533 | "loose-envify": { 2534 | "version": "1.4.0", 2535 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 2536 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 2537 | "dev": true, 2538 | "requires": { 2539 | "js-tokens": "^3.0.0 || ^4.0.0" 2540 | } 2541 | }, 2542 | "lru-cache": { 2543 | "version": "4.1.5", 2544 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", 2545 | "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", 2546 | "dev": true, 2547 | "requires": { 2548 | "pseudomap": "^1.0.2", 2549 | "yallist": "^2.1.2" 2550 | } 2551 | }, 2552 | "make-dir": { 2553 | "version": "2.1.0", 2554 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", 2555 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 2556 | "dev": true, 2557 | "requires": { 2558 | "pify": "^4.0.1", 2559 | "semver": "^5.6.0" 2560 | } 2561 | }, 2562 | "map-age-cleaner": { 2563 | "version": "0.1.3", 2564 | "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", 2565 | "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", 2566 | "dev": true, 2567 | "requires": { 2568 | "p-defer": "^1.0.0" 2569 | } 2570 | }, 2571 | "mem": { 2572 | "version": "4.3.0", 2573 | "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", 2574 | "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", 2575 | "dev": true, 2576 | "requires": { 2577 | "map-age-cleaner": "^0.1.1", 2578 | "mimic-fn": "^2.0.0", 2579 | "p-is-promise": "^2.0.0" 2580 | } 2581 | }, 2582 | "merge-source-map": { 2583 | "version": "1.1.0", 2584 | "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", 2585 | "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", 2586 | "dev": true, 2587 | "requires": { 2588 | "source-map": "^0.6.1" 2589 | }, 2590 | "dependencies": { 2591 | "source-map": { 2592 | "version": "0.6.1", 2593 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 2594 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 2595 | "dev": true 2596 | } 2597 | } 2598 | }, 2599 | "mimic-fn": { 2600 | "version": "2.1.0", 2601 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", 2602 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", 2603 | "dev": true 2604 | }, 2605 | "minimatch": { 2606 | "version": "3.0.4", 2607 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 2608 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 2609 | "dev": true, 2610 | "requires": { 2611 | "brace-expansion": "^1.1.7" 2612 | } 2613 | }, 2614 | "minimist": { 2615 | "version": "0.0.8", 2616 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 2617 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 2618 | "dev": true 2619 | }, 2620 | "mkdirp": { 2621 | "version": "0.5.1", 2622 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 2623 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 2624 | "dev": true, 2625 | "requires": { 2626 | "minimist": "0.0.8" 2627 | } 2628 | }, 2629 | "mocha": { 2630 | "version": "6.2.2", 2631 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.2.tgz", 2632 | "integrity": "sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A==", 2633 | "dev": true, 2634 | "requires": { 2635 | "ansi-colors": "3.2.3", 2636 | "browser-stdout": "1.3.1", 2637 | "debug": "3.2.6", 2638 | "diff": "3.5.0", 2639 | "escape-string-regexp": "1.0.5", 2640 | "find-up": "3.0.0", 2641 | "glob": "7.1.3", 2642 | "growl": "1.10.5", 2643 | "he": "1.2.0", 2644 | "js-yaml": "3.13.1", 2645 | "log-symbols": "2.2.0", 2646 | "minimatch": "3.0.4", 2647 | "mkdirp": "0.5.1", 2648 | "ms": "2.1.1", 2649 | "node-environment-flags": "1.0.5", 2650 | "object.assign": "4.1.0", 2651 | "strip-json-comments": "2.0.1", 2652 | "supports-color": "6.0.0", 2653 | "which": "1.3.1", 2654 | "wide-align": "1.1.3", 2655 | "yargs": "13.3.0", 2656 | "yargs-parser": "13.1.1", 2657 | "yargs-unparser": "1.6.0" 2658 | }, 2659 | "dependencies": { 2660 | "ansi-regex": { 2661 | "version": "4.1.0", 2662 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 2663 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 2664 | "dev": true 2665 | }, 2666 | "cliui": { 2667 | "version": "5.0.0", 2668 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", 2669 | "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", 2670 | "dev": true, 2671 | "requires": { 2672 | "string-width": "^3.1.0", 2673 | "strip-ansi": "^5.2.0", 2674 | "wrap-ansi": "^5.1.0" 2675 | } 2676 | }, 2677 | "debug": { 2678 | "version": "3.2.6", 2679 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", 2680 | "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", 2681 | "dev": true, 2682 | "requires": { 2683 | "ms": "^2.1.1" 2684 | } 2685 | }, 2686 | "glob": { 2687 | "version": "7.1.3", 2688 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", 2689 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", 2690 | "dev": true, 2691 | "requires": { 2692 | "fs.realpath": "^1.0.0", 2693 | "inflight": "^1.0.4", 2694 | "inherits": "2", 2695 | "minimatch": "^3.0.4", 2696 | "once": "^1.3.0", 2697 | "path-is-absolute": "^1.0.0" 2698 | } 2699 | }, 2700 | "ms": { 2701 | "version": "2.1.1", 2702 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", 2703 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", 2704 | "dev": true 2705 | }, 2706 | "string-width": { 2707 | "version": "3.1.0", 2708 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 2709 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 2710 | "dev": true, 2711 | "requires": { 2712 | "emoji-regex": "^7.0.1", 2713 | "is-fullwidth-code-point": "^2.0.0", 2714 | "strip-ansi": "^5.1.0" 2715 | } 2716 | }, 2717 | "strip-ansi": { 2718 | "version": "5.2.0", 2719 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 2720 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 2721 | "dev": true, 2722 | "requires": { 2723 | "ansi-regex": "^4.1.0" 2724 | } 2725 | }, 2726 | "supports-color": { 2727 | "version": "6.0.0", 2728 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", 2729 | "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", 2730 | "dev": true, 2731 | "requires": { 2732 | "has-flag": "^3.0.0" 2733 | } 2734 | }, 2735 | "wrap-ansi": { 2736 | "version": "5.1.0", 2737 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", 2738 | "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", 2739 | "dev": true, 2740 | "requires": { 2741 | "ansi-styles": "^3.2.0", 2742 | "string-width": "^3.0.0", 2743 | "strip-ansi": "^5.0.0" 2744 | } 2745 | }, 2746 | "yargs": { 2747 | "version": "13.3.0", 2748 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", 2749 | "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", 2750 | "dev": true, 2751 | "requires": { 2752 | "cliui": "^5.0.0", 2753 | "find-up": "^3.0.0", 2754 | "get-caller-file": "^2.0.1", 2755 | "require-directory": "^2.1.1", 2756 | "require-main-filename": "^2.0.0", 2757 | "set-blocking": "^2.0.0", 2758 | "string-width": "^3.0.0", 2759 | "which-module": "^2.0.0", 2760 | "y18n": "^4.0.0", 2761 | "yargs-parser": "^13.1.1" 2762 | } 2763 | }, 2764 | "yargs-parser": { 2765 | "version": "13.1.1", 2766 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", 2767 | "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", 2768 | "dev": true, 2769 | "requires": { 2770 | "camelcase": "^5.0.0", 2771 | "decamelize": "^1.2.0" 2772 | } 2773 | } 2774 | } 2775 | }, 2776 | "ms": { 2777 | "version": "2.1.2", 2778 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 2779 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 2780 | "dev": true 2781 | }, 2782 | "mute-stream": { 2783 | "version": "0.0.8", 2784 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", 2785 | "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", 2786 | "dev": true 2787 | }, 2788 | "neo-async": { 2789 | "version": "2.6.1", 2790 | "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", 2791 | "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", 2792 | "dev": true 2793 | }, 2794 | "nested-error-stacks": { 2795 | "version": "2.1.0", 2796 | "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", 2797 | "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", 2798 | "dev": true 2799 | }, 2800 | "nice-try": { 2801 | "version": "1.0.5", 2802 | "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", 2803 | "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", 2804 | "dev": true 2805 | }, 2806 | "node-environment-flags": { 2807 | "version": "1.0.5", 2808 | "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", 2809 | "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", 2810 | "dev": true, 2811 | "requires": { 2812 | "object.getownpropertydescriptors": "^2.0.3", 2813 | "semver": "^5.7.0" 2814 | } 2815 | }, 2816 | "node-releases": { 2817 | "version": "1.1.39", 2818 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.39.tgz", 2819 | "integrity": "sha512-8MRC/ErwNCHOlAFycy9OPca46fQYUjbJRDcZTHVWIGXIjYLM73k70vv3WkYutVnM4cCo4hE0MqBVVZjP6vjISA==", 2820 | "dev": true, 2821 | "requires": { 2822 | "semver": "^6.3.0" 2823 | }, 2824 | "dependencies": { 2825 | "semver": { 2826 | "version": "6.3.0", 2827 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 2828 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 2829 | "dev": true 2830 | } 2831 | } 2832 | }, 2833 | "normalize-package-data": { 2834 | "version": "2.5.0", 2835 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 2836 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 2837 | "dev": true, 2838 | "requires": { 2839 | "hosted-git-info": "^2.1.4", 2840 | "resolve": "^1.10.0", 2841 | "semver": "2 || 3 || 4 || 5", 2842 | "validate-npm-package-license": "^3.0.1" 2843 | } 2844 | }, 2845 | "npm-run-path": { 2846 | "version": "2.0.2", 2847 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", 2848 | "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", 2849 | "dev": true, 2850 | "requires": { 2851 | "path-key": "^2.0.0" 2852 | } 2853 | }, 2854 | "number-is-nan": { 2855 | "version": "1.0.1", 2856 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 2857 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 2858 | "dev": true 2859 | }, 2860 | "nyc": { 2861 | "version": "14.1.1", 2862 | "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", 2863 | "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", 2864 | "dev": true, 2865 | "requires": { 2866 | "archy": "^1.0.0", 2867 | "caching-transform": "^3.0.2", 2868 | "convert-source-map": "^1.6.0", 2869 | "cp-file": "^6.2.0", 2870 | "find-cache-dir": "^2.1.0", 2871 | "find-up": "^3.0.0", 2872 | "foreground-child": "^1.5.6", 2873 | "glob": "^7.1.3", 2874 | "istanbul-lib-coverage": "^2.0.5", 2875 | "istanbul-lib-hook": "^2.0.7", 2876 | "istanbul-lib-instrument": "^3.3.0", 2877 | "istanbul-lib-report": "^2.0.8", 2878 | "istanbul-lib-source-maps": "^3.0.6", 2879 | "istanbul-reports": "^2.2.4", 2880 | "js-yaml": "^3.13.1", 2881 | "make-dir": "^2.1.0", 2882 | "merge-source-map": "^1.1.0", 2883 | "resolve-from": "^4.0.0", 2884 | "rimraf": "^2.6.3", 2885 | "signal-exit": "^3.0.2", 2886 | "spawn-wrap": "^1.4.2", 2887 | "test-exclude": "^5.2.3", 2888 | "uuid": "^3.3.2", 2889 | "yargs": "^13.2.2", 2890 | "yargs-parser": "^13.0.0" 2891 | } 2892 | }, 2893 | "object-inspect": { 2894 | "version": "1.6.0", 2895 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz", 2896 | "integrity": "sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==", 2897 | "dev": true 2898 | }, 2899 | "object-keys": { 2900 | "version": "1.1.1", 2901 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 2902 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", 2903 | "dev": true 2904 | }, 2905 | "object.assign": { 2906 | "version": "4.1.0", 2907 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 2908 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 2909 | "dev": true, 2910 | "requires": { 2911 | "define-properties": "^1.1.2", 2912 | "function-bind": "^1.1.1", 2913 | "has-symbols": "^1.0.0", 2914 | "object-keys": "^1.0.11" 2915 | } 2916 | }, 2917 | "object.getownpropertydescriptors": { 2918 | "version": "2.0.3", 2919 | "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", 2920 | "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", 2921 | "dev": true, 2922 | "requires": { 2923 | "define-properties": "^1.1.2", 2924 | "es-abstract": "^1.5.1" 2925 | } 2926 | }, 2927 | "once": { 2928 | "version": "1.4.0", 2929 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2930 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 2931 | "dev": true, 2932 | "requires": { 2933 | "wrappy": "1" 2934 | } 2935 | }, 2936 | "onetime": { 2937 | "version": "5.1.0", 2938 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", 2939 | "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", 2940 | "dev": true, 2941 | "requires": { 2942 | "mimic-fn": "^2.1.0" 2943 | } 2944 | }, 2945 | "optimist": { 2946 | "version": "0.6.1", 2947 | "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", 2948 | "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", 2949 | "dev": true, 2950 | "requires": { 2951 | "minimist": "~0.0.1", 2952 | "wordwrap": "~0.0.2" 2953 | }, 2954 | "dependencies": { 2955 | "wordwrap": { 2956 | "version": "0.0.3", 2957 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", 2958 | "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", 2959 | "dev": true 2960 | } 2961 | } 2962 | }, 2963 | "optionator": { 2964 | "version": "0.8.2", 2965 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 2966 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 2967 | "dev": true, 2968 | "requires": { 2969 | "deep-is": "~0.1.3", 2970 | "fast-levenshtein": "~2.0.4", 2971 | "levn": "~0.3.0", 2972 | "prelude-ls": "~1.1.2", 2973 | "type-check": "~0.3.2", 2974 | "wordwrap": "~1.0.0" 2975 | } 2976 | }, 2977 | "os-homedir": { 2978 | "version": "1.0.2", 2979 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 2980 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 2981 | "dev": true 2982 | }, 2983 | "os-locale": { 2984 | "version": "3.1.0", 2985 | "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", 2986 | "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", 2987 | "dev": true, 2988 | "requires": { 2989 | "execa": "^1.0.0", 2990 | "lcid": "^2.0.0", 2991 | "mem": "^4.0.0" 2992 | } 2993 | }, 2994 | "os-tmpdir": { 2995 | "version": "1.0.2", 2996 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 2997 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 2998 | "dev": true 2999 | }, 3000 | "p-defer": { 3001 | "version": "1.0.0", 3002 | "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", 3003 | "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", 3004 | "dev": true 3005 | }, 3006 | "p-finally": { 3007 | "version": "1.0.0", 3008 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 3009 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", 3010 | "dev": true 3011 | }, 3012 | "p-is-promise": { 3013 | "version": "2.1.0", 3014 | "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", 3015 | "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", 3016 | "dev": true 3017 | }, 3018 | "p-limit": { 3019 | "version": "2.2.0", 3020 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", 3021 | "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", 3022 | "dev": true, 3023 | "requires": { 3024 | "p-try": "^2.0.0" 3025 | } 3026 | }, 3027 | "p-locate": { 3028 | "version": "3.0.0", 3029 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", 3030 | "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", 3031 | "dev": true, 3032 | "requires": { 3033 | "p-limit": "^2.0.0" 3034 | } 3035 | }, 3036 | "p-try": { 3037 | "version": "2.2.0", 3038 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", 3039 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", 3040 | "dev": true 3041 | }, 3042 | "package-hash": { 3043 | "version": "3.0.0", 3044 | "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", 3045 | "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", 3046 | "dev": true, 3047 | "requires": { 3048 | "graceful-fs": "^4.1.15", 3049 | "hasha": "^3.0.0", 3050 | "lodash.flattendeep": "^4.4.0", 3051 | "release-zalgo": "^1.0.0" 3052 | } 3053 | }, 3054 | "parent-module": { 3055 | "version": "1.0.1", 3056 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 3057 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 3058 | "dev": true, 3059 | "requires": { 3060 | "callsites": "^3.0.0" 3061 | } 3062 | }, 3063 | "parse-json": { 3064 | "version": "4.0.0", 3065 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", 3066 | "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", 3067 | "dev": true, 3068 | "requires": { 3069 | "error-ex": "^1.3.1", 3070 | "json-parse-better-errors": "^1.0.1" 3071 | } 3072 | }, 3073 | "path-is-absolute": { 3074 | "version": "1.0.1", 3075 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3076 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 3077 | "dev": true 3078 | }, 3079 | "path-key": { 3080 | "version": "2.0.1", 3081 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", 3082 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", 3083 | "dev": true 3084 | }, 3085 | "path-parse": { 3086 | "version": "1.0.6", 3087 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 3088 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", 3089 | "dev": true 3090 | }, 3091 | "path-type": { 3092 | "version": "3.0.0", 3093 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 3094 | "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", 3095 | "dev": true, 3096 | "requires": { 3097 | "pify": "^3.0.0" 3098 | }, 3099 | "dependencies": { 3100 | "pify": { 3101 | "version": "3.0.0", 3102 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 3103 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 3104 | "dev": true 3105 | } 3106 | } 3107 | }, 3108 | "pathval": { 3109 | "version": "1.1.0", 3110 | "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", 3111 | "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", 3112 | "dev": true 3113 | }, 3114 | "pify": { 3115 | "version": "4.0.1", 3116 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", 3117 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 3118 | "dev": true 3119 | }, 3120 | "pkg-dir": { 3121 | "version": "3.0.0", 3122 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", 3123 | "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", 3124 | "dev": true, 3125 | "requires": { 3126 | "find-up": "^3.0.0" 3127 | } 3128 | }, 3129 | "prelude-ls": { 3130 | "version": "1.1.2", 3131 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 3132 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 3133 | "dev": true 3134 | }, 3135 | "prettier": { 3136 | "version": "1.18.2", 3137 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", 3138 | "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", 3139 | "dev": true 3140 | }, 3141 | "prettier-linter-helpers": { 3142 | "version": "1.0.0", 3143 | "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", 3144 | "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", 3145 | "dev": true, 3146 | "requires": { 3147 | "fast-diff": "^1.1.2" 3148 | } 3149 | }, 3150 | "private": { 3151 | "version": "0.1.8", 3152 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 3153 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", 3154 | "dev": true 3155 | }, 3156 | "progress": { 3157 | "version": "2.0.3", 3158 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", 3159 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", 3160 | "dev": true 3161 | }, 3162 | "pseudomap": { 3163 | "version": "1.0.2", 3164 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 3165 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 3166 | "dev": true 3167 | }, 3168 | "pump": { 3169 | "version": "3.0.0", 3170 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 3171 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 3172 | "dev": true, 3173 | "requires": { 3174 | "end-of-stream": "^1.1.0", 3175 | "once": "^1.3.1" 3176 | } 3177 | }, 3178 | "punycode": { 3179 | "version": "2.1.1", 3180 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 3181 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 3182 | "dev": true 3183 | }, 3184 | "read-pkg": { 3185 | "version": "3.0.0", 3186 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", 3187 | "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", 3188 | "dev": true, 3189 | "requires": { 3190 | "load-json-file": "^4.0.0", 3191 | "normalize-package-data": "^2.3.2", 3192 | "path-type": "^3.0.0" 3193 | } 3194 | }, 3195 | "read-pkg-up": { 3196 | "version": "4.0.0", 3197 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", 3198 | "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", 3199 | "dev": true, 3200 | "requires": { 3201 | "find-up": "^3.0.0", 3202 | "read-pkg": "^3.0.0" 3203 | } 3204 | }, 3205 | "regenerate": { 3206 | "version": "1.4.0", 3207 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 3208 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", 3209 | "dev": true 3210 | }, 3211 | "regenerate-unicode-properties": { 3212 | "version": "8.1.0", 3213 | "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", 3214 | "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", 3215 | "dev": true, 3216 | "requires": { 3217 | "regenerate": "^1.4.0" 3218 | } 3219 | }, 3220 | "regexpp": { 3221 | "version": "2.0.1", 3222 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", 3223 | "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", 3224 | "dev": true 3225 | }, 3226 | "release-zalgo": { 3227 | "version": "1.0.0", 3228 | "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", 3229 | "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", 3230 | "dev": true, 3231 | "requires": { 3232 | "es6-error": "^4.0.1" 3233 | } 3234 | }, 3235 | "require-directory": { 3236 | "version": "2.1.1", 3237 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 3238 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 3239 | "dev": true 3240 | }, 3241 | "require-main-filename": { 3242 | "version": "2.0.0", 3243 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", 3244 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", 3245 | "dev": true 3246 | }, 3247 | "resolve": { 3248 | "version": "1.11.1", 3249 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", 3250 | "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", 3251 | "dev": true, 3252 | "requires": { 3253 | "path-parse": "^1.0.6" 3254 | } 3255 | }, 3256 | "resolve-from": { 3257 | "version": "4.0.0", 3258 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 3259 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 3260 | "dev": true 3261 | }, 3262 | "restore-cursor": { 3263 | "version": "3.1.0", 3264 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", 3265 | "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", 3266 | "dev": true, 3267 | "requires": { 3268 | "onetime": "^5.1.0", 3269 | "signal-exit": "^3.0.2" 3270 | } 3271 | }, 3272 | "rimraf": { 3273 | "version": "2.6.3", 3274 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", 3275 | "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", 3276 | "dev": true, 3277 | "requires": { 3278 | "glob": "^7.1.3" 3279 | }, 3280 | "dependencies": { 3281 | "glob": { 3282 | "version": "7.1.4", 3283 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", 3284 | "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", 3285 | "dev": true, 3286 | "requires": { 3287 | "fs.realpath": "^1.0.0", 3288 | "inflight": "^1.0.4", 3289 | "inherits": "2", 3290 | "minimatch": "^3.0.4", 3291 | "once": "^1.3.0", 3292 | "path-is-absolute": "^1.0.0" 3293 | } 3294 | } 3295 | } 3296 | }, 3297 | "run-async": { 3298 | "version": "2.3.0", 3299 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", 3300 | "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", 3301 | "dev": true, 3302 | "requires": { 3303 | "is-promise": "^2.1.0" 3304 | } 3305 | }, 3306 | "rxjs": { 3307 | "version": "6.5.3", 3308 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", 3309 | "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", 3310 | "dev": true, 3311 | "requires": { 3312 | "tslib": "^1.9.0" 3313 | } 3314 | }, 3315 | "safe-buffer": { 3316 | "version": "5.1.2", 3317 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 3318 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 3319 | "dev": true 3320 | }, 3321 | "safer-buffer": { 3322 | "version": "2.1.2", 3323 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 3324 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 3325 | "dev": true 3326 | }, 3327 | "semver": { 3328 | "version": "5.7.0", 3329 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", 3330 | "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", 3331 | "dev": true 3332 | }, 3333 | "set-blocking": { 3334 | "version": "2.0.0", 3335 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 3336 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 3337 | "dev": true 3338 | }, 3339 | "shebang-command": { 3340 | "version": "1.2.0", 3341 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 3342 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 3343 | "dev": true, 3344 | "requires": { 3345 | "shebang-regex": "^1.0.0" 3346 | } 3347 | }, 3348 | "shebang-regex": { 3349 | "version": "1.0.0", 3350 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 3351 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 3352 | "dev": true 3353 | }, 3354 | "signal-exit": { 3355 | "version": "3.0.2", 3356 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 3357 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 3358 | "dev": true 3359 | }, 3360 | "slice-ansi": { 3361 | "version": "2.1.0", 3362 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", 3363 | "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", 3364 | "dev": true, 3365 | "requires": { 3366 | "ansi-styles": "^3.2.0", 3367 | "astral-regex": "^1.0.0", 3368 | "is-fullwidth-code-point": "^2.0.0" 3369 | }, 3370 | "dependencies": { 3371 | "ansi-styles": { 3372 | "version": "3.2.1", 3373 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 3374 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 3375 | "dev": true, 3376 | "requires": { 3377 | "color-convert": "^1.9.0" 3378 | } 3379 | } 3380 | } 3381 | }, 3382 | "source-map": { 3383 | "version": "0.5.7", 3384 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 3385 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 3386 | "dev": true 3387 | }, 3388 | "spawn-wrap": { 3389 | "version": "1.4.3", 3390 | "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", 3391 | "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", 3392 | "dev": true, 3393 | "requires": { 3394 | "foreground-child": "^1.5.6", 3395 | "mkdirp": "^0.5.0", 3396 | "os-homedir": "^1.0.1", 3397 | "rimraf": "^2.6.2", 3398 | "signal-exit": "^3.0.2", 3399 | "which": "^1.3.0" 3400 | } 3401 | }, 3402 | "spdx-correct": { 3403 | "version": "3.1.0", 3404 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", 3405 | "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", 3406 | "dev": true, 3407 | "requires": { 3408 | "spdx-expression-parse": "^3.0.0", 3409 | "spdx-license-ids": "^3.0.0" 3410 | } 3411 | }, 3412 | "spdx-exceptions": { 3413 | "version": "2.2.0", 3414 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", 3415 | "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", 3416 | "dev": true 3417 | }, 3418 | "spdx-expression-parse": { 3419 | "version": "3.0.0", 3420 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", 3421 | "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", 3422 | "dev": true, 3423 | "requires": { 3424 | "spdx-exceptions": "^2.1.0", 3425 | "spdx-license-ids": "^3.0.0" 3426 | } 3427 | }, 3428 | "spdx-license-ids": { 3429 | "version": "3.0.5", 3430 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", 3431 | "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", 3432 | "dev": true 3433 | }, 3434 | "string-width": { 3435 | "version": "2.1.1", 3436 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 3437 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 3438 | "dev": true, 3439 | "requires": { 3440 | "is-fullwidth-code-point": "^2.0.0", 3441 | "strip-ansi": "^4.0.0" 3442 | }, 3443 | "dependencies": { 3444 | "ansi-regex": { 3445 | "version": "3.0.0", 3446 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3447 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3448 | "dev": true 3449 | }, 3450 | "strip-ansi": { 3451 | "version": "4.0.0", 3452 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 3453 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 3454 | "dev": true, 3455 | "requires": { 3456 | "ansi-regex": "^3.0.0" 3457 | } 3458 | } 3459 | } 3460 | }, 3461 | "string.prototype.trimleft": { 3462 | "version": "2.1.0", 3463 | "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", 3464 | "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", 3465 | "dev": true, 3466 | "requires": { 3467 | "define-properties": "^1.1.3", 3468 | "function-bind": "^1.1.1" 3469 | } 3470 | }, 3471 | "string.prototype.trimright": { 3472 | "version": "2.1.0", 3473 | "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", 3474 | "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", 3475 | "dev": true, 3476 | "requires": { 3477 | "define-properties": "^1.1.3", 3478 | "function-bind": "^1.1.1" 3479 | } 3480 | }, 3481 | "strip-ansi": { 3482 | "version": "3.0.1", 3483 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 3484 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 3485 | "dev": true, 3486 | "requires": { 3487 | "ansi-regex": "^2.0.0" 3488 | } 3489 | }, 3490 | "strip-bom": { 3491 | "version": "3.0.0", 3492 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 3493 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 3494 | "dev": true 3495 | }, 3496 | "strip-eof": { 3497 | "version": "1.0.0", 3498 | "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", 3499 | "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", 3500 | "dev": true 3501 | }, 3502 | "strip-json-comments": { 3503 | "version": "2.0.1", 3504 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 3505 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 3506 | "dev": true 3507 | }, 3508 | "supports-color": { 3509 | "version": "6.1.0", 3510 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", 3511 | "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", 3512 | "dev": true, 3513 | "requires": { 3514 | "has-flag": "^3.0.0" 3515 | } 3516 | }, 3517 | "table": { 3518 | "version": "5.4.6", 3519 | "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", 3520 | "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", 3521 | "dev": true, 3522 | "requires": { 3523 | "ajv": "^6.10.2", 3524 | "lodash": "^4.17.14", 3525 | "slice-ansi": "^2.1.0", 3526 | "string-width": "^3.0.0" 3527 | }, 3528 | "dependencies": { 3529 | "ansi-regex": { 3530 | "version": "4.1.0", 3531 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 3532 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 3533 | "dev": true 3534 | }, 3535 | "lodash": { 3536 | "version": "4.17.15", 3537 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 3538 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", 3539 | "dev": true 3540 | }, 3541 | "string-width": { 3542 | "version": "3.1.0", 3543 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 3544 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 3545 | "dev": true, 3546 | "requires": { 3547 | "emoji-regex": "^7.0.1", 3548 | "is-fullwidth-code-point": "^2.0.0", 3549 | "strip-ansi": "^5.1.0" 3550 | } 3551 | }, 3552 | "strip-ansi": { 3553 | "version": "5.2.0", 3554 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 3555 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 3556 | "dev": true, 3557 | "requires": { 3558 | "ansi-regex": "^4.1.0" 3559 | } 3560 | } 3561 | } 3562 | }, 3563 | "test-exclude": { 3564 | "version": "5.2.3", 3565 | "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", 3566 | "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", 3567 | "dev": true, 3568 | "requires": { 3569 | "glob": "^7.1.3", 3570 | "minimatch": "^3.0.4", 3571 | "read-pkg-up": "^4.0.0", 3572 | "require-main-filename": "^2.0.0" 3573 | } 3574 | }, 3575 | "text-table": { 3576 | "version": "0.2.0", 3577 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 3578 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 3579 | "dev": true 3580 | }, 3581 | "through": { 3582 | "version": "2.3.8", 3583 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 3584 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 3585 | "dev": true 3586 | }, 3587 | "tmp": { 3588 | "version": "0.0.33", 3589 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", 3590 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", 3591 | "dev": true, 3592 | "requires": { 3593 | "os-tmpdir": "~1.0.2" 3594 | } 3595 | }, 3596 | "tslib": { 3597 | "version": "1.10.0", 3598 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", 3599 | "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", 3600 | "dev": true 3601 | }, 3602 | "type-check": { 3603 | "version": "0.3.2", 3604 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 3605 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 3606 | "dev": true, 3607 | "requires": { 3608 | "prelude-ls": "~1.1.2" 3609 | } 3610 | }, 3611 | "type-detect": { 3612 | "version": "4.0.8", 3613 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", 3614 | "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", 3615 | "dev": true 3616 | }, 3617 | "type-fest": { 3618 | "version": "0.5.2", 3619 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", 3620 | "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", 3621 | "dev": true 3622 | }, 3623 | "uglify-js": { 3624 | "version": "3.6.7", 3625 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.7.tgz", 3626 | "integrity": "sha512-4sXQDzmdnoXiO+xvmTzQsfIiwrjUCSA95rSP4SEd8tDb51W2TiDOlL76Hl+Kw0Ie42PSItCW8/t6pBNCF2R48A==", 3627 | "dev": true, 3628 | "optional": true, 3629 | "requires": { 3630 | "commander": "~2.20.3", 3631 | "source-map": "~0.6.1" 3632 | }, 3633 | "dependencies": { 3634 | "source-map": { 3635 | "version": "0.6.1", 3636 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 3637 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 3638 | "dev": true, 3639 | "optional": true 3640 | } 3641 | } 3642 | }, 3643 | "unicode-canonical-property-names-ecmascript": { 3644 | "version": "1.0.4", 3645 | "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", 3646 | "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", 3647 | "dev": true 3648 | }, 3649 | "unicode-match-property-ecmascript": { 3650 | "version": "1.0.4", 3651 | "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", 3652 | "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", 3653 | "dev": true, 3654 | "requires": { 3655 | "unicode-canonical-property-names-ecmascript": "^1.0.4", 3656 | "unicode-property-aliases-ecmascript": "^1.0.4" 3657 | } 3658 | }, 3659 | "unicode-match-property-value-ecmascript": { 3660 | "version": "1.1.0", 3661 | "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", 3662 | "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", 3663 | "dev": true 3664 | }, 3665 | "unicode-property-aliases-ecmascript": { 3666 | "version": "1.0.5", 3667 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", 3668 | "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", 3669 | "dev": true 3670 | }, 3671 | "uri-js": { 3672 | "version": "4.2.2", 3673 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", 3674 | "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", 3675 | "dev": true, 3676 | "requires": { 3677 | "punycode": "^2.1.0" 3678 | } 3679 | }, 3680 | "uuid": { 3681 | "version": "3.3.3", 3682 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", 3683 | "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", 3684 | "dev": true 3685 | }, 3686 | "v8-compile-cache": { 3687 | "version": "2.1.0", 3688 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", 3689 | "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", 3690 | "dev": true 3691 | }, 3692 | "validate-npm-package-license": { 3693 | "version": "3.0.4", 3694 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 3695 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 3696 | "dev": true, 3697 | "requires": { 3698 | "spdx-correct": "^3.0.0", 3699 | "spdx-expression-parse": "^3.0.0" 3700 | } 3701 | }, 3702 | "which": { 3703 | "version": "1.3.1", 3704 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 3705 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 3706 | "dev": true, 3707 | "requires": { 3708 | "isexe": "^2.0.0" 3709 | } 3710 | }, 3711 | "which-module": { 3712 | "version": "2.0.0", 3713 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 3714 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", 3715 | "dev": true 3716 | }, 3717 | "wide-align": { 3718 | "version": "1.1.3", 3719 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", 3720 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", 3721 | "dev": true, 3722 | "requires": { 3723 | "string-width": "^1.0.2 || 2" 3724 | } 3725 | }, 3726 | "wordwrap": { 3727 | "version": "1.0.0", 3728 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 3729 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 3730 | "dev": true 3731 | }, 3732 | "wrap-ansi": { 3733 | "version": "2.1.0", 3734 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", 3735 | "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", 3736 | "dev": true, 3737 | "requires": { 3738 | "string-width": "^1.0.1", 3739 | "strip-ansi": "^3.0.1" 3740 | }, 3741 | "dependencies": { 3742 | "is-fullwidth-code-point": { 3743 | "version": "1.0.0", 3744 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 3745 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 3746 | "dev": true, 3747 | "requires": { 3748 | "number-is-nan": "^1.0.0" 3749 | } 3750 | }, 3751 | "string-width": { 3752 | "version": "1.0.2", 3753 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 3754 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 3755 | "dev": true, 3756 | "requires": { 3757 | "code-point-at": "^1.0.0", 3758 | "is-fullwidth-code-point": "^1.0.0", 3759 | "strip-ansi": "^3.0.0" 3760 | } 3761 | } 3762 | } 3763 | }, 3764 | "wrappy": { 3765 | "version": "1.0.2", 3766 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 3767 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 3768 | "dev": true 3769 | }, 3770 | "write": { 3771 | "version": "1.0.3", 3772 | "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", 3773 | "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", 3774 | "dev": true, 3775 | "requires": { 3776 | "mkdirp": "^0.5.1" 3777 | } 3778 | }, 3779 | "write-file-atomic": { 3780 | "version": "2.4.3", 3781 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", 3782 | "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", 3783 | "dev": true, 3784 | "requires": { 3785 | "graceful-fs": "^4.1.11", 3786 | "imurmurhash": "^0.1.4", 3787 | "signal-exit": "^3.0.2" 3788 | } 3789 | }, 3790 | "y18n": { 3791 | "version": "4.0.0", 3792 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", 3793 | "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", 3794 | "dev": true 3795 | }, 3796 | "yallist": { 3797 | "version": "2.1.2", 3798 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 3799 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 3800 | "dev": true 3801 | }, 3802 | "yargs": { 3803 | "version": "13.2.2", 3804 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", 3805 | "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", 3806 | "dev": true, 3807 | "requires": { 3808 | "cliui": "^4.0.0", 3809 | "find-up": "^3.0.0", 3810 | "get-caller-file": "^2.0.1", 3811 | "os-locale": "^3.1.0", 3812 | "require-directory": "^2.1.1", 3813 | "require-main-filename": "^2.0.0", 3814 | "set-blocking": "^2.0.0", 3815 | "string-width": "^3.0.0", 3816 | "which-module": "^2.0.0", 3817 | "y18n": "^4.0.0", 3818 | "yargs-parser": "^13.0.0" 3819 | }, 3820 | "dependencies": { 3821 | "ansi-regex": { 3822 | "version": "4.1.0", 3823 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 3824 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 3825 | "dev": true 3826 | }, 3827 | "find-up": { 3828 | "version": "3.0.0", 3829 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", 3830 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", 3831 | "dev": true, 3832 | "requires": { 3833 | "locate-path": "^3.0.0" 3834 | } 3835 | }, 3836 | "string-width": { 3837 | "version": "3.1.0", 3838 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 3839 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 3840 | "dev": true, 3841 | "requires": { 3842 | "emoji-regex": "^7.0.1", 3843 | "is-fullwidth-code-point": "^2.0.0", 3844 | "strip-ansi": "^5.1.0" 3845 | } 3846 | }, 3847 | "strip-ansi": { 3848 | "version": "5.2.0", 3849 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 3850 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 3851 | "dev": true, 3852 | "requires": { 3853 | "ansi-regex": "^4.1.0" 3854 | } 3855 | } 3856 | } 3857 | }, 3858 | "yargs-parser": { 3859 | "version": "13.0.0", 3860 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", 3861 | "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", 3862 | "dev": true, 3863 | "requires": { 3864 | "camelcase": "^5.0.0", 3865 | "decamelize": "^1.2.0" 3866 | }, 3867 | "dependencies": { 3868 | "camelcase": { 3869 | "version": "5.3.1", 3870 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 3871 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", 3872 | "dev": true 3873 | } 3874 | } 3875 | }, 3876 | "yargs-unparser": { 3877 | "version": "1.6.0", 3878 | "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", 3879 | "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", 3880 | "dev": true, 3881 | "requires": { 3882 | "flat": "^4.1.0", 3883 | "lodash": "^4.17.15", 3884 | "yargs": "^13.3.0" 3885 | }, 3886 | "dependencies": { 3887 | "ansi-regex": { 3888 | "version": "4.1.0", 3889 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 3890 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", 3891 | "dev": true 3892 | }, 3893 | "cliui": { 3894 | "version": "5.0.0", 3895 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", 3896 | "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", 3897 | "dev": true, 3898 | "requires": { 3899 | "string-width": "^3.1.0", 3900 | "strip-ansi": "^5.2.0", 3901 | "wrap-ansi": "^5.1.0" 3902 | } 3903 | }, 3904 | "string-width": { 3905 | "version": "3.1.0", 3906 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 3907 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 3908 | "dev": true, 3909 | "requires": { 3910 | "emoji-regex": "^7.0.1", 3911 | "is-fullwidth-code-point": "^2.0.0", 3912 | "strip-ansi": "^5.1.0" 3913 | } 3914 | }, 3915 | "strip-ansi": { 3916 | "version": "5.2.0", 3917 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 3918 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 3919 | "dev": true, 3920 | "requires": { 3921 | "ansi-regex": "^4.1.0" 3922 | } 3923 | }, 3924 | "wrap-ansi": { 3925 | "version": "5.1.0", 3926 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", 3927 | "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", 3928 | "dev": true, 3929 | "requires": { 3930 | "ansi-styles": "^3.2.0", 3931 | "string-width": "^3.0.0", 3932 | "strip-ansi": "^5.0.0" 3933 | } 3934 | }, 3935 | "yargs": { 3936 | "version": "13.3.0", 3937 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", 3938 | "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", 3939 | "dev": true, 3940 | "requires": { 3941 | "cliui": "^5.0.0", 3942 | "find-up": "^3.0.0", 3943 | "get-caller-file": "^2.0.1", 3944 | "require-directory": "^2.1.1", 3945 | "require-main-filename": "^2.0.0", 3946 | "set-blocking": "^2.0.0", 3947 | "string-width": "^3.0.0", 3948 | "which-module": "^2.0.0", 3949 | "y18n": "^4.0.0", 3950 | "yargs-parser": "^13.1.1" 3951 | } 3952 | }, 3953 | "yargs-parser": { 3954 | "version": "13.1.1", 3955 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", 3956 | "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", 3957 | "dev": true, 3958 | "requires": { 3959 | "camelcase": "^5.0.0", 3960 | "decamelize": "^1.2.0" 3961 | } 3962 | } 3963 | } 3964 | } 3965 | } 3966 | } 3967 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-runner-config", 3 | "license": "MIT", 4 | "author": "Frank van Wijk ", 5 | "description": "Utility to create a shared files config for Wallaby, Karma and Mocha", 6 | "version": "1.0.0", 7 | "keywords": [ 8 | "karma", 9 | "wallaby", 10 | "files", 11 | "list", 12 | "test", 13 | "runner" 14 | ], 15 | "files": [ 16 | "src" 17 | ], 18 | "main": "src/index.js", 19 | "repository": "fvanwijk/testRunnerConfig", 20 | "dependencies": {}, 21 | "devDependencies": { 22 | "@babel/core": "7.6.4", 23 | "@babel/preset-env": "7.6.3", 24 | "chai": "4.2.0", 25 | "eslint": "6.6.0", 26 | "eslint-config-prettier": "6.5.0", 27 | "eslint-plugin-prettier": "3.1.1", 28 | "mocha": "6.2.2", 29 | "nyc": "14.1.1", 30 | "prettier": "1.18.2" 31 | }, 32 | "engines": { 33 | "node": ">=5.4" 34 | }, 35 | "scripts": { 36 | "qa": "npm run lint && npm run test", 37 | "lint": "eslint .", 38 | "test": "nyc --reporter=text --reporter=html --reporter=lcov mocha test/specs" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const wallabyObject = (instrument, load, ignore) => file => ({ 4 | pattern: file, 5 | instrument: instrument, 6 | load: load, 7 | ignore: ignore 8 | }); 9 | 10 | const instrument = wallabyObject(true, true, false); 11 | const notInstrument = wallabyObject(false, true, false); 12 | 13 | const applyMappings = mappings => group => ({ 14 | type: group.type, 15 | files: group.files.map(mappings[group.type] || (file => file)) 16 | }); 17 | 18 | const getFilesList = (files, typeToExclude, isExclude) => { 19 | return [].concat( 20 | ...files 21 | .filter(file => 22 | isExclude ? file.type === typeToExclude : file.type !== typeToExclude 23 | ) 24 | .map(file => file.files) 25 | ); 26 | }; 27 | 28 | const getWallabyFiles = (files, mappings) => { 29 | if (!files) { 30 | return {}; 31 | } 32 | 33 | // Add 'specs' list to files as 'ignored'. If we had added them manually to the ignore list, Karma has no specs to run. 34 | let ignoreIndex = files.findIndex(file => file.type === 'ignore'); 35 | let specs = files.find(file => file.type === 'specs'); 36 | specs = specs ? specs.files : []; 37 | 38 | if (files[ignoreIndex]) { 39 | files[ignoreIndex].files = files[ignoreIndex].files.concat(specs); 40 | } else { 41 | files.push({ type: 'ignore', files: specs }); 42 | } 43 | 44 | let wallabyFiles = files.map( 45 | applyMappings({ 46 | config: notInstrument, 47 | ignore: wallabyObject(false, false, true), 48 | lib: notInstrument, 49 | mock: wallabyObject(false, false, false), 50 | specs: instrument, 51 | src: instrument, 52 | ...mappings 53 | }) 54 | ); 55 | 56 | return { 57 | files: getFilesList(wallabyFiles, 'specs', false), 58 | tests: getFilesList(wallabyFiles, 'specs', true) 59 | }; 60 | }; 61 | 62 | const getKarmaFiles = (files, mappings) => { 63 | if (!files) { 64 | return {}; 65 | } 66 | 67 | let karmaFiles = files.map( 68 | applyMappings({ 69 | mock: file => ({ 70 | pattern: file, 71 | included: false 72 | }), 73 | ...mappings 74 | }) 75 | ); 76 | 77 | return { 78 | files: getFilesList(karmaFiles, 'ignore', false), 79 | exclude: getFilesList(karmaFiles, 'ignore', true) 80 | }; 81 | }; 82 | 83 | const getMochaFiles = (files, mappings) => { 84 | return getKarmaFiles(files, mappings).files; 85 | }; 86 | 87 | module.exports = { 88 | getWallabyFiles: getWallabyFiles, 89 | getKarmaFiles: getKarmaFiles, 90 | getMochaFiles: getMochaFiles 91 | }; 92 | -------------------------------------------------------------------------------- /test/specs/index-spec.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const expect = require('chai').expect; 4 | const testRunnerConfig = require('../../src/'); 5 | 6 | // Create pattern object 7 | let p = (pattern, instrument, load, ignore) => ({ 8 | pattern: pattern, 9 | instrument: instrument, 10 | load: load, 11 | ignore: ignore 12 | }); 13 | 14 | describe('the getKarmaFiles() method', () => { 15 | let getFiles = testRunnerConfig.getKarmaFiles; 16 | 17 | it('should return {} when passing nothing', () => { 18 | expect(getFiles()).to.eql({}); 19 | }); 20 | 21 | it('should return empty files / exclude list when passing no files or ignores', () => { 22 | expect(getFiles([])).to.eql({ 23 | files: [], 24 | exclude: [] 25 | }); 26 | }); 27 | 28 | describe('the default pattern mappings', () => { 29 | // There are currently no pattern mappings for all types except mock in karma 30 | it('should map files of type x to "files", and files of type ignore to "exclude", without pattern object', () => { 31 | expect( 32 | getFiles([ 33 | { type: 'x', files: ['xfile'] }, 34 | { type: 'z', files: ['yfile'] }, 35 | { type: 'ignore', files: ['ignorefile'] } 36 | ]) 37 | ).to.eql({ 38 | files: ['xfile', 'yfile'], 39 | exclude: ['ignorefile'] 40 | }); 41 | }); 42 | 43 | it('should map files of type mock to a pattern that is not included', () => { 44 | expect(getFiles([{ type: 'mock', files: ['mockfile'] }])).to.eql({ 45 | files: [{ pattern: 'mockfile', included: false }], 46 | exclude: [] 47 | }); 48 | }); 49 | }); 50 | 51 | it('should merge multiple file lists that have type ignore', () => { 52 | expect( 53 | getFiles([ 54 | { type: 'ignore', files: ['ignore1'] }, 55 | { type: 'ignore', files: ['ignore2'] } 56 | ]) 57 | ).to.eql({ 58 | files: [], 59 | exclude: ['ignore1', 'ignore2'] 60 | }); 61 | }); 62 | }); 63 | 64 | describe('the getMochaFiles method', () => { 65 | it('should return undefined when passing nothing', () => { 66 | expect(testRunnerConfig.getMochaFiles()).to.eql(undefined); 67 | }); 68 | 69 | it('should return empty array when passing empty file list', () => { 70 | expect(testRunnerConfig.getMochaFiles([])).to.eql([]); 71 | }); 72 | 73 | describe('the default pattern mappings', () => { 74 | it('should return the files list for the getKarmaFiles result', () => { 75 | expect( 76 | testRunnerConfig.getMochaFiles([ 77 | { type: 'x', files: ['xfile'] }, 78 | { type: 'z', files: ['yfile'] }, 79 | { type: 'mock', files: ['mockfile'] }, 80 | { type: 'ignore', files: ['ignorefile1'] }, 81 | { type: 'ignore', files: ['ignorefile2'] } 82 | ]) 83 | ).to.eql(['xfile', 'yfile', { pattern: 'mockfile', included: false }]); 84 | }); 85 | }); 86 | }); 87 | 88 | describe('the getWallabyFiles method', () => { 89 | let getFiles = testRunnerConfig.getWallabyFiles; 90 | 91 | it('should return {} when passing nothing', () => { 92 | expect(getFiles()).to.eql({}); 93 | }); 94 | 95 | it('should return empty files / exclude list when passing no files or ignores', () => { 96 | expect(getFiles([])).to.eql({ 97 | files: [], 98 | tests: [] 99 | }); 100 | }); 101 | 102 | describe('the default pattern mappings', () => { 103 | it('should map files of type config to "files" with pattern instrument: false, load: true, ignore: false', () => { 104 | expect(getFiles([{ type: 'config', files: ['configfile'] }])).to.eql({ 105 | files: [p('configfile', false, true, false)], 106 | tests: [] 107 | }); 108 | }); 109 | 110 | it('should map files of type ignore to "files" with pattern ignore: true', () => { 111 | expect(getFiles([{ type: 'ignore', files: ['ignorefile'] }])).to.eql({ 112 | files: [p('ignorefile', false, false, true)], 113 | tests: [] 114 | }); 115 | }); 116 | 117 | it('should map files of type lib to "files" with pattern instrument: false, load: true, ignore: false', () => { 118 | expect(getFiles([{ type: 'lib', files: ['libfile'] }])).to.eql({ 119 | files: [p('libfile', false, true, false)], 120 | tests: [] 121 | }); 122 | }); 123 | 124 | it('should map files of type mock to "files" with pattern instrument: false, load: false, ignore: false', () => { 125 | expect(getFiles([{ type: 'mock', files: ['mockfile'] }])).to.eql({ 126 | files: [p('mockfile', false, false, false)], 127 | tests: [] 128 | }); 129 | }); 130 | 131 | it('should map files of type spec to "specs" with pattern instrument: false, load: false, ignore: false and is ignored in the files list', () => { 132 | expect(getFiles([{ type: 'specs', files: ['specfile'] }])).to.eql({ 133 | files: [p('specfile', false, false, true)], 134 | tests: [p('specfile', true, true, false)] 135 | }); 136 | }); 137 | 138 | it('should add specs to the ignore list also when there are already files defined in that list', () => { 139 | expect( 140 | getFiles([ 141 | { type: 'src', files: ['srcfile'] }, 142 | { type: 'specs', files: ['specfile'] } 143 | ]) 144 | ).to.eql({ 145 | files: [ 146 | p('srcfile', true, true, false), 147 | p('specfile', false, false, true) 148 | ], 149 | tests: [p('specfile', true, true, false)] 150 | }); 151 | }); 152 | 153 | it('should map files of type src to "files" with pattern instrument: true, load: true, ignore: false', () => { 154 | expect(getFiles([{ type: 'src', files: ['srcfile'] }])).to.eql({ 155 | files: [p('srcfile', true, true, false)], 156 | tests: [] 157 | }); 158 | }); 159 | }); 160 | 161 | describe('overriding pattern mappings', () => { 162 | it('should override all pattern mappings when passed', () => { 163 | let createFakeMapping = mappingName => x => [mappingName, x]; 164 | 165 | expect( 166 | getFiles( 167 | [ 168 | { type: 'config', files: ['configfile'] }, 169 | { type: 'ignore', files: ['ignorefile'] }, 170 | { type: 'lib', files: ['libfile'] }, 171 | { type: 'mock', files: ['mockfile'] }, 172 | { type: 'specs', files: ['specfile'] }, 173 | { type: 'src', files: ['srcfile'] } 174 | ], 175 | { 176 | config: createFakeMapping('config'), 177 | ignore: createFakeMapping('ignore'), 178 | lib: createFakeMapping('lib'), 179 | mock: createFakeMapping('mock'), 180 | specs: createFakeMapping('specs'), 181 | src: createFakeMapping('src') 182 | } 183 | ) 184 | ).to.eql({ 185 | // Format: ['used mapping fn', 'filename'] 186 | files: [ 187 | ['config', 'configfile'], 188 | ['ignore', 'ignorefile'], 189 | ['ignore', 'specfile'], 190 | ['lib', 'libfile'], 191 | ['mock', 'mockfile'], 192 | ['src', 'srcfile'] 193 | ], 194 | tests: [['specs', 'specfile']] 195 | }); 196 | }); 197 | }); 198 | }); 199 | -------------------------------------------------------------------------------- /test/testFiles.js: -------------------------------------------------------------------------------- 1 | module.exports = [ 2 | { 3 | type: 'src', 4 | files: ['src/index.js'] 5 | }, 6 | { 7 | type: 'specs', 8 | files: ['test/specs/**/*.js'] 9 | } 10 | ]; 11 | -------------------------------------------------------------------------------- /wallaby.conf.js: -------------------------------------------------------------------------------- 1 | var testRunnerConfig = require('./src'); 2 | var wallabyFiles = testRunnerConfig.getWallabyFiles( 3 | require('./test/testFiles.js') 4 | ); 5 | 6 | module.exports = function() { 7 | return { 8 | files: wallabyFiles.files, 9 | tests: wallabyFiles.tests, 10 | testFramework: 'mocha', 11 | env: { 12 | type: 'node' 13 | } 14 | }; 15 | }; 16 | --------------------------------------------------------------------------------