├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── package-lock.json ├── package.json └── src └── index.js /.gitignore: -------------------------------------------------------------------------------- 1 | # NPM 2 | node_modules 3 | npm-debug.log 4 | 5 | # IDE 6 | **/.idea 7 | 8 | # OS 9 | .DS_Store 10 | .tmp 11 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .git 2 | node_modules 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Fidel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # :no_entry: DEPRECATED :no_entry: 2 | 3 | This repository is no longer being maintained. Further developments to this repository can be made by forking the project. 4 | 5 | Serverless Optimize Plugin 6 | ============================= 7 | [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/) 8 | [![serverless](http://public.serverless.com/badges/v3.svg)](http://www.serverless.com) 9 | [![npm version](https://badge.fury.io/js/serverless-plugin-optimize.svg)](https://badge.fury.io/js/serverless-plugin-optimize) 10 | [![npm downloads](https://img.shields.io/npm/dm/serverless-plugin-optimize.svg)](https://www.npmjs.com/package/serverless-plugin-optimize) 11 | [![license](https://img.shields.io/npm/l/serverless-plugin-optimize.svg)](https://raw.githubusercontent.com/FidelLimited/serverless-plugin-optimize/master/LICENSE) 12 | 13 | Bundle with Browserify, transpile and minify with Babel automatically to your NodeJS runtime compatible JavaScript. 14 | 15 | This plugin is a child of the great [serverless-optimizer-plugin](https://github.com/serverless/serverless-optimizer-plugin). Kudos! 16 | 17 | **Requirements:** 18 | * Serverless *v1.12.x* or higher. 19 | * AWS provider and nodejs4.3/6.10/8.10/10.x/12.x/14.x runtimes 20 | 21 | ## Setup 22 | 23 | Install via npm in the root of your Serverless service: 24 | ``` 25 | npm install serverless-plugin-optimize --save-dev 26 | ``` 27 | 28 | * Add the plugin to the `plugins` array in your Serverless `serverless.yml`: 29 | 30 | ```yml 31 | plugins: 32 | - serverless-plugin-optimize 33 | ``` 34 | 35 | * Set your packages to be built individually to have smaller packages: 36 | 37 | ```yml 38 | package: 39 | individually: true 40 | ``` 41 | 42 | * All done! Optimize will run on SLS `deploy` and `invoke local` commands 43 | 44 | ## Options 45 | 46 | Configuration options can be set globally in `custom` property and inside each function in `optimize` property. Function options overwrite global options. 47 | 48 | #### Global 49 | 50 | * **debug** (default `false`) - When debug is set to `true` it won't remove `prefix` folder and will generate debug output at the end of package creation. 51 | * **exclude** (default `['aws-sdk']`) - Array of modules or paths that will be excluded. 52 | * **extensions** (default `['.js', '.json']`) - Array of optional extra extensions modules that will be included. 53 | * **external** Array of modules to be copied into `node_modules` instead of being loaded into browserify bundle. Note that external modules will require that its dependencies are within its directory and this plugin *will not* do this for you. e.g. you should execute the following: (`cd external_modules/some-module && npm i --prod`) 54 | * **externalPaths** Optional object key value pair of external module name and path. If not set, external modules will look for reference path in `node_modules`. 55 | * **global** (default `false`) - When global is set to `true` transforms will run inside `node_modules`. 56 | * **ignore** - Array of modules or paths that won't be transformed with Babelify. 57 | * **includePaths** - Array of file paths that will be included in the bundle package. Read [here](#includepaths-files) how to call these files. 58 | * **minify** (default `true`) - When minify is set to `false` Babili preset won't be added. 59 | * **plugins** - Array of Babel plugins. 60 | * **prefix** (default `_optimize`) - Folder to output bundle. 61 | * **presets** (default `['env']`) - Array of Babel presets. 62 | 63 | ```yml 64 | custom: 65 | optimize: 66 | debug: true 67 | exclude: ['ajv'] 68 | extensions: ['.extension'] 69 | external: ['sharp'] 70 | externalPaths: 71 | sharp: 'external_modules/sharp' 72 | global: true 73 | ignore: ['ajv'] 74 | includePaths: ['bin/some-binary-file'] 75 | minify: false 76 | prefix: 'dist' 77 | plugins: ['transform-decorators-legacy'] 78 | presets: ['es2017'] 79 | ``` 80 | 81 | #### Function 82 | 83 | * **optimize** (default `true`) - When optimize is set to `false` the function won't be optimized. 84 | 85 | ```yml 86 | functions: 87 | hello: 88 | optimize: false 89 | ``` 90 | 91 | * **exclude** - Array of modules or paths that will be excluded. 92 | * **extensions** - Array of optional extra extensions modules that will be included. 93 | * **external** Array of modules to be copied into `node_modules` instead of being loaded into browserify bundle. Note that external modules will require it's dependencies within it's directory. (`cd external_modules/some-module && npm i --prod`) 94 | * **externalPaths** Optional object key value pair of external module name and path. If not set, external modules will look for reference path in `node_modules`. 95 | * **global** - When global is set to `true` transforms will run inside `node_modules`. 96 | * **ignore** - Array of modules or paths that won't be transformed with Babelify. 97 | * **includePaths** - Array of file paths that will be included in the bundle package. Read [here](#includepaths-files) how to call these files. 98 | * **minify** - When minify is set to `false` Babili preset won't be added. 99 | * **plugins** - Array of Babel plugins. 100 | * **presets** - Array of Babel presets. 101 | 102 | ```yml 103 | functions: 104 | hello: 105 | optimize: 106 | exclude: ['ajv'] 107 | extensions: ['.extension'] 108 | external: ['sharp'] 109 | externalPaths: 110 | sharp: 'external_modules/sharp' 111 | global: false 112 | ignore: ['ajv'] 113 | includePaths: ['bin/some-binary-file'] 114 | minify: false 115 |      plugins: ['transform-decorators-legacy'] 116 |      presets: ['es2017'] 117 | ``` 118 | 119 | #### includePaths Files 120 | 121 | There is a difference you must know between calling files locally and after optimization with `includePaths`. 122 | 123 | When Optimize packages your functions, it bundles them inside `/${prefix}/${functionName}/...` and when your lambda function runs in AWS it will run from root `/var/task/${prefix}/${functionName}/...` and your `CWD` will be `/var/task/`. 124 | 125 | Solution in [#32](https://github.com/FidelLimited/serverless-plugin-optimize/issues/32#issuecomment-278432399) by @hlegendre. `path.resolve(process.env.LAMBDA_TASK_ROOT, ${prefix}, process.env.AWS_LAMBDA_FUNCTION_NAME, ${includePathFile})`. 126 | 127 | ## Contribute 128 | 129 | Help us making this plugin better and future proof. 130 | 131 | * Clone the code 132 | * Install the dependencies with `npm install` 133 | * Create a feature branch `git checkout -b new_feature` 134 | * Lint with standard `npm run lint` 135 | 136 | ## License 137 | 138 | This software is released under the MIT license. See [the license file](LICENSE) for more details. 139 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "serverless-plugin-optimize", 3 | "version": "4.2.1-rc.1", 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 | "requires": { 12 | "@babel/highlight": "^7.0.0" 13 | } 14 | }, 15 | "@babel/core": { 16 | "version": "7.7.2", 17 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.2.tgz", 18 | "integrity": "sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ==", 19 | "requires": { 20 | "@babel/code-frame": "^7.5.5", 21 | "@babel/generator": "^7.7.2", 22 | "@babel/helpers": "^7.7.0", 23 | "@babel/parser": "^7.7.2", 24 | "@babel/template": "^7.7.0", 25 | "@babel/traverse": "^7.7.2", 26 | "@babel/types": "^7.7.2", 27 | "convert-source-map": "^1.7.0", 28 | "debug": "^4.1.0", 29 | "json5": "^2.1.0", 30 | "lodash": "^4.17.13", 31 | "resolve": "^1.3.2", 32 | "semver": "^5.4.1", 33 | "source-map": "^0.5.0" 34 | } 35 | }, 36 | "@babel/generator": { 37 | "version": "7.7.2", 38 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.2.tgz", 39 | "integrity": "sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ==", 40 | "requires": { 41 | "@babel/types": "^7.7.2", 42 | "jsesc": "^2.5.1", 43 | "lodash": "^4.17.13", 44 | "source-map": "^0.5.0" 45 | } 46 | }, 47 | "@babel/helper-annotate-as-pure": { 48 | "version": "7.7.0", 49 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz", 50 | "integrity": "sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg==", 51 | "requires": { 52 | "@babel/types": "^7.7.0" 53 | } 54 | }, 55 | "@babel/helper-builder-binary-assignment-operator-visitor": { 56 | "version": "7.7.0", 57 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.0.tgz", 58 | "integrity": "sha512-Cd8r8zs4RKDwMG/92lpZcnn5WPQ3LAMQbCw42oqUh4s7vsSN5ANUZjMel0OOnxDLq57hoDDbai+ryygYfCTOsw==", 59 | "requires": { 60 | "@babel/helper-explode-assignable-expression": "^7.7.0", 61 | "@babel/types": "^7.7.0" 62 | } 63 | }, 64 | "@babel/helper-call-delegate": { 65 | "version": "7.7.0", 66 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.7.0.tgz", 67 | "integrity": "sha512-Su0Mdq7uSSWGZayGMMQ+z6lnL00mMCnGAbO/R0ZO9odIdB/WNU/VfQKqMQU0fdIsxQYbRjDM4BixIa93SQIpvw==", 68 | "requires": { 69 | "@babel/helper-hoist-variables": "^7.7.0", 70 | "@babel/traverse": "^7.7.0", 71 | "@babel/types": "^7.7.0" 72 | } 73 | }, 74 | "@babel/helper-create-regexp-features-plugin": { 75 | "version": "7.7.2", 76 | "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz", 77 | "integrity": "sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ==", 78 | "requires": { 79 | "@babel/helper-regex": "^7.4.4", 80 | "regexpu-core": "^4.6.0" 81 | } 82 | }, 83 | "@babel/helper-define-map": { 84 | "version": "7.7.0", 85 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz", 86 | "integrity": "sha512-kPKWPb0dMpZi+ov1hJiwse9dWweZsz3V9rP4KdytnX1E7z3cTNmFGglwklzFPuqIcHLIY3bgKSs4vkwXXdflQA==", 87 | "requires": { 88 | "@babel/helper-function-name": "^7.7.0", 89 | "@babel/types": "^7.7.0", 90 | "lodash": "^4.17.13" 91 | } 92 | }, 93 | "@babel/helper-explode-assignable-expression": { 94 | "version": "7.7.0", 95 | "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.0.tgz", 96 | "integrity": "sha512-CDs26w2shdD1urNUAji2RJXyBFCaR+iBEGnFz3l7maizMkQe3saVw9WtjG1tz8CwbjvlFnaSLVhgnu1SWaherg==", 97 | "requires": { 98 | "@babel/traverse": "^7.7.0", 99 | "@babel/types": "^7.7.0" 100 | } 101 | }, 102 | "@babel/helper-function-name": { 103 | "version": "7.7.0", 104 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz", 105 | "integrity": "sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q==", 106 | "requires": { 107 | "@babel/helper-get-function-arity": "^7.7.0", 108 | "@babel/template": "^7.7.0", 109 | "@babel/types": "^7.7.0" 110 | } 111 | }, 112 | "@babel/helper-get-function-arity": { 113 | "version": "7.7.0", 114 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz", 115 | "integrity": "sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw==", 116 | "requires": { 117 | "@babel/types": "^7.7.0" 118 | } 119 | }, 120 | "@babel/helper-hoist-variables": { 121 | "version": "7.7.0", 122 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz", 123 | "integrity": "sha512-LUe/92NqsDAkJjjCEWkNe+/PcpnisvnqdlRe19FahVapa4jndeuJ+FBiTX1rcAKWKcJGE+C3Q3tuEuxkSmCEiQ==", 124 | "requires": { 125 | "@babel/types": "^7.7.0" 126 | } 127 | }, 128 | "@babel/helper-member-expression-to-functions": { 129 | "version": "7.7.0", 130 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz", 131 | "integrity": "sha512-QaCZLO2RtBcmvO/ekOLp8p7R5X2JriKRizeDpm5ChATAFWrrYDcDxPuCIBXKyBjY+i1vYSdcUTMIb8psfxHDPA==", 132 | "requires": { 133 | "@babel/types": "^7.7.0" 134 | } 135 | }, 136 | "@babel/helper-module-imports": { 137 | "version": "7.7.0", 138 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz", 139 | "integrity": "sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw==", 140 | "requires": { 141 | "@babel/types": "^7.7.0" 142 | } 143 | }, 144 | "@babel/helper-module-transforms": { 145 | "version": "7.7.0", 146 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz", 147 | "integrity": "sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ==", 148 | "requires": { 149 | "@babel/helper-module-imports": "^7.7.0", 150 | "@babel/helper-simple-access": "^7.7.0", 151 | "@babel/helper-split-export-declaration": "^7.7.0", 152 | "@babel/template": "^7.7.0", 153 | "@babel/types": "^7.7.0", 154 | "lodash": "^4.17.13" 155 | } 156 | }, 157 | "@babel/helper-optimise-call-expression": { 158 | "version": "7.7.0", 159 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz", 160 | "integrity": "sha512-48TeqmbazjNU/65niiiJIJRc5JozB8acui1OS7bSd6PgxfuovWsvjfWSzlgx+gPFdVveNzUdpdIg5l56Pl5jqg==", 161 | "requires": { 162 | "@babel/types": "^7.7.0" 163 | } 164 | }, 165 | "@babel/helper-plugin-utils": { 166 | "version": "7.0.0", 167 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", 168 | "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==" 169 | }, 170 | "@babel/helper-regex": { 171 | "version": "7.5.5", 172 | "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", 173 | "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", 174 | "requires": { 175 | "lodash": "^4.17.13" 176 | } 177 | }, 178 | "@babel/helper-remap-async-to-generator": { 179 | "version": "7.7.0", 180 | "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz", 181 | "integrity": "sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw==", 182 | "requires": { 183 | "@babel/helper-annotate-as-pure": "^7.7.0", 184 | "@babel/helper-wrap-function": "^7.7.0", 185 | "@babel/template": "^7.7.0", 186 | "@babel/traverse": "^7.7.0", 187 | "@babel/types": "^7.7.0" 188 | } 189 | }, 190 | "@babel/helper-replace-supers": { 191 | "version": "7.7.0", 192 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz", 193 | "integrity": "sha512-5ALYEul5V8xNdxEeWvRsBzLMxQksT7MaStpxjJf9KsnLxpAKBtfw5NeMKZJSYDa0lKdOcy0g+JT/f5mPSulUgg==", 194 | "requires": { 195 | "@babel/helper-member-expression-to-functions": "^7.7.0", 196 | "@babel/helper-optimise-call-expression": "^7.7.0", 197 | "@babel/traverse": "^7.7.0", 198 | "@babel/types": "^7.7.0" 199 | } 200 | }, 201 | "@babel/helper-simple-access": { 202 | "version": "7.7.0", 203 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz", 204 | "integrity": "sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g==", 205 | "requires": { 206 | "@babel/template": "^7.7.0", 207 | "@babel/types": "^7.7.0" 208 | } 209 | }, 210 | "@babel/helper-split-export-declaration": { 211 | "version": "7.7.0", 212 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz", 213 | "integrity": "sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA==", 214 | "requires": { 215 | "@babel/types": "^7.7.0" 216 | } 217 | }, 218 | "@babel/helper-wrap-function": { 219 | "version": "7.7.0", 220 | "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz", 221 | "integrity": "sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w==", 222 | "requires": { 223 | "@babel/helper-function-name": "^7.7.0", 224 | "@babel/template": "^7.7.0", 225 | "@babel/traverse": "^7.7.0", 226 | "@babel/types": "^7.7.0" 227 | } 228 | }, 229 | "@babel/helpers": { 230 | "version": "7.7.0", 231 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.0.tgz", 232 | "integrity": "sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g==", 233 | "requires": { 234 | "@babel/template": "^7.7.0", 235 | "@babel/traverse": "^7.7.0", 236 | "@babel/types": "^7.7.0" 237 | } 238 | }, 239 | "@babel/highlight": { 240 | "version": "7.5.0", 241 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", 242 | "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", 243 | "requires": { 244 | "chalk": "^2.0.0", 245 | "esutils": "^2.0.2", 246 | "js-tokens": "^4.0.0" 247 | } 248 | }, 249 | "@babel/parser": { 250 | "version": "7.7.3", 251 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.3.tgz", 252 | "integrity": "sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A==" 253 | }, 254 | "@babel/plugin-proposal-async-generator-functions": { 255 | "version": "7.7.0", 256 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz", 257 | "integrity": "sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA==", 258 | "requires": { 259 | "@babel/helper-plugin-utils": "^7.0.0", 260 | "@babel/helper-remap-async-to-generator": "^7.7.0", 261 | "@babel/plugin-syntax-async-generators": "^7.2.0" 262 | } 263 | }, 264 | "@babel/plugin-proposal-dynamic-import": { 265 | "version": "7.7.0", 266 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz", 267 | "integrity": "sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ==", 268 | "requires": { 269 | "@babel/helper-plugin-utils": "^7.0.0", 270 | "@babel/plugin-syntax-dynamic-import": "^7.2.0" 271 | } 272 | }, 273 | "@babel/plugin-proposal-json-strings": { 274 | "version": "7.2.0", 275 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", 276 | "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", 277 | "requires": { 278 | "@babel/helper-plugin-utils": "^7.0.0", 279 | "@babel/plugin-syntax-json-strings": "^7.2.0" 280 | } 281 | }, 282 | "@babel/plugin-proposal-object-rest-spread": { 283 | "version": "7.6.2", 284 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz", 285 | "integrity": "sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw==", 286 | "requires": { 287 | "@babel/helper-plugin-utils": "^7.0.0", 288 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0" 289 | } 290 | }, 291 | "@babel/plugin-proposal-optional-catch-binding": { 292 | "version": "7.2.0", 293 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", 294 | "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", 295 | "requires": { 296 | "@babel/helper-plugin-utils": "^7.0.0", 297 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" 298 | } 299 | }, 300 | "@babel/plugin-proposal-unicode-property-regex": { 301 | "version": "7.7.0", 302 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz", 303 | "integrity": "sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw==", 304 | "requires": { 305 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 306 | "@babel/helper-plugin-utils": "^7.0.0" 307 | } 308 | }, 309 | "@babel/plugin-syntax-async-generators": { 310 | "version": "7.2.0", 311 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", 312 | "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", 313 | "requires": { 314 | "@babel/helper-plugin-utils": "^7.0.0" 315 | } 316 | }, 317 | "@babel/plugin-syntax-dynamic-import": { 318 | "version": "7.2.0", 319 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", 320 | "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", 321 | "requires": { 322 | "@babel/helper-plugin-utils": "^7.0.0" 323 | } 324 | }, 325 | "@babel/plugin-syntax-json-strings": { 326 | "version": "7.2.0", 327 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", 328 | "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", 329 | "requires": { 330 | "@babel/helper-plugin-utils": "^7.0.0" 331 | } 332 | }, 333 | "@babel/plugin-syntax-object-rest-spread": { 334 | "version": "7.2.0", 335 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", 336 | "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", 337 | "requires": { 338 | "@babel/helper-plugin-utils": "^7.0.0" 339 | } 340 | }, 341 | "@babel/plugin-syntax-optional-catch-binding": { 342 | "version": "7.2.0", 343 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", 344 | "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", 345 | "requires": { 346 | "@babel/helper-plugin-utils": "^7.0.0" 347 | } 348 | }, 349 | "@babel/plugin-syntax-top-level-await": { 350 | "version": "7.7.0", 351 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz", 352 | "integrity": "sha512-hi8FUNiFIY1fnUI2n1ViB1DR0R4QeK4iHcTlW6aJkrPoTdb8Rf1EMQ6GT3f67DDkYyWgew9DFoOZ6gOoEsdzTA==", 353 | "requires": { 354 | "@babel/helper-plugin-utils": "^7.0.0" 355 | } 356 | }, 357 | "@babel/plugin-transform-arrow-functions": { 358 | "version": "7.2.0", 359 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", 360 | "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", 361 | "requires": { 362 | "@babel/helper-plugin-utils": "^7.0.0" 363 | } 364 | }, 365 | "@babel/plugin-transform-async-to-generator": { 366 | "version": "7.7.0", 367 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz", 368 | "integrity": "sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw==", 369 | "requires": { 370 | "@babel/helper-module-imports": "^7.7.0", 371 | "@babel/helper-plugin-utils": "^7.0.0", 372 | "@babel/helper-remap-async-to-generator": "^7.7.0" 373 | } 374 | }, 375 | "@babel/plugin-transform-block-scoped-functions": { 376 | "version": "7.2.0", 377 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", 378 | "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", 379 | "requires": { 380 | "@babel/helper-plugin-utils": "^7.0.0" 381 | } 382 | }, 383 | "@babel/plugin-transform-block-scoping": { 384 | "version": "7.6.3", 385 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz", 386 | "integrity": "sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw==", 387 | "requires": { 388 | "@babel/helper-plugin-utils": "^7.0.0", 389 | "lodash": "^4.17.13" 390 | } 391 | }, 392 | "@babel/plugin-transform-classes": { 393 | "version": "7.7.0", 394 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz", 395 | "integrity": "sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA==", 396 | "requires": { 397 | "@babel/helper-annotate-as-pure": "^7.7.0", 398 | "@babel/helper-define-map": "^7.7.0", 399 | "@babel/helper-function-name": "^7.7.0", 400 | "@babel/helper-optimise-call-expression": "^7.7.0", 401 | "@babel/helper-plugin-utils": "^7.0.0", 402 | "@babel/helper-replace-supers": "^7.7.0", 403 | "@babel/helper-split-export-declaration": "^7.7.0", 404 | "globals": "^11.1.0" 405 | } 406 | }, 407 | "@babel/plugin-transform-computed-properties": { 408 | "version": "7.2.0", 409 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", 410 | "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", 411 | "requires": { 412 | "@babel/helper-plugin-utils": "^7.0.0" 413 | } 414 | }, 415 | "@babel/plugin-transform-destructuring": { 416 | "version": "7.6.0", 417 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz", 418 | "integrity": "sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ==", 419 | "requires": { 420 | "@babel/helper-plugin-utils": "^7.0.0" 421 | } 422 | }, 423 | "@babel/plugin-transform-dotall-regex": { 424 | "version": "7.7.0", 425 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz", 426 | "integrity": "sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA==", 427 | "requires": { 428 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 429 | "@babel/helper-plugin-utils": "^7.0.0" 430 | } 431 | }, 432 | "@babel/plugin-transform-duplicate-keys": { 433 | "version": "7.5.0", 434 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz", 435 | "integrity": "sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==", 436 | "requires": { 437 | "@babel/helper-plugin-utils": "^7.0.0" 438 | } 439 | }, 440 | "@babel/plugin-transform-exponentiation-operator": { 441 | "version": "7.2.0", 442 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", 443 | "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", 444 | "requires": { 445 | "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", 446 | "@babel/helper-plugin-utils": "^7.0.0" 447 | } 448 | }, 449 | "@babel/plugin-transform-for-of": { 450 | "version": "7.4.4", 451 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", 452 | "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", 453 | "requires": { 454 | "@babel/helper-plugin-utils": "^7.0.0" 455 | } 456 | }, 457 | "@babel/plugin-transform-function-name": { 458 | "version": "7.7.0", 459 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz", 460 | "integrity": "sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA==", 461 | "requires": { 462 | "@babel/helper-function-name": "^7.7.0", 463 | "@babel/helper-plugin-utils": "^7.0.0" 464 | } 465 | }, 466 | "@babel/plugin-transform-literals": { 467 | "version": "7.2.0", 468 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", 469 | "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", 470 | "requires": { 471 | "@babel/helper-plugin-utils": "^7.0.0" 472 | } 473 | }, 474 | "@babel/plugin-transform-member-expression-literals": { 475 | "version": "7.2.0", 476 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", 477 | "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", 478 | "requires": { 479 | "@babel/helper-plugin-utils": "^7.0.0" 480 | } 481 | }, 482 | "@babel/plugin-transform-modules-amd": { 483 | "version": "7.5.0", 484 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz", 485 | "integrity": "sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==", 486 | "requires": { 487 | "@babel/helper-module-transforms": "^7.1.0", 488 | "@babel/helper-plugin-utils": "^7.0.0", 489 | "babel-plugin-dynamic-import-node": "^2.3.0" 490 | } 491 | }, 492 | "@babel/plugin-transform-modules-commonjs": { 493 | "version": "7.7.0", 494 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz", 495 | "integrity": "sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg==", 496 | "requires": { 497 | "@babel/helper-module-transforms": "^7.7.0", 498 | "@babel/helper-plugin-utils": "^7.0.0", 499 | "@babel/helper-simple-access": "^7.7.0", 500 | "babel-plugin-dynamic-import-node": "^2.3.0" 501 | } 502 | }, 503 | "@babel/plugin-transform-modules-systemjs": { 504 | "version": "7.7.0", 505 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz", 506 | "integrity": "sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg==", 507 | "requires": { 508 | "@babel/helper-hoist-variables": "^7.7.0", 509 | "@babel/helper-plugin-utils": "^7.0.0", 510 | "babel-plugin-dynamic-import-node": "^2.3.0" 511 | } 512 | }, 513 | "@babel/plugin-transform-modules-umd": { 514 | "version": "7.7.0", 515 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz", 516 | "integrity": "sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA==", 517 | "requires": { 518 | "@babel/helper-module-transforms": "^7.7.0", 519 | "@babel/helper-plugin-utils": "^7.0.0" 520 | } 521 | }, 522 | "@babel/plugin-transform-named-capturing-groups-regex": { 523 | "version": "7.7.0", 524 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz", 525 | "integrity": "sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg==", 526 | "requires": { 527 | "@babel/helper-create-regexp-features-plugin": "^7.7.0" 528 | } 529 | }, 530 | "@babel/plugin-transform-new-target": { 531 | "version": "7.4.4", 532 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", 533 | "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", 534 | "requires": { 535 | "@babel/helper-plugin-utils": "^7.0.0" 536 | } 537 | }, 538 | "@babel/plugin-transform-object-super": { 539 | "version": "7.5.5", 540 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz", 541 | "integrity": "sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==", 542 | "requires": { 543 | "@babel/helper-plugin-utils": "^7.0.0", 544 | "@babel/helper-replace-supers": "^7.5.5" 545 | } 546 | }, 547 | "@babel/plugin-transform-parameters": { 548 | "version": "7.4.4", 549 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", 550 | "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", 551 | "requires": { 552 | "@babel/helper-call-delegate": "^7.4.4", 553 | "@babel/helper-get-function-arity": "^7.0.0", 554 | "@babel/helper-plugin-utils": "^7.0.0" 555 | } 556 | }, 557 | "@babel/plugin-transform-property-literals": { 558 | "version": "7.2.0", 559 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", 560 | "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", 561 | "requires": { 562 | "@babel/helper-plugin-utils": "^7.0.0" 563 | } 564 | }, 565 | "@babel/plugin-transform-regenerator": { 566 | "version": "7.7.0", 567 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz", 568 | "integrity": "sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg==", 569 | "requires": { 570 | "regenerator-transform": "^0.14.0" 571 | } 572 | }, 573 | "@babel/plugin-transform-reserved-words": { 574 | "version": "7.2.0", 575 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", 576 | "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", 577 | "requires": { 578 | "@babel/helper-plugin-utils": "^7.0.0" 579 | } 580 | }, 581 | "@babel/plugin-transform-shorthand-properties": { 582 | "version": "7.2.0", 583 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", 584 | "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", 585 | "requires": { 586 | "@babel/helper-plugin-utils": "^7.0.0" 587 | } 588 | }, 589 | "@babel/plugin-transform-spread": { 590 | "version": "7.6.2", 591 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz", 592 | "integrity": "sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg==", 593 | "requires": { 594 | "@babel/helper-plugin-utils": "^7.0.0" 595 | } 596 | }, 597 | "@babel/plugin-transform-sticky-regex": { 598 | "version": "7.2.0", 599 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", 600 | "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", 601 | "requires": { 602 | "@babel/helper-plugin-utils": "^7.0.0", 603 | "@babel/helper-regex": "^7.0.0" 604 | } 605 | }, 606 | "@babel/plugin-transform-template-literals": { 607 | "version": "7.4.4", 608 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", 609 | "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", 610 | "requires": { 611 | "@babel/helper-annotate-as-pure": "^7.0.0", 612 | "@babel/helper-plugin-utils": "^7.0.0" 613 | } 614 | }, 615 | "@babel/plugin-transform-typeof-symbol": { 616 | "version": "7.2.0", 617 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", 618 | "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", 619 | "requires": { 620 | "@babel/helper-plugin-utils": "^7.0.0" 621 | } 622 | }, 623 | "@babel/plugin-transform-unicode-regex": { 624 | "version": "7.7.0", 625 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz", 626 | "integrity": "sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA==", 627 | "requires": { 628 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 629 | "@babel/helper-plugin-utils": "^7.0.0" 630 | } 631 | }, 632 | "@babel/preset-env": { 633 | "version": "7.7.1", 634 | "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.7.1.tgz", 635 | "integrity": "sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA==", 636 | "requires": { 637 | "@babel/helper-module-imports": "^7.7.0", 638 | "@babel/helper-plugin-utils": "^7.0.0", 639 | "@babel/plugin-proposal-async-generator-functions": "^7.7.0", 640 | "@babel/plugin-proposal-dynamic-import": "^7.7.0", 641 | "@babel/plugin-proposal-json-strings": "^7.2.0", 642 | "@babel/plugin-proposal-object-rest-spread": "^7.6.2", 643 | "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", 644 | "@babel/plugin-proposal-unicode-property-regex": "^7.7.0", 645 | "@babel/plugin-syntax-async-generators": "^7.2.0", 646 | "@babel/plugin-syntax-dynamic-import": "^7.2.0", 647 | "@babel/plugin-syntax-json-strings": "^7.2.0", 648 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0", 649 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", 650 | "@babel/plugin-syntax-top-level-await": "^7.7.0", 651 | "@babel/plugin-transform-arrow-functions": "^7.2.0", 652 | "@babel/plugin-transform-async-to-generator": "^7.7.0", 653 | "@babel/plugin-transform-block-scoped-functions": "^7.2.0", 654 | "@babel/plugin-transform-block-scoping": "^7.6.3", 655 | "@babel/plugin-transform-classes": "^7.7.0", 656 | "@babel/plugin-transform-computed-properties": "^7.2.0", 657 | "@babel/plugin-transform-destructuring": "^7.6.0", 658 | "@babel/plugin-transform-dotall-regex": "^7.7.0", 659 | "@babel/plugin-transform-duplicate-keys": "^7.5.0", 660 | "@babel/plugin-transform-exponentiation-operator": "^7.2.0", 661 | "@babel/plugin-transform-for-of": "^7.4.4", 662 | "@babel/plugin-transform-function-name": "^7.7.0", 663 | "@babel/plugin-transform-literals": "^7.2.0", 664 | "@babel/plugin-transform-member-expression-literals": "^7.2.0", 665 | "@babel/plugin-transform-modules-amd": "^7.5.0", 666 | "@babel/plugin-transform-modules-commonjs": "^7.7.0", 667 | "@babel/plugin-transform-modules-systemjs": "^7.7.0", 668 | "@babel/plugin-transform-modules-umd": "^7.7.0", 669 | "@babel/plugin-transform-named-capturing-groups-regex": "^7.7.0", 670 | "@babel/plugin-transform-new-target": "^7.4.4", 671 | "@babel/plugin-transform-object-super": "^7.5.5", 672 | "@babel/plugin-transform-parameters": "^7.4.4", 673 | "@babel/plugin-transform-property-literals": "^7.2.0", 674 | "@babel/plugin-transform-regenerator": "^7.7.0", 675 | "@babel/plugin-transform-reserved-words": "^7.2.0", 676 | "@babel/plugin-transform-shorthand-properties": "^7.2.0", 677 | "@babel/plugin-transform-spread": "^7.6.2", 678 | "@babel/plugin-transform-sticky-regex": "^7.2.0", 679 | "@babel/plugin-transform-template-literals": "^7.4.4", 680 | "@babel/plugin-transform-typeof-symbol": "^7.2.0", 681 | "@babel/plugin-transform-unicode-regex": "^7.7.0", 682 | "@babel/types": "^7.7.1", 683 | "browserslist": "^4.6.0", 684 | "core-js-compat": "^3.1.1", 685 | "invariant": "^2.2.2", 686 | "js-levenshtein": "^1.1.3", 687 | "semver": "^5.5.0" 688 | } 689 | }, 690 | "@babel/template": { 691 | "version": "7.7.0", 692 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.0.tgz", 693 | "integrity": "sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ==", 694 | "requires": { 695 | "@babel/code-frame": "^7.0.0", 696 | "@babel/parser": "^7.7.0", 697 | "@babel/types": "^7.7.0" 698 | } 699 | }, 700 | "@babel/traverse": { 701 | "version": "7.7.2", 702 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.2.tgz", 703 | "integrity": "sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw==", 704 | "requires": { 705 | "@babel/code-frame": "^7.5.5", 706 | "@babel/generator": "^7.7.2", 707 | "@babel/helper-function-name": "^7.7.0", 708 | "@babel/helper-split-export-declaration": "^7.7.0", 709 | "@babel/parser": "^7.7.2", 710 | "@babel/types": "^7.7.2", 711 | "debug": "^4.1.0", 712 | "globals": "^11.1.0", 713 | "lodash": "^4.17.13" 714 | } 715 | }, 716 | "@babel/types": { 717 | "version": "7.7.2", 718 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.2.tgz", 719 | "integrity": "sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA==", 720 | "requires": { 721 | "esutils": "^2.0.2", 722 | "lodash": "^4.17.13", 723 | "to-fast-properties": "^2.0.0" 724 | } 725 | }, 726 | "JSONStream": { 727 | "version": "1.3.5", 728 | "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", 729 | "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", 730 | "requires": { 731 | "jsonparse": "^1.2.0", 732 | "through": ">=2.2.7 <3" 733 | } 734 | }, 735 | "acorn": { 736 | "version": "7.1.1", 737 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", 738 | "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" 739 | }, 740 | "acorn-jsx": { 741 | "version": "5.1.0", 742 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz", 743 | "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==", 744 | "dev": true 745 | }, 746 | "acorn-node": { 747 | "version": "1.8.2", 748 | "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", 749 | "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", 750 | "requires": { 751 | "acorn": "^7.0.0", 752 | "acorn-walk": "^7.0.0", 753 | "xtend": "^4.0.2" 754 | } 755 | }, 756 | "acorn-walk": { 757 | "version": "7.0.0", 758 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.0.0.tgz", 759 | "integrity": "sha512-7Bv1We7ZGuU79zZbb6rRqcpxo3OY+zrdtloZWoyD8fmGX+FeXRjE+iuGkZjSXLVovLzrsvMGMy0EkwA0E0umxg==" 760 | }, 761 | "ajv": { 762 | "version": "6.10.2", 763 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", 764 | "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", 765 | "dev": true, 766 | "requires": { 767 | "fast-deep-equal": "^2.0.1", 768 | "fast-json-stable-stringify": "^2.0.0", 769 | "json-schema-traverse": "^0.4.1", 770 | "uri-js": "^4.2.2" 771 | } 772 | }, 773 | "ajv-keywords": { 774 | "version": "3.4.1", 775 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", 776 | "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", 777 | "dev": true 778 | }, 779 | "ansi-escapes": { 780 | "version": "3.2.0", 781 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", 782 | "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", 783 | "dev": true 784 | }, 785 | "ansi-regex": { 786 | "version": "2.1.1", 787 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 788 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 789 | "dev": true 790 | }, 791 | "ansi-styles": { 792 | "version": "3.2.1", 793 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 794 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 795 | "requires": { 796 | "color-convert": "^1.9.0" 797 | } 798 | }, 799 | "argparse": { 800 | "version": "1.0.10", 801 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 802 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 803 | "dev": true, 804 | "requires": { 805 | "sprintf-js": "~1.0.2" 806 | } 807 | }, 808 | "array-includes": { 809 | "version": "3.0.3", 810 | "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", 811 | "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", 812 | "dev": true, 813 | "requires": { 814 | "define-properties": "^1.1.2", 815 | "es-abstract": "^1.7.0" 816 | } 817 | }, 818 | "asn1.js": { 819 | "version": "4.10.1", 820 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", 821 | "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", 822 | "requires": { 823 | "bn.js": "^4.0.0", 824 | "inherits": "^2.0.1", 825 | "minimalistic-assert": "^1.0.0" 826 | } 827 | }, 828 | "assert": { 829 | "version": "1.5.0", 830 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", 831 | "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", 832 | "requires": { 833 | "object-assign": "^4.1.1", 834 | "util": "0.10.3" 835 | }, 836 | "dependencies": { 837 | "inherits": { 838 | "version": "2.0.1", 839 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", 840 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" 841 | }, 842 | "util": { 843 | "version": "0.10.3", 844 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", 845 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", 846 | "requires": { 847 | "inherits": "2.0.1" 848 | } 849 | } 850 | } 851 | }, 852 | "babel-code-frame": { 853 | "version": "6.26.0", 854 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 855 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 856 | "dev": true, 857 | "requires": { 858 | "chalk": "^1.1.3", 859 | "esutils": "^2.0.2", 860 | "js-tokens": "^3.0.2" 861 | }, 862 | "dependencies": { 863 | "ansi-styles": { 864 | "version": "2.2.1", 865 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 866 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 867 | "dev": true 868 | }, 869 | "chalk": { 870 | "version": "1.1.3", 871 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 872 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 873 | "dev": true, 874 | "requires": { 875 | "ansi-styles": "^2.2.1", 876 | "escape-string-regexp": "^1.0.2", 877 | "has-ansi": "^2.0.0", 878 | "strip-ansi": "^3.0.0", 879 | "supports-color": "^2.0.0" 880 | } 881 | }, 882 | "js-tokens": { 883 | "version": "3.0.2", 884 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 885 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 886 | "dev": true 887 | }, 888 | "strip-ansi": { 889 | "version": "3.0.1", 890 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 891 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 892 | "dev": true, 893 | "requires": { 894 | "ansi-regex": "^2.0.0" 895 | } 896 | }, 897 | "supports-color": { 898 | "version": "2.0.0", 899 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 900 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 901 | "dev": true 902 | } 903 | } 904 | }, 905 | "babel-helper-evaluate-path": { 906 | "version": "0.5.0", 907 | "resolved": "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz", 908 | "integrity": "sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA==" 909 | }, 910 | "babel-helper-flip-expressions": { 911 | "version": "0.4.3", 912 | "resolved": "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz", 913 | "integrity": "sha1-NpZzahKKwYvCUlS19AoizrPB0/0=" 914 | }, 915 | "babel-helper-is-nodes-equiv": { 916 | "version": "0.0.1", 917 | "resolved": "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz", 918 | "integrity": "sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ=" 919 | }, 920 | "babel-helper-is-void-0": { 921 | "version": "0.4.3", 922 | "resolved": "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz", 923 | "integrity": "sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4=" 924 | }, 925 | "babel-helper-mark-eval-scopes": { 926 | "version": "0.4.3", 927 | "resolved": "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz", 928 | "integrity": "sha1-0kSjvvmESHJgP/tG4izorN9VFWI=" 929 | }, 930 | "babel-helper-remove-or-void": { 931 | "version": "0.4.3", 932 | "resolved": "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz", 933 | "integrity": "sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA=" 934 | }, 935 | "babel-helper-to-multiple-sequence-expressions": { 936 | "version": "0.5.0", 937 | "resolved": "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz", 938 | "integrity": "sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA==" 939 | }, 940 | "babel-plugin-dynamic-import-node": { 941 | "version": "2.3.0", 942 | "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", 943 | "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", 944 | "requires": { 945 | "object.assign": "^4.1.0" 946 | } 947 | }, 948 | "babel-plugin-minify-builtins": { 949 | "version": "0.5.0", 950 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz", 951 | "integrity": "sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag==" 952 | }, 953 | "babel-plugin-minify-constant-folding": { 954 | "version": "0.5.0", 955 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz", 956 | "integrity": "sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ==", 957 | "requires": { 958 | "babel-helper-evaluate-path": "^0.5.0" 959 | } 960 | }, 961 | "babel-plugin-minify-dead-code-elimination": { 962 | "version": "0.5.1", 963 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz", 964 | "integrity": "sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg==", 965 | "requires": { 966 | "babel-helper-evaluate-path": "^0.5.0", 967 | "babel-helper-mark-eval-scopes": "^0.4.3", 968 | "babel-helper-remove-or-void": "^0.4.3", 969 | "lodash": "^4.17.11" 970 | } 971 | }, 972 | "babel-plugin-minify-flip-comparisons": { 973 | "version": "0.4.3", 974 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz", 975 | "integrity": "sha1-AMqHDLjxO0XAOLPB68DyJyk8llo=", 976 | "requires": { 977 | "babel-helper-is-void-0": "^0.4.3" 978 | } 979 | }, 980 | "babel-plugin-minify-guarded-expressions": { 981 | "version": "0.4.4", 982 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz", 983 | "integrity": "sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA==", 984 | "requires": { 985 | "babel-helper-evaluate-path": "^0.5.0", 986 | "babel-helper-flip-expressions": "^0.4.3" 987 | } 988 | }, 989 | "babel-plugin-minify-infinity": { 990 | "version": "0.4.3", 991 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz", 992 | "integrity": "sha1-37h2obCKBldjhO8/kuZTumB7Oco=" 993 | }, 994 | "babel-plugin-minify-mangle-names": { 995 | "version": "0.5.0", 996 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz", 997 | "integrity": "sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw==", 998 | "requires": { 999 | "babel-helper-mark-eval-scopes": "^0.4.3" 1000 | } 1001 | }, 1002 | "babel-plugin-minify-numeric-literals": { 1003 | "version": "0.4.3", 1004 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz", 1005 | "integrity": "sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw=" 1006 | }, 1007 | "babel-plugin-minify-replace": { 1008 | "version": "0.5.0", 1009 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz", 1010 | "integrity": "sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q==" 1011 | }, 1012 | "babel-plugin-minify-simplify": { 1013 | "version": "0.5.1", 1014 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz", 1015 | "integrity": "sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A==", 1016 | "requires": { 1017 | "babel-helper-evaluate-path": "^0.5.0", 1018 | "babel-helper-flip-expressions": "^0.4.3", 1019 | "babel-helper-is-nodes-equiv": "^0.0.1", 1020 | "babel-helper-to-multiple-sequence-expressions": "^0.5.0" 1021 | } 1022 | }, 1023 | "babel-plugin-minify-type-constructors": { 1024 | "version": "0.4.3", 1025 | "resolved": "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz", 1026 | "integrity": "sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA=", 1027 | "requires": { 1028 | "babel-helper-is-void-0": "^0.4.3" 1029 | } 1030 | }, 1031 | "babel-plugin-transform-inline-consecutive-adds": { 1032 | "version": "0.4.3", 1033 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz", 1034 | "integrity": "sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE=" 1035 | }, 1036 | "babel-plugin-transform-member-expression-literals": { 1037 | "version": "6.9.4", 1038 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz", 1039 | "integrity": "sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8=" 1040 | }, 1041 | "babel-plugin-transform-merge-sibling-variables": { 1042 | "version": "6.9.4", 1043 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz", 1044 | "integrity": "sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4=" 1045 | }, 1046 | "babel-plugin-transform-minify-booleans": { 1047 | "version": "6.9.4", 1048 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz", 1049 | "integrity": "sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg=" 1050 | }, 1051 | "babel-plugin-transform-property-literals": { 1052 | "version": "6.9.4", 1053 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz", 1054 | "integrity": "sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk=", 1055 | "requires": { 1056 | "esutils": "^2.0.2" 1057 | } 1058 | }, 1059 | "babel-plugin-transform-regexp-constructors": { 1060 | "version": "0.4.3", 1061 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz", 1062 | "integrity": "sha1-WLd3W2OvzzMyj66aX4j71PsLSWU=" 1063 | }, 1064 | "babel-plugin-transform-remove-console": { 1065 | "version": "6.9.4", 1066 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz", 1067 | "integrity": "sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A=" 1068 | }, 1069 | "babel-plugin-transform-remove-debugger": { 1070 | "version": "6.9.4", 1071 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz", 1072 | "integrity": "sha1-QrcnYxyXl44estGZp67IShgznvI=" 1073 | }, 1074 | "babel-plugin-transform-remove-undefined": { 1075 | "version": "0.5.0", 1076 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz", 1077 | "integrity": "sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ==", 1078 | "requires": { 1079 | "babel-helper-evaluate-path": "^0.5.0" 1080 | } 1081 | }, 1082 | "babel-plugin-transform-simplify-comparison-operators": { 1083 | "version": "6.9.4", 1084 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz", 1085 | "integrity": "sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk=" 1086 | }, 1087 | "babel-plugin-transform-undefined-to-void": { 1088 | "version": "6.9.4", 1089 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz", 1090 | "integrity": "sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA=" 1091 | }, 1092 | "babel-preset-minify": { 1093 | "version": "0.5.1", 1094 | "resolved": "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz", 1095 | "integrity": "sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg==", 1096 | "requires": { 1097 | "babel-plugin-minify-builtins": "^0.5.0", 1098 | "babel-plugin-minify-constant-folding": "^0.5.0", 1099 | "babel-plugin-minify-dead-code-elimination": "^0.5.1", 1100 | "babel-plugin-minify-flip-comparisons": "^0.4.3", 1101 | "babel-plugin-minify-guarded-expressions": "^0.4.4", 1102 | "babel-plugin-minify-infinity": "^0.4.3", 1103 | "babel-plugin-minify-mangle-names": "^0.5.0", 1104 | "babel-plugin-minify-numeric-literals": "^0.4.3", 1105 | "babel-plugin-minify-replace": "^0.5.0", 1106 | "babel-plugin-minify-simplify": "^0.5.1", 1107 | "babel-plugin-minify-type-constructors": "^0.4.3", 1108 | "babel-plugin-transform-inline-consecutive-adds": "^0.4.3", 1109 | "babel-plugin-transform-member-expression-literals": "^6.9.4", 1110 | "babel-plugin-transform-merge-sibling-variables": "^6.9.4", 1111 | "babel-plugin-transform-minify-booleans": "^6.9.4", 1112 | "babel-plugin-transform-property-literals": "^6.9.4", 1113 | "babel-plugin-transform-regexp-constructors": "^0.4.3", 1114 | "babel-plugin-transform-remove-console": "^6.9.4", 1115 | "babel-plugin-transform-remove-debugger": "^6.9.4", 1116 | "babel-plugin-transform-remove-undefined": "^0.5.0", 1117 | "babel-plugin-transform-simplify-comparison-operators": "^6.9.4", 1118 | "babel-plugin-transform-undefined-to-void": "^6.9.4", 1119 | "lodash": "^4.17.11" 1120 | } 1121 | }, 1122 | "babelify": { 1123 | "version": "10.0.0", 1124 | "resolved": "https://registry.npmjs.org/babelify/-/babelify-10.0.0.tgz", 1125 | "integrity": "sha512-X40FaxyH7t3X+JFAKvb1H9wooWKLRCi8pg3m8poqtdZaIng+bjzp9RvKQCvRjF9isHiPkXspbbXT/zwXLtwgwg==" 1126 | }, 1127 | "balanced-match": { 1128 | "version": "1.0.0", 1129 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 1130 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 1131 | }, 1132 | "base64-js": { 1133 | "version": "1.3.1", 1134 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", 1135 | "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" 1136 | }, 1137 | "bluebird": { 1138 | "version": "3.7.1", 1139 | "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz", 1140 | "integrity": "sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==" 1141 | }, 1142 | "bn.js": { 1143 | "version": "4.11.8", 1144 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", 1145 | "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" 1146 | }, 1147 | "brace-expansion": { 1148 | "version": "1.1.11", 1149 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 1150 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 1151 | "requires": { 1152 | "balanced-match": "^1.0.0", 1153 | "concat-map": "0.0.1" 1154 | } 1155 | }, 1156 | "brorand": { 1157 | "version": "1.1.0", 1158 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", 1159 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" 1160 | }, 1161 | "browser-pack": { 1162 | "version": "6.1.0", 1163 | "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz", 1164 | "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==", 1165 | "requires": { 1166 | "JSONStream": "^1.0.3", 1167 | "combine-source-map": "~0.8.0", 1168 | "defined": "^1.0.0", 1169 | "safe-buffer": "^5.1.1", 1170 | "through2": "^2.0.0", 1171 | "umd": "^3.0.0" 1172 | } 1173 | }, 1174 | "browser-resolve": { 1175 | "version": "1.11.3", 1176 | "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", 1177 | "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", 1178 | "requires": { 1179 | "resolve": "1.1.7" 1180 | }, 1181 | "dependencies": { 1182 | "resolve": { 1183 | "version": "1.1.7", 1184 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", 1185 | "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" 1186 | } 1187 | } 1188 | }, 1189 | "browserify": { 1190 | "version": "16.5.0", 1191 | "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.0.tgz", 1192 | "integrity": "sha512-6bfI3cl76YLAnCZ75AGu/XPOsqUhRyc0F/olGIJeCxtfxF2HvPKEcmjU9M8oAPxl4uBY1U7Nry33Q6koV3f2iw==", 1193 | "requires": { 1194 | "JSONStream": "^1.0.3", 1195 | "assert": "^1.4.0", 1196 | "browser-pack": "^6.0.1", 1197 | "browser-resolve": "^1.11.0", 1198 | "browserify-zlib": "~0.2.0", 1199 | "buffer": "^5.0.2", 1200 | "cached-path-relative": "^1.0.0", 1201 | "concat-stream": "^1.6.0", 1202 | "console-browserify": "^1.1.0", 1203 | "constants-browserify": "~1.0.0", 1204 | "crypto-browserify": "^3.0.0", 1205 | "defined": "^1.0.0", 1206 | "deps-sort": "^2.0.0", 1207 | "domain-browser": "^1.2.0", 1208 | "duplexer2": "~0.1.2", 1209 | "events": "^2.0.0", 1210 | "glob": "^7.1.0", 1211 | "has": "^1.0.0", 1212 | "htmlescape": "^1.1.0", 1213 | "https-browserify": "^1.0.0", 1214 | "inherits": "~2.0.1", 1215 | "insert-module-globals": "^7.0.0", 1216 | "labeled-stream-splicer": "^2.0.0", 1217 | "mkdirp": "^0.5.0", 1218 | "module-deps": "^6.0.0", 1219 | "os-browserify": "~0.3.0", 1220 | "parents": "^1.0.1", 1221 | "path-browserify": "~0.0.0", 1222 | "process": "~0.11.0", 1223 | "punycode": "^1.3.2", 1224 | "querystring-es3": "~0.2.0", 1225 | "read-only-stream": "^2.0.0", 1226 | "readable-stream": "^2.0.2", 1227 | "resolve": "^1.1.4", 1228 | "shasum": "^1.0.0", 1229 | "shell-quote": "^1.6.1", 1230 | "stream-browserify": "^2.0.0", 1231 | "stream-http": "^3.0.0", 1232 | "string_decoder": "^1.1.1", 1233 | "subarg": "^1.0.0", 1234 | "syntax-error": "^1.1.1", 1235 | "through2": "^2.0.0", 1236 | "timers-browserify": "^1.0.1", 1237 | "tty-browserify": "0.0.1", 1238 | "url": "~0.11.0", 1239 | "util": "~0.10.1", 1240 | "vm-browserify": "^1.0.0", 1241 | "xtend": "^4.0.0" 1242 | } 1243 | }, 1244 | "browserify-aes": { 1245 | "version": "1.2.0", 1246 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", 1247 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", 1248 | "requires": { 1249 | "buffer-xor": "^1.0.3", 1250 | "cipher-base": "^1.0.0", 1251 | "create-hash": "^1.1.0", 1252 | "evp_bytestokey": "^1.0.3", 1253 | "inherits": "^2.0.1", 1254 | "safe-buffer": "^5.0.1" 1255 | } 1256 | }, 1257 | "browserify-cipher": { 1258 | "version": "1.0.1", 1259 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", 1260 | "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", 1261 | "requires": { 1262 | "browserify-aes": "^1.0.4", 1263 | "browserify-des": "^1.0.0", 1264 | "evp_bytestokey": "^1.0.0" 1265 | } 1266 | }, 1267 | "browserify-des": { 1268 | "version": "1.0.2", 1269 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", 1270 | "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", 1271 | "requires": { 1272 | "cipher-base": "^1.0.1", 1273 | "des.js": "^1.0.0", 1274 | "inherits": "^2.0.1", 1275 | "safe-buffer": "^5.1.2" 1276 | } 1277 | }, 1278 | "browserify-rsa": { 1279 | "version": "4.0.1", 1280 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", 1281 | "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", 1282 | "requires": { 1283 | "bn.js": "^4.1.0", 1284 | "randombytes": "^2.0.1" 1285 | } 1286 | }, 1287 | "browserify-sign": { 1288 | "version": "4.0.4", 1289 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", 1290 | "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", 1291 | "requires": { 1292 | "bn.js": "^4.1.1", 1293 | "browserify-rsa": "^4.0.0", 1294 | "create-hash": "^1.1.0", 1295 | "create-hmac": "^1.1.2", 1296 | "elliptic": "^6.0.0", 1297 | "inherits": "^2.0.1", 1298 | "parse-asn1": "^5.0.0" 1299 | } 1300 | }, 1301 | "browserify-zlib": { 1302 | "version": "0.2.0", 1303 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", 1304 | "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", 1305 | "requires": { 1306 | "pako": "~1.0.5" 1307 | } 1308 | }, 1309 | "browserslist": { 1310 | "version": "4.7.2", 1311 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.2.tgz", 1312 | "integrity": "sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw==", 1313 | "requires": { 1314 | "caniuse-lite": "^1.0.30001004", 1315 | "electron-to-chromium": "^1.3.295", 1316 | "node-releases": "^1.1.38" 1317 | } 1318 | }, 1319 | "buffer": { 1320 | "version": "5.4.3", 1321 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.4.3.tgz", 1322 | "integrity": "sha512-zvj65TkFeIt3i6aj5bIvJDzjjQQGs4o/sNoezg1F1kYap9Nu2jcUdpwzRSJTHMMzG0H7bZkn4rNQpImhuxWX2A==", 1323 | "requires": { 1324 | "base64-js": "^1.0.2", 1325 | "ieee754": "^1.1.4" 1326 | } 1327 | }, 1328 | "buffer-from": { 1329 | "version": "1.1.1", 1330 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 1331 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 1332 | }, 1333 | "buffer-xor": { 1334 | "version": "1.0.3", 1335 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", 1336 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" 1337 | }, 1338 | "builtin-status-codes": { 1339 | "version": "3.0.0", 1340 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", 1341 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" 1342 | }, 1343 | "cached-path-relative": { 1344 | "version": "1.0.2", 1345 | "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.2.tgz", 1346 | "integrity": "sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg==" 1347 | }, 1348 | "caller-path": { 1349 | "version": "0.1.0", 1350 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", 1351 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", 1352 | "dev": true, 1353 | "requires": { 1354 | "callsites": "^0.2.0" 1355 | } 1356 | }, 1357 | "callsites": { 1358 | "version": "0.2.0", 1359 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", 1360 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", 1361 | "dev": true 1362 | }, 1363 | "caniuse-lite": { 1364 | "version": "1.0.30001010", 1365 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001010.tgz", 1366 | "integrity": "sha512-RA5GH9YjFNea4ZQszdWgh2SC+dpLiRAg4VDQS2b5JRI45OxmbGrYocYHTa9x0bKMQUE7uvHkNPNffUr+pCxSGw==" 1367 | }, 1368 | "chalk": { 1369 | "version": "2.4.2", 1370 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1371 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1372 | "requires": { 1373 | "ansi-styles": "^3.2.1", 1374 | "escape-string-regexp": "^1.0.5", 1375 | "supports-color": "^5.3.0" 1376 | } 1377 | }, 1378 | "chardet": { 1379 | "version": "0.4.2", 1380 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", 1381 | "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", 1382 | "dev": true 1383 | }, 1384 | "cipher-base": { 1385 | "version": "1.0.4", 1386 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", 1387 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", 1388 | "requires": { 1389 | "inherits": "^2.0.1", 1390 | "safe-buffer": "^5.0.1" 1391 | } 1392 | }, 1393 | "circular-json": { 1394 | "version": "0.3.3", 1395 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", 1396 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", 1397 | "dev": true 1398 | }, 1399 | "cli-cursor": { 1400 | "version": "2.1.0", 1401 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", 1402 | "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", 1403 | "dev": true, 1404 | "requires": { 1405 | "restore-cursor": "^2.0.0" 1406 | } 1407 | }, 1408 | "cli-width": { 1409 | "version": "2.2.0", 1410 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", 1411 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", 1412 | "dev": true 1413 | }, 1414 | "color-convert": { 1415 | "version": "1.9.3", 1416 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 1417 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 1418 | "requires": { 1419 | "color-name": "1.1.3" 1420 | } 1421 | }, 1422 | "color-name": { 1423 | "version": "1.1.3", 1424 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1425 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" 1426 | }, 1427 | "combine-source-map": { 1428 | "version": "0.8.0", 1429 | "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", 1430 | "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", 1431 | "requires": { 1432 | "convert-source-map": "~1.1.0", 1433 | "inline-source-map": "~0.6.0", 1434 | "lodash.memoize": "~3.0.3", 1435 | "source-map": "~0.5.3" 1436 | }, 1437 | "dependencies": { 1438 | "convert-source-map": { 1439 | "version": "1.1.3", 1440 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", 1441 | "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=" 1442 | } 1443 | } 1444 | }, 1445 | "concat-map": { 1446 | "version": "0.0.1", 1447 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1448 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 1449 | }, 1450 | "concat-stream": { 1451 | "version": "1.6.2", 1452 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", 1453 | "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", 1454 | "requires": { 1455 | "buffer-from": "^1.0.0", 1456 | "inherits": "^2.0.3", 1457 | "readable-stream": "^2.2.2", 1458 | "typedarray": "^0.0.6" 1459 | } 1460 | }, 1461 | "console-browserify": { 1462 | "version": "1.2.0", 1463 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", 1464 | "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" 1465 | }, 1466 | "constants-browserify": { 1467 | "version": "1.0.0", 1468 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", 1469 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" 1470 | }, 1471 | "contains-path": { 1472 | "version": "0.1.0", 1473 | "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", 1474 | "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", 1475 | "dev": true 1476 | }, 1477 | "convert-source-map": { 1478 | "version": "1.7.0", 1479 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", 1480 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", 1481 | "requires": { 1482 | "safe-buffer": "~5.1.1" 1483 | } 1484 | }, 1485 | "core-js-compat": { 1486 | "version": "3.4.1", 1487 | "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.4.1.tgz", 1488 | "integrity": "sha512-YdeJI26gLc0CQJ9asLE5obEgBz2I0+CIgnoTbS2T0d5IPQw/OCgCIFR527RmpduxjrB3gSEHoGOCTq9sigOyfw==", 1489 | "requires": { 1490 | "browserslist": "^4.7.2", 1491 | "semver": "^6.3.0" 1492 | }, 1493 | "dependencies": { 1494 | "semver": { 1495 | "version": "6.3.0", 1496 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1497 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 1498 | } 1499 | } 1500 | }, 1501 | "core-util-is": { 1502 | "version": "1.0.2", 1503 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1504 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 1505 | }, 1506 | "create-ecdh": { 1507 | "version": "4.0.3", 1508 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", 1509 | "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", 1510 | "requires": { 1511 | "bn.js": "^4.1.0", 1512 | "elliptic": "^6.0.0" 1513 | } 1514 | }, 1515 | "create-hash": { 1516 | "version": "1.2.0", 1517 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", 1518 | "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", 1519 | "requires": { 1520 | "cipher-base": "^1.0.1", 1521 | "inherits": "^2.0.1", 1522 | "md5.js": "^1.3.4", 1523 | "ripemd160": "^2.0.1", 1524 | "sha.js": "^2.4.0" 1525 | } 1526 | }, 1527 | "create-hmac": { 1528 | "version": "1.1.7", 1529 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", 1530 | "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", 1531 | "requires": { 1532 | "cipher-base": "^1.0.3", 1533 | "create-hash": "^1.1.0", 1534 | "inherits": "^2.0.1", 1535 | "ripemd160": "^2.0.0", 1536 | "safe-buffer": "^5.0.1", 1537 | "sha.js": "^2.4.8" 1538 | } 1539 | }, 1540 | "cross-spawn": { 1541 | "version": "6.0.5", 1542 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", 1543 | "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", 1544 | "dev": true, 1545 | "requires": { 1546 | "nice-try": "^1.0.4", 1547 | "path-key": "^2.0.1", 1548 | "semver": "^5.5.0", 1549 | "shebang-command": "^1.2.0", 1550 | "which": "^1.2.9" 1551 | } 1552 | }, 1553 | "crypto-browserify": { 1554 | "version": "3.12.0", 1555 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", 1556 | "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", 1557 | "requires": { 1558 | "browserify-cipher": "^1.0.0", 1559 | "browserify-sign": "^4.0.0", 1560 | "create-ecdh": "^4.0.0", 1561 | "create-hash": "^1.1.0", 1562 | "create-hmac": "^1.1.0", 1563 | "diffie-hellman": "^5.0.0", 1564 | "inherits": "^2.0.1", 1565 | "pbkdf2": "^3.0.3", 1566 | "public-encrypt": "^4.0.0", 1567 | "randombytes": "^2.0.0", 1568 | "randomfill": "^1.0.3" 1569 | } 1570 | }, 1571 | "dash-ast": { 1572 | "version": "1.0.0", 1573 | "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz", 1574 | "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==" 1575 | }, 1576 | "debug": { 1577 | "version": "4.1.1", 1578 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 1579 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 1580 | "requires": { 1581 | "ms": "^2.1.1" 1582 | } 1583 | }, 1584 | "debug-log": { 1585 | "version": "1.0.1", 1586 | "resolved": "https://registry.npmjs.org/debug-log/-/debug-log-1.0.1.tgz", 1587 | "integrity": "sha1-IwdjLUwEOCuN+KMvcLiVBG1SdF8=", 1588 | "dev": true 1589 | }, 1590 | "deep-is": { 1591 | "version": "0.1.3", 1592 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1593 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 1594 | "dev": true 1595 | }, 1596 | "define-properties": { 1597 | "version": "1.1.3", 1598 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 1599 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 1600 | "requires": { 1601 | "object-keys": "^1.0.12" 1602 | } 1603 | }, 1604 | "defined": { 1605 | "version": "1.0.0", 1606 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", 1607 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" 1608 | }, 1609 | "deglob": { 1610 | "version": "2.1.1", 1611 | "resolved": "https://registry.npmjs.org/deglob/-/deglob-2.1.1.tgz", 1612 | "integrity": "sha512-2kjwuGGonL7gWE1XU4Fv79+vVzpoQCl0V+boMwWtOQJV2AGDabCwez++nB1Nli/8BabAfZQ/UuHPlp6AymKdWw==", 1613 | "dev": true, 1614 | "requires": { 1615 | "find-root": "^1.0.0", 1616 | "glob": "^7.0.5", 1617 | "ignore": "^3.0.9", 1618 | "pkg-config": "^1.1.0", 1619 | "run-parallel": "^1.1.2", 1620 | "uniq": "^1.0.1" 1621 | }, 1622 | "dependencies": { 1623 | "ignore": { 1624 | "version": "3.3.10", 1625 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", 1626 | "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", 1627 | "dev": true 1628 | } 1629 | } 1630 | }, 1631 | "deps-sort": { 1632 | "version": "2.0.1", 1633 | "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz", 1634 | "integrity": "sha512-1orqXQr5po+3KI6kQb9A4jnXT1PBwggGl2d7Sq2xsnOeI9GPcE/tGcF9UiSZtZBM7MukY4cAh7MemS6tZYipfw==", 1635 | "requires": { 1636 | "JSONStream": "^1.0.3", 1637 | "shasum-object": "^1.0.0", 1638 | "subarg": "^1.0.0", 1639 | "through2": "^2.0.0" 1640 | } 1641 | }, 1642 | "des.js": { 1643 | "version": "1.0.1", 1644 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", 1645 | "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", 1646 | "requires": { 1647 | "inherits": "^2.0.1", 1648 | "minimalistic-assert": "^1.0.0" 1649 | } 1650 | }, 1651 | "detective": { 1652 | "version": "5.2.0", 1653 | "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz", 1654 | "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==", 1655 | "requires": { 1656 | "acorn-node": "^1.6.1", 1657 | "defined": "^1.0.0", 1658 | "minimist": "^1.1.1" 1659 | } 1660 | }, 1661 | "diffie-hellman": { 1662 | "version": "5.0.3", 1663 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", 1664 | "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", 1665 | "requires": { 1666 | "bn.js": "^4.1.0", 1667 | "miller-rabin": "^4.0.0", 1668 | "randombytes": "^2.0.0" 1669 | } 1670 | }, 1671 | "doctrine": { 1672 | "version": "2.1.0", 1673 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 1674 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 1675 | "dev": true, 1676 | "requires": { 1677 | "esutils": "^2.0.2" 1678 | } 1679 | }, 1680 | "domain-browser": { 1681 | "version": "1.2.0", 1682 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", 1683 | "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" 1684 | }, 1685 | "duplexer2": { 1686 | "version": "0.1.4", 1687 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", 1688 | "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", 1689 | "requires": { 1690 | "readable-stream": "^2.0.2" 1691 | } 1692 | }, 1693 | "electron-to-chromium": { 1694 | "version": "1.3.306", 1695 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.306.tgz", 1696 | "integrity": "sha512-frDqXvrIROoYvikSKTIKbHbzO6M3/qC6kCIt/1FOa9kALe++c4VAJnwjSFvf1tYLEUsP2n9XZ4XSCyqc3l7A/A==" 1697 | }, 1698 | "elliptic": { 1699 | "version": "6.5.4", 1700 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", 1701 | "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", 1702 | "requires": { 1703 | "bn.js": "^4.11.9", 1704 | "brorand": "^1.1.0", 1705 | "hash.js": "^1.0.0", 1706 | "hmac-drbg": "^1.0.1", 1707 | "inherits": "^2.0.4", 1708 | "minimalistic-assert": "^1.0.1", 1709 | "minimalistic-crypto-utils": "^1.0.1" 1710 | }, 1711 | "dependencies": { 1712 | "bn.js": { 1713 | "version": "4.12.0", 1714 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", 1715 | "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 1716 | } 1717 | } 1718 | }, 1719 | "error-ex": { 1720 | "version": "1.3.2", 1721 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1722 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1723 | "dev": true, 1724 | "requires": { 1725 | "is-arrayish": "^0.2.1" 1726 | } 1727 | }, 1728 | "es-abstract": { 1729 | "version": "1.16.0", 1730 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz", 1731 | "integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==", 1732 | "dev": true, 1733 | "requires": { 1734 | "es-to-primitive": "^1.2.0", 1735 | "function-bind": "^1.1.1", 1736 | "has": "^1.0.3", 1737 | "has-symbols": "^1.0.0", 1738 | "is-callable": "^1.1.4", 1739 | "is-regex": "^1.0.4", 1740 | "object-inspect": "^1.6.0", 1741 | "object-keys": "^1.1.1", 1742 | "string.prototype.trimleft": "^2.1.0", 1743 | "string.prototype.trimright": "^2.1.0" 1744 | } 1745 | }, 1746 | "es-to-primitive": { 1747 | "version": "1.2.1", 1748 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", 1749 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", 1750 | "dev": true, 1751 | "requires": { 1752 | "is-callable": "^1.1.4", 1753 | "is-date-object": "^1.0.1", 1754 | "is-symbol": "^1.0.2" 1755 | } 1756 | }, 1757 | "escape-string-regexp": { 1758 | "version": "1.0.5", 1759 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1760 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 1761 | }, 1762 | "eslint": { 1763 | "version": "5.4.0", 1764 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.4.0.tgz", 1765 | "integrity": "sha512-UIpL91XGex3qtL6qwyCQJar2j3osKxK9e3ano3OcGEIRM4oWIpCkDg9x95AXEC2wMs7PnxzOkPZ2gq+tsMS9yg==", 1766 | "dev": true, 1767 | "requires": { 1768 | "ajv": "^6.5.0", 1769 | "babel-code-frame": "^6.26.0", 1770 | "chalk": "^2.1.0", 1771 | "cross-spawn": "^6.0.5", 1772 | "debug": "^3.1.0", 1773 | "doctrine": "^2.1.0", 1774 | "eslint-scope": "^4.0.0", 1775 | "eslint-utils": "^1.3.1", 1776 | "eslint-visitor-keys": "^1.0.0", 1777 | "espree": "^4.0.0", 1778 | "esquery": "^1.0.1", 1779 | "esutils": "^2.0.2", 1780 | "file-entry-cache": "^2.0.0", 1781 | "functional-red-black-tree": "^1.0.1", 1782 | "glob": "^7.1.2", 1783 | "globals": "^11.7.0", 1784 | "ignore": "^4.0.2", 1785 | "imurmurhash": "^0.1.4", 1786 | "inquirer": "^5.2.0", 1787 | "is-resolvable": "^1.1.0", 1788 | "js-yaml": "^3.11.0", 1789 | "json-stable-stringify-without-jsonify": "^1.0.1", 1790 | "levn": "^0.3.0", 1791 | "lodash": "^4.17.5", 1792 | "minimatch": "^3.0.4", 1793 | "mkdirp": "^0.5.1", 1794 | "natural-compare": "^1.4.0", 1795 | "optionator": "^0.8.2", 1796 | "path-is-inside": "^1.0.2", 1797 | "pluralize": "^7.0.0", 1798 | "progress": "^2.0.0", 1799 | "regexpp": "^2.0.0", 1800 | "require-uncached": "^1.0.3", 1801 | "semver": "^5.5.0", 1802 | "strip-ansi": "^4.0.0", 1803 | "strip-json-comments": "^2.0.1", 1804 | "table": "^4.0.3", 1805 | "text-table": "^0.2.0" 1806 | }, 1807 | "dependencies": { 1808 | "debug": { 1809 | "version": "3.2.6", 1810 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", 1811 | "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", 1812 | "dev": true, 1813 | "requires": { 1814 | "ms": "^2.1.1" 1815 | } 1816 | } 1817 | } 1818 | }, 1819 | "eslint-config-standard": { 1820 | "version": "12.0.0", 1821 | "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz", 1822 | "integrity": "sha512-COUz8FnXhqFitYj4DTqHzidjIL/t4mumGZto5c7DrBpvWoie+Sn3P4sLEzUGeYhRElWuFEf8K1S1EfvD1vixCQ==", 1823 | "dev": true 1824 | }, 1825 | "eslint-config-standard-jsx": { 1826 | "version": "6.0.2", 1827 | "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-6.0.2.tgz", 1828 | "integrity": "sha512-D+YWAoXw+2GIdbMBRAzWwr1ZtvnSf4n4yL0gKGg7ShUOGXkSOLerI17K4F6LdQMJPNMoWYqepzQD/fKY+tXNSg==", 1829 | "dev": true 1830 | }, 1831 | "eslint-import-resolver-node": { 1832 | "version": "0.3.2", 1833 | "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", 1834 | "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", 1835 | "dev": true, 1836 | "requires": { 1837 | "debug": "^2.6.9", 1838 | "resolve": "^1.5.0" 1839 | }, 1840 | "dependencies": { 1841 | "debug": { 1842 | "version": "2.6.9", 1843 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1844 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1845 | "dev": true, 1846 | "requires": { 1847 | "ms": "2.0.0" 1848 | } 1849 | }, 1850 | "ms": { 1851 | "version": "2.0.0", 1852 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1853 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 1854 | "dev": true 1855 | } 1856 | } 1857 | }, 1858 | "eslint-module-utils": { 1859 | "version": "2.4.1", 1860 | "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz", 1861 | "integrity": "sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw==", 1862 | "dev": true, 1863 | "requires": { 1864 | "debug": "^2.6.8", 1865 | "pkg-dir": "^2.0.0" 1866 | }, 1867 | "dependencies": { 1868 | "debug": { 1869 | "version": "2.6.9", 1870 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1871 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1872 | "dev": true, 1873 | "requires": { 1874 | "ms": "2.0.0" 1875 | } 1876 | }, 1877 | "ms": { 1878 | "version": "2.0.0", 1879 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1880 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 1881 | "dev": true 1882 | } 1883 | } 1884 | }, 1885 | "eslint-plugin-es": { 1886 | "version": "1.4.1", 1887 | "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-1.4.1.tgz", 1888 | "integrity": "sha512-5fa/gR2yR3NxQf+UXkeLeP8FBBl6tSgdrAz1+cF84v1FMM4twGwQoqTnn+QxFLcPOrF4pdKEJKDB/q9GoyJrCA==", 1889 | "dev": true, 1890 | "requires": { 1891 | "eslint-utils": "^1.4.2", 1892 | "regexpp": "^2.0.1" 1893 | } 1894 | }, 1895 | "eslint-plugin-import": { 1896 | "version": "2.14.0", 1897 | "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz", 1898 | "integrity": "sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g==", 1899 | "dev": true, 1900 | "requires": { 1901 | "contains-path": "^0.1.0", 1902 | "debug": "^2.6.8", 1903 | "doctrine": "1.5.0", 1904 | "eslint-import-resolver-node": "^0.3.1", 1905 | "eslint-module-utils": "^2.2.0", 1906 | "has": "^1.0.1", 1907 | "lodash": "^4.17.4", 1908 | "minimatch": "^3.0.3", 1909 | "read-pkg-up": "^2.0.0", 1910 | "resolve": "^1.6.0" 1911 | }, 1912 | "dependencies": { 1913 | "debug": { 1914 | "version": "2.6.9", 1915 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1916 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1917 | "dev": true, 1918 | "requires": { 1919 | "ms": "2.0.0" 1920 | } 1921 | }, 1922 | "doctrine": { 1923 | "version": "1.5.0", 1924 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", 1925 | "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", 1926 | "dev": true, 1927 | "requires": { 1928 | "esutils": "^2.0.2", 1929 | "isarray": "^1.0.0" 1930 | } 1931 | }, 1932 | "ms": { 1933 | "version": "2.0.0", 1934 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1935 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 1936 | "dev": true 1937 | } 1938 | } 1939 | }, 1940 | "eslint-plugin-node": { 1941 | "version": "7.0.1", 1942 | "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-7.0.1.tgz", 1943 | "integrity": "sha512-lfVw3TEqThwq0j2Ba/Ckn2ABdwmL5dkOgAux1rvOk6CO7A6yGyPI2+zIxN6FyNkp1X1X/BSvKOceD6mBWSj4Yw==", 1944 | "dev": true, 1945 | "requires": { 1946 | "eslint-plugin-es": "^1.3.1", 1947 | "eslint-utils": "^1.3.1", 1948 | "ignore": "^4.0.2", 1949 | "minimatch": "^3.0.4", 1950 | "resolve": "^1.8.1", 1951 | "semver": "^5.5.0" 1952 | } 1953 | }, 1954 | "eslint-plugin-promise": { 1955 | "version": "4.0.1", 1956 | "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz", 1957 | "integrity": "sha512-Si16O0+Hqz1gDHsys6RtFRrW7cCTB6P7p3OJmKp3Y3dxpQE2qwOA7d3xnV+0mBmrPoi0RBnxlCKvqu70te6wjg==", 1958 | "dev": true 1959 | }, 1960 | "eslint-plugin-react": { 1961 | "version": "7.11.1", 1962 | "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz", 1963 | "integrity": "sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw==", 1964 | "dev": true, 1965 | "requires": { 1966 | "array-includes": "^3.0.3", 1967 | "doctrine": "^2.1.0", 1968 | "has": "^1.0.3", 1969 | "jsx-ast-utils": "^2.0.1", 1970 | "prop-types": "^15.6.2" 1971 | } 1972 | }, 1973 | "eslint-plugin-standard": { 1974 | "version": "4.0.1", 1975 | "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz", 1976 | "integrity": "sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==", 1977 | "dev": true 1978 | }, 1979 | "eslint-scope": { 1980 | "version": "4.0.3", 1981 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", 1982 | "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", 1983 | "dev": true, 1984 | "requires": { 1985 | "esrecurse": "^4.1.0", 1986 | "estraverse": "^4.1.1" 1987 | } 1988 | }, 1989 | "eslint-utils": { 1990 | "version": "1.4.3", 1991 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", 1992 | "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", 1993 | "dev": true, 1994 | "requires": { 1995 | "eslint-visitor-keys": "^1.1.0" 1996 | } 1997 | }, 1998 | "eslint-visitor-keys": { 1999 | "version": "1.1.0", 2000 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", 2001 | "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", 2002 | "dev": true 2003 | }, 2004 | "espree": { 2005 | "version": "4.1.0", 2006 | "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", 2007 | "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", 2008 | "dev": true, 2009 | "requires": { 2010 | "acorn": "^6.0.2", 2011 | "acorn-jsx": "^5.0.0", 2012 | "eslint-visitor-keys": "^1.0.0" 2013 | }, 2014 | "dependencies": { 2015 | "acorn": { 2016 | "version": "6.4.1", 2017 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", 2018 | "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", 2019 | "dev": true 2020 | } 2021 | } 2022 | }, 2023 | "esprima": { 2024 | "version": "4.0.1", 2025 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 2026 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 2027 | "dev": true 2028 | }, 2029 | "esquery": { 2030 | "version": "1.0.1", 2031 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", 2032 | "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", 2033 | "dev": true, 2034 | "requires": { 2035 | "estraverse": "^4.0.0" 2036 | } 2037 | }, 2038 | "esrecurse": { 2039 | "version": "4.2.1", 2040 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", 2041 | "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", 2042 | "dev": true, 2043 | "requires": { 2044 | "estraverse": "^4.1.0" 2045 | } 2046 | }, 2047 | "estraverse": { 2048 | "version": "4.3.0", 2049 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 2050 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 2051 | "dev": true 2052 | }, 2053 | "esutils": { 2054 | "version": "2.0.3", 2055 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 2056 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" 2057 | }, 2058 | "events": { 2059 | "version": "2.1.0", 2060 | "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz", 2061 | "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==" 2062 | }, 2063 | "evp_bytestokey": { 2064 | "version": "1.0.3", 2065 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", 2066 | "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", 2067 | "requires": { 2068 | "md5.js": "^1.3.4", 2069 | "safe-buffer": "^5.1.1" 2070 | } 2071 | }, 2072 | "external-editor": { 2073 | "version": "2.2.0", 2074 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", 2075 | "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", 2076 | "dev": true, 2077 | "requires": { 2078 | "chardet": "^0.4.0", 2079 | "iconv-lite": "^0.4.17", 2080 | "tmp": "^0.0.33" 2081 | } 2082 | }, 2083 | "fast-deep-equal": { 2084 | "version": "2.0.1", 2085 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", 2086 | "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", 2087 | "dev": true 2088 | }, 2089 | "fast-json-stable-stringify": { 2090 | "version": "2.0.0", 2091 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", 2092 | "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", 2093 | "dev": true 2094 | }, 2095 | "fast-levenshtein": { 2096 | "version": "2.0.6", 2097 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 2098 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 2099 | "dev": true 2100 | }, 2101 | "fast-safe-stringify": { 2102 | "version": "2.0.7", 2103 | "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", 2104 | "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" 2105 | }, 2106 | "figures": { 2107 | "version": "2.0.0", 2108 | "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", 2109 | "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", 2110 | "dev": true, 2111 | "requires": { 2112 | "escape-string-regexp": "^1.0.5" 2113 | } 2114 | }, 2115 | "file-entry-cache": { 2116 | "version": "2.0.0", 2117 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", 2118 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", 2119 | "dev": true, 2120 | "requires": { 2121 | "flat-cache": "^1.2.1", 2122 | "object-assign": "^4.0.1" 2123 | } 2124 | }, 2125 | "find-root": { 2126 | "version": "1.1.0", 2127 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", 2128 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", 2129 | "dev": true 2130 | }, 2131 | "find-up": { 2132 | "version": "2.1.0", 2133 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 2134 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 2135 | "dev": true, 2136 | "requires": { 2137 | "locate-path": "^2.0.0" 2138 | } 2139 | }, 2140 | "flat-cache": { 2141 | "version": "1.3.4", 2142 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", 2143 | "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", 2144 | "dev": true, 2145 | "requires": { 2146 | "circular-json": "^0.3.1", 2147 | "graceful-fs": "^4.1.2", 2148 | "rimraf": "~2.6.2", 2149 | "write": "^0.2.1" 2150 | } 2151 | }, 2152 | "fs-extra": { 2153 | "version": "7.0.1", 2154 | "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", 2155 | "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", 2156 | "requires": { 2157 | "graceful-fs": "^4.1.2", 2158 | "jsonfile": "^4.0.0", 2159 | "universalify": "^0.1.0" 2160 | } 2161 | }, 2162 | "fs.realpath": { 2163 | "version": "1.0.0", 2164 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 2165 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 2166 | }, 2167 | "function-bind": { 2168 | "version": "1.1.1", 2169 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 2170 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 2171 | }, 2172 | "functional-red-black-tree": { 2173 | "version": "1.0.1", 2174 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 2175 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 2176 | "dev": true 2177 | }, 2178 | "get-assigned-identifiers": { 2179 | "version": "1.2.0", 2180 | "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", 2181 | "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==" 2182 | }, 2183 | "get-stdin": { 2184 | "version": "6.0.0", 2185 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", 2186 | "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", 2187 | "dev": true 2188 | }, 2189 | "glob": { 2190 | "version": "7.1.6", 2191 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 2192 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 2193 | "requires": { 2194 | "fs.realpath": "^1.0.0", 2195 | "inflight": "^1.0.4", 2196 | "inherits": "2", 2197 | "minimatch": "^3.0.4", 2198 | "once": "^1.3.0", 2199 | "path-is-absolute": "^1.0.0" 2200 | } 2201 | }, 2202 | "globals": { 2203 | "version": "11.12.0", 2204 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 2205 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" 2206 | }, 2207 | "graceful-fs": { 2208 | "version": "4.2.3", 2209 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", 2210 | "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" 2211 | }, 2212 | "has": { 2213 | "version": "1.0.3", 2214 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 2215 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 2216 | "requires": { 2217 | "function-bind": "^1.1.1" 2218 | } 2219 | }, 2220 | "has-ansi": { 2221 | "version": "2.0.0", 2222 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 2223 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 2224 | "dev": true, 2225 | "requires": { 2226 | "ansi-regex": "^2.0.0" 2227 | } 2228 | }, 2229 | "has-flag": { 2230 | "version": "3.0.0", 2231 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 2232 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" 2233 | }, 2234 | "has-symbols": { 2235 | "version": "1.0.0", 2236 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", 2237 | "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" 2238 | }, 2239 | "hash-base": { 2240 | "version": "3.0.4", 2241 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", 2242 | "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", 2243 | "requires": { 2244 | "inherits": "^2.0.1", 2245 | "safe-buffer": "^5.0.1" 2246 | } 2247 | }, 2248 | "hash.js": { 2249 | "version": "1.1.7", 2250 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", 2251 | "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", 2252 | "requires": { 2253 | "inherits": "^2.0.3", 2254 | "minimalistic-assert": "^1.0.1" 2255 | } 2256 | }, 2257 | "hmac-drbg": { 2258 | "version": "1.0.1", 2259 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", 2260 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", 2261 | "requires": { 2262 | "hash.js": "^1.0.3", 2263 | "minimalistic-assert": "^1.0.0", 2264 | "minimalistic-crypto-utils": "^1.0.1" 2265 | } 2266 | }, 2267 | "hosted-git-info": { 2268 | "version": "2.8.5", 2269 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", 2270 | "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", 2271 | "dev": true 2272 | }, 2273 | "htmlescape": { 2274 | "version": "1.1.1", 2275 | "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", 2276 | "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=" 2277 | }, 2278 | "https-browserify": { 2279 | "version": "1.0.0", 2280 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", 2281 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" 2282 | }, 2283 | "iconv-lite": { 2284 | "version": "0.4.24", 2285 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 2286 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 2287 | "dev": true, 2288 | "requires": { 2289 | "safer-buffer": ">= 2.1.2 < 3" 2290 | } 2291 | }, 2292 | "ieee754": { 2293 | "version": "1.1.13", 2294 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", 2295 | "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" 2296 | }, 2297 | "ignore": { 2298 | "version": "4.0.6", 2299 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", 2300 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", 2301 | "dev": true 2302 | }, 2303 | "imurmurhash": { 2304 | "version": "0.1.4", 2305 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 2306 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 2307 | "dev": true 2308 | }, 2309 | "inflight": { 2310 | "version": "1.0.6", 2311 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 2312 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 2313 | "requires": { 2314 | "once": "^1.3.0", 2315 | "wrappy": "1" 2316 | } 2317 | }, 2318 | "inherits": { 2319 | "version": "2.0.4", 2320 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 2321 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 2322 | }, 2323 | "inline-source-map": { 2324 | "version": "0.6.2", 2325 | "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", 2326 | "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", 2327 | "requires": { 2328 | "source-map": "~0.5.3" 2329 | } 2330 | }, 2331 | "inquirer": { 2332 | "version": "5.2.0", 2333 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", 2334 | "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", 2335 | "dev": true, 2336 | "requires": { 2337 | "ansi-escapes": "^3.0.0", 2338 | "chalk": "^2.0.0", 2339 | "cli-cursor": "^2.1.0", 2340 | "cli-width": "^2.0.0", 2341 | "external-editor": "^2.1.0", 2342 | "figures": "^2.0.0", 2343 | "lodash": "^4.3.0", 2344 | "mute-stream": "0.0.7", 2345 | "run-async": "^2.2.0", 2346 | "rxjs": "^5.5.2", 2347 | "string-width": "^2.1.0", 2348 | "strip-ansi": "^4.0.0", 2349 | "through": "^2.3.6" 2350 | } 2351 | }, 2352 | "insert-module-globals": { 2353 | "version": "7.2.0", 2354 | "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz", 2355 | "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==", 2356 | "requires": { 2357 | "JSONStream": "^1.0.3", 2358 | "acorn-node": "^1.5.2", 2359 | "combine-source-map": "^0.8.0", 2360 | "concat-stream": "^1.6.1", 2361 | "is-buffer": "^1.1.0", 2362 | "path-is-absolute": "^1.0.1", 2363 | "process": "~0.11.0", 2364 | "through2": "^2.0.0", 2365 | "undeclared-identifiers": "^1.1.2", 2366 | "xtend": "^4.0.0" 2367 | } 2368 | }, 2369 | "invariant": { 2370 | "version": "2.2.4", 2371 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 2372 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 2373 | "requires": { 2374 | "loose-envify": "^1.0.0" 2375 | } 2376 | }, 2377 | "is-arrayish": { 2378 | "version": "0.2.1", 2379 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 2380 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 2381 | "dev": true 2382 | }, 2383 | "is-buffer": { 2384 | "version": "1.1.6", 2385 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 2386 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" 2387 | }, 2388 | "is-callable": { 2389 | "version": "1.1.4", 2390 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", 2391 | "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", 2392 | "dev": true 2393 | }, 2394 | "is-date-object": { 2395 | "version": "1.0.1", 2396 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", 2397 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", 2398 | "dev": true 2399 | }, 2400 | "is-fullwidth-code-point": { 2401 | "version": "2.0.0", 2402 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 2403 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 2404 | "dev": true 2405 | }, 2406 | "is-promise": { 2407 | "version": "2.1.0", 2408 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 2409 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", 2410 | "dev": true 2411 | }, 2412 | "is-regex": { 2413 | "version": "1.0.4", 2414 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 2415 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 2416 | "dev": true, 2417 | "requires": { 2418 | "has": "^1.0.1" 2419 | } 2420 | }, 2421 | "is-resolvable": { 2422 | "version": "1.1.0", 2423 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", 2424 | "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", 2425 | "dev": true 2426 | }, 2427 | "is-symbol": { 2428 | "version": "1.0.2", 2429 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", 2430 | "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", 2431 | "dev": true, 2432 | "requires": { 2433 | "has-symbols": "^1.0.0" 2434 | } 2435 | }, 2436 | "isarray": { 2437 | "version": "1.0.0", 2438 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2439 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 2440 | }, 2441 | "isexe": { 2442 | "version": "2.0.0", 2443 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2444 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 2445 | "dev": true 2446 | }, 2447 | "js-levenshtein": { 2448 | "version": "1.1.6", 2449 | "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", 2450 | "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==" 2451 | }, 2452 | "js-tokens": { 2453 | "version": "4.0.0", 2454 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 2455 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 2456 | }, 2457 | "js-yaml": { 2458 | "version": "3.13.1", 2459 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 2460 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 2461 | "dev": true, 2462 | "requires": { 2463 | "argparse": "^1.0.7", 2464 | "esprima": "^4.0.0" 2465 | } 2466 | }, 2467 | "jsesc": { 2468 | "version": "2.5.2", 2469 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 2470 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" 2471 | }, 2472 | "json-parse-better-errors": { 2473 | "version": "1.0.2", 2474 | "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", 2475 | "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", 2476 | "dev": true 2477 | }, 2478 | "json-schema-traverse": { 2479 | "version": "0.4.1", 2480 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 2481 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 2482 | "dev": true 2483 | }, 2484 | "json-stable-stringify": { 2485 | "version": "0.0.1", 2486 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", 2487 | "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", 2488 | "requires": { 2489 | "jsonify": "~0.0.0" 2490 | } 2491 | }, 2492 | "json-stable-stringify-without-jsonify": { 2493 | "version": "1.0.1", 2494 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 2495 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", 2496 | "dev": true 2497 | }, 2498 | "json5": { 2499 | "version": "2.1.1", 2500 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", 2501 | "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", 2502 | "requires": { 2503 | "minimist": "^1.2.0" 2504 | } 2505 | }, 2506 | "jsonfile": { 2507 | "version": "4.0.0", 2508 | "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", 2509 | "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", 2510 | "requires": { 2511 | "graceful-fs": "^4.1.6" 2512 | } 2513 | }, 2514 | "jsonify": { 2515 | "version": "0.0.0", 2516 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 2517 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" 2518 | }, 2519 | "jsonparse": { 2520 | "version": "1.3.1", 2521 | "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", 2522 | "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" 2523 | }, 2524 | "jsx-ast-utils": { 2525 | "version": "2.2.3", 2526 | "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz", 2527 | "integrity": "sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA==", 2528 | "dev": true, 2529 | "requires": { 2530 | "array-includes": "^3.0.3", 2531 | "object.assign": "^4.1.0" 2532 | } 2533 | }, 2534 | "labeled-stream-splicer": { 2535 | "version": "2.0.2", 2536 | "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz", 2537 | "integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==", 2538 | "requires": { 2539 | "inherits": "^2.0.1", 2540 | "stream-splicer": "^2.0.0" 2541 | } 2542 | }, 2543 | "levn": { 2544 | "version": "0.3.0", 2545 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 2546 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 2547 | "dev": true, 2548 | "requires": { 2549 | "prelude-ls": "~1.1.2", 2550 | "type-check": "~0.3.2" 2551 | } 2552 | }, 2553 | "load-json-file": { 2554 | "version": "2.0.0", 2555 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 2556 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 2557 | "dev": true, 2558 | "requires": { 2559 | "graceful-fs": "^4.1.2", 2560 | "parse-json": "^2.2.0", 2561 | "pify": "^2.0.0", 2562 | "strip-bom": "^3.0.0" 2563 | } 2564 | }, 2565 | "locate-path": { 2566 | "version": "2.0.0", 2567 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 2568 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 2569 | "dev": true, 2570 | "requires": { 2571 | "p-locate": "^2.0.0", 2572 | "path-exists": "^3.0.0" 2573 | } 2574 | }, 2575 | "lodash": { 2576 | "version": "4.17.19", 2577 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", 2578 | "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" 2579 | }, 2580 | "lodash.memoize": { 2581 | "version": "3.0.4", 2582 | "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", 2583 | "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=" 2584 | }, 2585 | "loose-envify": { 2586 | "version": "1.4.0", 2587 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 2588 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 2589 | "requires": { 2590 | "js-tokens": "^3.0.0 || ^4.0.0" 2591 | } 2592 | }, 2593 | "md5.js": { 2594 | "version": "1.3.5", 2595 | "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", 2596 | "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", 2597 | "requires": { 2598 | "hash-base": "^3.0.0", 2599 | "inherits": "^2.0.1", 2600 | "safe-buffer": "^5.1.2" 2601 | } 2602 | }, 2603 | "miller-rabin": { 2604 | "version": "4.0.1", 2605 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", 2606 | "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", 2607 | "requires": { 2608 | "bn.js": "^4.0.0", 2609 | "brorand": "^1.0.1" 2610 | } 2611 | }, 2612 | "mimic-fn": { 2613 | "version": "1.2.0", 2614 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", 2615 | "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", 2616 | "dev": true 2617 | }, 2618 | "minimalistic-assert": { 2619 | "version": "1.0.1", 2620 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", 2621 | "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" 2622 | }, 2623 | "minimalistic-crypto-utils": { 2624 | "version": "1.0.1", 2625 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", 2626 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" 2627 | }, 2628 | "minimatch": { 2629 | "version": "3.0.4", 2630 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 2631 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 2632 | "requires": { 2633 | "brace-expansion": "^1.1.7" 2634 | } 2635 | }, 2636 | "minimist": { 2637 | "version": "1.2.0", 2638 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 2639 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" 2640 | }, 2641 | "mkdirp": { 2642 | "version": "0.5.1", 2643 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 2644 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 2645 | "requires": { 2646 | "minimist": "0.0.8" 2647 | }, 2648 | "dependencies": { 2649 | "minimist": { 2650 | "version": "0.0.8", 2651 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 2652 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 2653 | } 2654 | } 2655 | }, 2656 | "module-deps": { 2657 | "version": "6.2.1", 2658 | "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.1.tgz", 2659 | "integrity": "sha512-UnEn6Ah36Tu4jFiBbJVUtt0h+iXqxpLqDvPS8nllbw5RZFmNJ1+Mz5BjYnM9ieH80zyxHkARGLnMIHlPK5bu6A==", 2660 | "requires": { 2661 | "JSONStream": "^1.0.3", 2662 | "browser-resolve": "^1.7.0", 2663 | "cached-path-relative": "^1.0.2", 2664 | "concat-stream": "~1.6.0", 2665 | "defined": "^1.0.0", 2666 | "detective": "^5.0.2", 2667 | "duplexer2": "^0.1.2", 2668 | "inherits": "^2.0.1", 2669 | "parents": "^1.0.0", 2670 | "readable-stream": "^2.0.2", 2671 | "resolve": "^1.4.0", 2672 | "stream-combiner2": "^1.1.1", 2673 | "subarg": "^1.0.0", 2674 | "through2": "^2.0.0", 2675 | "xtend": "^4.0.0" 2676 | } 2677 | }, 2678 | "ms": { 2679 | "version": "2.1.2", 2680 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 2681 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" 2682 | }, 2683 | "mute-stream": { 2684 | "version": "0.0.7", 2685 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", 2686 | "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", 2687 | "dev": true 2688 | }, 2689 | "natural-compare": { 2690 | "version": "1.4.0", 2691 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 2692 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 2693 | "dev": true 2694 | }, 2695 | "nice-try": { 2696 | "version": "1.0.5", 2697 | "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", 2698 | "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", 2699 | "dev": true 2700 | }, 2701 | "node-releases": { 2702 | "version": "1.1.40", 2703 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.40.tgz", 2704 | "integrity": "sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ==", 2705 | "requires": { 2706 | "semver": "^6.3.0" 2707 | }, 2708 | "dependencies": { 2709 | "semver": { 2710 | "version": "6.3.0", 2711 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 2712 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 2713 | } 2714 | } 2715 | }, 2716 | "normalize-package-data": { 2717 | "version": "2.5.0", 2718 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 2719 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 2720 | "dev": true, 2721 | "requires": { 2722 | "hosted-git-info": "^2.1.4", 2723 | "resolve": "^1.10.0", 2724 | "semver": "2 || 3 || 4 || 5", 2725 | "validate-npm-package-license": "^3.0.1" 2726 | } 2727 | }, 2728 | "object-assign": { 2729 | "version": "4.1.1", 2730 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 2731 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 2732 | }, 2733 | "object-inspect": { 2734 | "version": "1.7.0", 2735 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", 2736 | "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", 2737 | "dev": true 2738 | }, 2739 | "object-keys": { 2740 | "version": "1.1.1", 2741 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 2742 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" 2743 | }, 2744 | "object.assign": { 2745 | "version": "4.1.0", 2746 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 2747 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 2748 | "requires": { 2749 | "define-properties": "^1.1.2", 2750 | "function-bind": "^1.1.1", 2751 | "has-symbols": "^1.0.0", 2752 | "object-keys": "^1.0.11" 2753 | } 2754 | }, 2755 | "once": { 2756 | "version": "1.4.0", 2757 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2758 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 2759 | "requires": { 2760 | "wrappy": "1" 2761 | } 2762 | }, 2763 | "onetime": { 2764 | "version": "2.0.1", 2765 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", 2766 | "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", 2767 | "dev": true, 2768 | "requires": { 2769 | "mimic-fn": "^1.0.0" 2770 | } 2771 | }, 2772 | "optionator": { 2773 | "version": "0.8.3", 2774 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", 2775 | "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", 2776 | "dev": true, 2777 | "requires": { 2778 | "deep-is": "~0.1.3", 2779 | "fast-levenshtein": "~2.0.6", 2780 | "levn": "~0.3.0", 2781 | "prelude-ls": "~1.1.2", 2782 | "type-check": "~0.3.2", 2783 | "word-wrap": "~1.2.3" 2784 | } 2785 | }, 2786 | "os-browserify": { 2787 | "version": "0.3.0", 2788 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", 2789 | "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" 2790 | }, 2791 | "os-tmpdir": { 2792 | "version": "1.0.2", 2793 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 2794 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 2795 | "dev": true 2796 | }, 2797 | "p-limit": { 2798 | "version": "1.3.0", 2799 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", 2800 | "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", 2801 | "dev": true, 2802 | "requires": { 2803 | "p-try": "^1.0.0" 2804 | } 2805 | }, 2806 | "p-locate": { 2807 | "version": "2.0.0", 2808 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 2809 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 2810 | "dev": true, 2811 | "requires": { 2812 | "p-limit": "^1.1.0" 2813 | } 2814 | }, 2815 | "p-try": { 2816 | "version": "1.0.0", 2817 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", 2818 | "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", 2819 | "dev": true 2820 | }, 2821 | "pako": { 2822 | "version": "1.0.10", 2823 | "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", 2824 | "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==" 2825 | }, 2826 | "parents": { 2827 | "version": "1.0.1", 2828 | "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", 2829 | "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", 2830 | "requires": { 2831 | "path-platform": "~0.11.15" 2832 | } 2833 | }, 2834 | "parse-asn1": { 2835 | "version": "5.1.5", 2836 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", 2837 | "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", 2838 | "requires": { 2839 | "asn1.js": "^4.0.0", 2840 | "browserify-aes": "^1.0.0", 2841 | "create-hash": "^1.1.0", 2842 | "evp_bytestokey": "^1.0.0", 2843 | "pbkdf2": "^3.0.3", 2844 | "safe-buffer": "^5.1.1" 2845 | } 2846 | }, 2847 | "parse-json": { 2848 | "version": "2.2.0", 2849 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 2850 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 2851 | "dev": true, 2852 | "requires": { 2853 | "error-ex": "^1.2.0" 2854 | } 2855 | }, 2856 | "path-browserify": { 2857 | "version": "0.0.1", 2858 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", 2859 | "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" 2860 | }, 2861 | "path-exists": { 2862 | "version": "3.0.0", 2863 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 2864 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 2865 | "dev": true 2866 | }, 2867 | "path-is-absolute": { 2868 | "version": "1.0.1", 2869 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 2870 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 2871 | }, 2872 | "path-is-inside": { 2873 | "version": "1.0.2", 2874 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 2875 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", 2876 | "dev": true 2877 | }, 2878 | "path-key": { 2879 | "version": "2.0.1", 2880 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", 2881 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", 2882 | "dev": true 2883 | }, 2884 | "path-parse": { 2885 | "version": "1.0.6", 2886 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 2887 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" 2888 | }, 2889 | "path-platform": { 2890 | "version": "0.11.15", 2891 | "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", 2892 | "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=" 2893 | }, 2894 | "path-type": { 2895 | "version": "2.0.0", 2896 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", 2897 | "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", 2898 | "dev": true, 2899 | "requires": { 2900 | "pify": "^2.0.0" 2901 | } 2902 | }, 2903 | "pbkdf2": { 2904 | "version": "3.0.17", 2905 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", 2906 | "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", 2907 | "requires": { 2908 | "create-hash": "^1.1.2", 2909 | "create-hmac": "^1.1.4", 2910 | "ripemd160": "^2.0.1", 2911 | "safe-buffer": "^5.0.1", 2912 | "sha.js": "^2.4.8" 2913 | } 2914 | }, 2915 | "pify": { 2916 | "version": "2.3.0", 2917 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 2918 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 2919 | "dev": true 2920 | }, 2921 | "pkg-conf": { 2922 | "version": "2.1.0", 2923 | "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", 2924 | "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", 2925 | "dev": true, 2926 | "requires": { 2927 | "find-up": "^2.0.0", 2928 | "load-json-file": "^4.0.0" 2929 | }, 2930 | "dependencies": { 2931 | "load-json-file": { 2932 | "version": "4.0.0", 2933 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", 2934 | "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", 2935 | "dev": true, 2936 | "requires": { 2937 | "graceful-fs": "^4.1.2", 2938 | "parse-json": "^4.0.0", 2939 | "pify": "^3.0.0", 2940 | "strip-bom": "^3.0.0" 2941 | } 2942 | }, 2943 | "parse-json": { 2944 | "version": "4.0.0", 2945 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", 2946 | "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", 2947 | "dev": true, 2948 | "requires": { 2949 | "error-ex": "^1.3.1", 2950 | "json-parse-better-errors": "^1.0.1" 2951 | } 2952 | }, 2953 | "pify": { 2954 | "version": "3.0.0", 2955 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 2956 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 2957 | "dev": true 2958 | } 2959 | } 2960 | }, 2961 | "pkg-config": { 2962 | "version": "1.1.1", 2963 | "resolved": "https://registry.npmjs.org/pkg-config/-/pkg-config-1.1.1.tgz", 2964 | "integrity": "sha1-VX7yLXPaPIg3EHdmxS6tq94pj+Q=", 2965 | "dev": true, 2966 | "requires": { 2967 | "debug-log": "^1.0.0", 2968 | "find-root": "^1.0.0", 2969 | "xtend": "^4.0.1" 2970 | } 2971 | }, 2972 | "pkg-dir": { 2973 | "version": "2.0.0", 2974 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", 2975 | "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", 2976 | "dev": true, 2977 | "requires": { 2978 | "find-up": "^2.1.0" 2979 | } 2980 | }, 2981 | "pluralize": { 2982 | "version": "7.0.0", 2983 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", 2984 | "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", 2985 | "dev": true 2986 | }, 2987 | "prelude-ls": { 2988 | "version": "1.1.2", 2989 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 2990 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 2991 | "dev": true 2992 | }, 2993 | "private": { 2994 | "version": "0.1.8", 2995 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 2996 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" 2997 | }, 2998 | "process": { 2999 | "version": "0.11.10", 3000 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", 3001 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" 3002 | }, 3003 | "process-nextick-args": { 3004 | "version": "2.0.1", 3005 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 3006 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 3007 | }, 3008 | "progress": { 3009 | "version": "2.0.3", 3010 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", 3011 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", 3012 | "dev": true 3013 | }, 3014 | "prop-types": { 3015 | "version": "15.7.2", 3016 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", 3017 | "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", 3018 | "dev": true, 3019 | "requires": { 3020 | "loose-envify": "^1.4.0", 3021 | "object-assign": "^4.1.1", 3022 | "react-is": "^16.8.1" 3023 | } 3024 | }, 3025 | "public-encrypt": { 3026 | "version": "4.0.3", 3027 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", 3028 | "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", 3029 | "requires": { 3030 | "bn.js": "^4.1.0", 3031 | "browserify-rsa": "^4.0.0", 3032 | "create-hash": "^1.1.0", 3033 | "parse-asn1": "^5.0.0", 3034 | "randombytes": "^2.0.1", 3035 | "safe-buffer": "^5.1.2" 3036 | } 3037 | }, 3038 | "punycode": { 3039 | "version": "1.4.1", 3040 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", 3041 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" 3042 | }, 3043 | "querystring": { 3044 | "version": "0.2.0", 3045 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 3046 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" 3047 | }, 3048 | "querystring-es3": { 3049 | "version": "0.2.1", 3050 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", 3051 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" 3052 | }, 3053 | "randombytes": { 3054 | "version": "2.1.0", 3055 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 3056 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", 3057 | "requires": { 3058 | "safe-buffer": "^5.1.0" 3059 | } 3060 | }, 3061 | "randomfill": { 3062 | "version": "1.0.4", 3063 | "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", 3064 | "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", 3065 | "requires": { 3066 | "randombytes": "^2.0.5", 3067 | "safe-buffer": "^5.1.0" 3068 | } 3069 | }, 3070 | "react-is": { 3071 | "version": "16.12.0", 3072 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.12.0.tgz", 3073 | "integrity": "sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==", 3074 | "dev": true 3075 | }, 3076 | "read-only-stream": { 3077 | "version": "2.0.0", 3078 | "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", 3079 | "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", 3080 | "requires": { 3081 | "readable-stream": "^2.0.2" 3082 | } 3083 | }, 3084 | "read-pkg": { 3085 | "version": "2.0.0", 3086 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", 3087 | "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", 3088 | "dev": true, 3089 | "requires": { 3090 | "load-json-file": "^2.0.0", 3091 | "normalize-package-data": "^2.3.2", 3092 | "path-type": "^2.0.0" 3093 | } 3094 | }, 3095 | "read-pkg-up": { 3096 | "version": "2.0.0", 3097 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", 3098 | "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", 3099 | "dev": true, 3100 | "requires": { 3101 | "find-up": "^2.0.0", 3102 | "read-pkg": "^2.0.0" 3103 | } 3104 | }, 3105 | "readable-stream": { 3106 | "version": "2.3.6", 3107 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", 3108 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", 3109 | "requires": { 3110 | "core-util-is": "~1.0.0", 3111 | "inherits": "~2.0.3", 3112 | "isarray": "~1.0.0", 3113 | "process-nextick-args": "~2.0.0", 3114 | "safe-buffer": "~5.1.1", 3115 | "string_decoder": "~1.1.1", 3116 | "util-deprecate": "~1.0.1" 3117 | }, 3118 | "dependencies": { 3119 | "string_decoder": { 3120 | "version": "1.1.1", 3121 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 3122 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 3123 | "requires": { 3124 | "safe-buffer": "~5.1.0" 3125 | } 3126 | } 3127 | } 3128 | }, 3129 | "regenerate": { 3130 | "version": "1.4.0", 3131 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 3132 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==" 3133 | }, 3134 | "regenerate-unicode-properties": { 3135 | "version": "8.1.0", 3136 | "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", 3137 | "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", 3138 | "requires": { 3139 | "regenerate": "^1.4.0" 3140 | } 3141 | }, 3142 | "regenerator-transform": { 3143 | "version": "0.14.1", 3144 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", 3145 | "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", 3146 | "requires": { 3147 | "private": "^0.1.6" 3148 | } 3149 | }, 3150 | "regexpp": { 3151 | "version": "2.0.1", 3152 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", 3153 | "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", 3154 | "dev": true 3155 | }, 3156 | "regexpu-core": { 3157 | "version": "4.6.0", 3158 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 3159 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 3160 | "requires": { 3161 | "regenerate": "^1.4.0", 3162 | "regenerate-unicode-properties": "^8.1.0", 3163 | "regjsgen": "^0.5.0", 3164 | "regjsparser": "^0.6.0", 3165 | "unicode-match-property-ecmascript": "^1.0.4", 3166 | "unicode-match-property-value-ecmascript": "^1.1.0" 3167 | } 3168 | }, 3169 | "regjsgen": { 3170 | "version": "0.5.1", 3171 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 3172 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==" 3173 | }, 3174 | "regjsparser": { 3175 | "version": "0.6.0", 3176 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 3177 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 3178 | "requires": { 3179 | "jsesc": "~0.5.0" 3180 | }, 3181 | "dependencies": { 3182 | "jsesc": { 3183 | "version": "0.5.0", 3184 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 3185 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" 3186 | } 3187 | } 3188 | }, 3189 | "require-uncached": { 3190 | "version": "1.0.3", 3191 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", 3192 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", 3193 | "dev": true, 3194 | "requires": { 3195 | "caller-path": "^0.1.0", 3196 | "resolve-from": "^1.0.0" 3197 | }, 3198 | "dependencies": { 3199 | "resolve-from": { 3200 | "version": "1.0.1", 3201 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", 3202 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", 3203 | "dev": true 3204 | } 3205 | } 3206 | }, 3207 | "resolve": { 3208 | "version": "1.12.0", 3209 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", 3210 | "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", 3211 | "requires": { 3212 | "path-parse": "^1.0.6" 3213 | } 3214 | }, 3215 | "resolve-from": { 3216 | "version": "4.0.0", 3217 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 3218 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" 3219 | }, 3220 | "restore-cursor": { 3221 | "version": "2.0.0", 3222 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", 3223 | "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", 3224 | "dev": true, 3225 | "requires": { 3226 | "onetime": "^2.0.0", 3227 | "signal-exit": "^3.0.2" 3228 | } 3229 | }, 3230 | "rimraf": { 3231 | "version": "2.6.3", 3232 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", 3233 | "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", 3234 | "dev": true, 3235 | "requires": { 3236 | "glob": "^7.1.3" 3237 | } 3238 | }, 3239 | "ripemd160": { 3240 | "version": "2.0.2", 3241 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", 3242 | "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", 3243 | "requires": { 3244 | "hash-base": "^3.0.0", 3245 | "inherits": "^2.0.1" 3246 | } 3247 | }, 3248 | "run-async": { 3249 | "version": "2.3.0", 3250 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", 3251 | "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", 3252 | "dev": true, 3253 | "requires": { 3254 | "is-promise": "^2.1.0" 3255 | } 3256 | }, 3257 | "run-parallel": { 3258 | "version": "1.1.9", 3259 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", 3260 | "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", 3261 | "dev": true 3262 | }, 3263 | "rxjs": { 3264 | "version": "5.5.12", 3265 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", 3266 | "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", 3267 | "dev": true, 3268 | "requires": { 3269 | "symbol-observable": "1.0.1" 3270 | } 3271 | }, 3272 | "safe-buffer": { 3273 | "version": "5.1.2", 3274 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 3275 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 3276 | }, 3277 | "safer-buffer": { 3278 | "version": "2.1.2", 3279 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 3280 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 3281 | "dev": true 3282 | }, 3283 | "semver": { 3284 | "version": "5.7.1", 3285 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 3286 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 3287 | }, 3288 | "sha.js": { 3289 | "version": "2.4.11", 3290 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", 3291 | "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", 3292 | "requires": { 3293 | "inherits": "^2.0.1", 3294 | "safe-buffer": "^5.0.1" 3295 | } 3296 | }, 3297 | "shasum": { 3298 | "version": "1.0.2", 3299 | "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", 3300 | "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", 3301 | "requires": { 3302 | "json-stable-stringify": "~0.0.0", 3303 | "sha.js": "~2.4.4" 3304 | } 3305 | }, 3306 | "shasum-object": { 3307 | "version": "1.0.0", 3308 | "resolved": "https://registry.npmjs.org/shasum-object/-/shasum-object-1.0.0.tgz", 3309 | "integrity": "sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg==", 3310 | "requires": { 3311 | "fast-safe-stringify": "^2.0.7" 3312 | } 3313 | }, 3314 | "shebang-command": { 3315 | "version": "1.2.0", 3316 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 3317 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 3318 | "dev": true, 3319 | "requires": { 3320 | "shebang-regex": "^1.0.0" 3321 | } 3322 | }, 3323 | "shebang-regex": { 3324 | "version": "1.0.0", 3325 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 3326 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 3327 | "dev": true 3328 | }, 3329 | "shell-quote": { 3330 | "version": "1.7.2", 3331 | "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", 3332 | "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" 3333 | }, 3334 | "signal-exit": { 3335 | "version": "3.0.2", 3336 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 3337 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 3338 | "dev": true 3339 | }, 3340 | "simple-concat": { 3341 | "version": "1.0.0", 3342 | "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", 3343 | "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=" 3344 | }, 3345 | "slice-ansi": { 3346 | "version": "1.0.0", 3347 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", 3348 | "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", 3349 | "dev": true, 3350 | "requires": { 3351 | "is-fullwidth-code-point": "^2.0.0" 3352 | } 3353 | }, 3354 | "source-map": { 3355 | "version": "0.5.7", 3356 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 3357 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" 3358 | }, 3359 | "spdx-correct": { 3360 | "version": "3.1.0", 3361 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", 3362 | "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", 3363 | "dev": true, 3364 | "requires": { 3365 | "spdx-expression-parse": "^3.0.0", 3366 | "spdx-license-ids": "^3.0.0" 3367 | } 3368 | }, 3369 | "spdx-exceptions": { 3370 | "version": "2.2.0", 3371 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", 3372 | "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", 3373 | "dev": true 3374 | }, 3375 | "spdx-expression-parse": { 3376 | "version": "3.0.0", 3377 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", 3378 | "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", 3379 | "dev": true, 3380 | "requires": { 3381 | "spdx-exceptions": "^2.1.0", 3382 | "spdx-license-ids": "^3.0.0" 3383 | } 3384 | }, 3385 | "spdx-license-ids": { 3386 | "version": "3.0.5", 3387 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", 3388 | "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", 3389 | "dev": true 3390 | }, 3391 | "sprintf-js": { 3392 | "version": "1.0.3", 3393 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 3394 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 3395 | "dev": true 3396 | }, 3397 | "standard": { 3398 | "version": "12.0.1", 3399 | "resolved": "https://registry.npmjs.org/standard/-/standard-12.0.1.tgz", 3400 | "integrity": "sha512-UqdHjh87OG2gUrNCSM4QRLF5n9h3TFPwrCNyVlkqu31Hej0L/rc8hzKqVvkb2W3x0WMq7PzZdkLfEcBhVOR6lg==", 3401 | "dev": true, 3402 | "requires": { 3403 | "eslint": "~5.4.0", 3404 | "eslint-config-standard": "12.0.0", 3405 | "eslint-config-standard-jsx": "6.0.2", 3406 | "eslint-plugin-import": "~2.14.0", 3407 | "eslint-plugin-node": "~7.0.1", 3408 | "eslint-plugin-promise": "~4.0.0", 3409 | "eslint-plugin-react": "~7.11.1", 3410 | "eslint-plugin-standard": "~4.0.0", 3411 | "standard-engine": "~9.0.0" 3412 | } 3413 | }, 3414 | "standard-engine": { 3415 | "version": "9.0.0", 3416 | "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-9.0.0.tgz", 3417 | "integrity": "sha512-ZfNfCWZ2Xq67VNvKMPiVMKHnMdvxYzvZkf1AH8/cw2NLDBm5LRsxMqvEJpsjLI/dUosZ3Z1d6JlHDp5rAvvk2w==", 3418 | "dev": true, 3419 | "requires": { 3420 | "deglob": "^2.1.0", 3421 | "get-stdin": "^6.0.0", 3422 | "minimist": "^1.1.0", 3423 | "pkg-conf": "^2.0.0" 3424 | } 3425 | }, 3426 | "stream-browserify": { 3427 | "version": "2.0.2", 3428 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", 3429 | "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", 3430 | "requires": { 3431 | "inherits": "~2.0.1", 3432 | "readable-stream": "^2.0.2" 3433 | } 3434 | }, 3435 | "stream-combiner2": { 3436 | "version": "1.1.1", 3437 | "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", 3438 | "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", 3439 | "requires": { 3440 | "duplexer2": "~0.1.0", 3441 | "readable-stream": "^2.0.2" 3442 | } 3443 | }, 3444 | "stream-http": { 3445 | "version": "3.1.0", 3446 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.0.tgz", 3447 | "integrity": "sha512-cuB6RgO7BqC4FBYzmnvhob5Do3wIdIsXAgGycHJnW+981gHqoYcYz9lqjJrk8WXRddbwPuqPYRl+bag6mYv4lw==", 3448 | "requires": { 3449 | "builtin-status-codes": "^3.0.0", 3450 | "inherits": "^2.0.1", 3451 | "readable-stream": "^3.0.6", 3452 | "xtend": "^4.0.0" 3453 | }, 3454 | "dependencies": { 3455 | "readable-stream": { 3456 | "version": "3.4.0", 3457 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", 3458 | "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", 3459 | "requires": { 3460 | "inherits": "^2.0.3", 3461 | "string_decoder": "^1.1.1", 3462 | "util-deprecate": "^1.0.1" 3463 | } 3464 | } 3465 | } 3466 | }, 3467 | "stream-splicer": { 3468 | "version": "2.0.1", 3469 | "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz", 3470 | "integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==", 3471 | "requires": { 3472 | "inherits": "^2.0.1", 3473 | "readable-stream": "^2.0.2" 3474 | } 3475 | }, 3476 | "string-width": { 3477 | "version": "2.1.1", 3478 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 3479 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 3480 | "dev": true, 3481 | "requires": { 3482 | "is-fullwidth-code-point": "^2.0.0", 3483 | "strip-ansi": "^4.0.0" 3484 | } 3485 | }, 3486 | "string.prototype.trimleft": { 3487 | "version": "2.1.0", 3488 | "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", 3489 | "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", 3490 | "dev": true, 3491 | "requires": { 3492 | "define-properties": "^1.1.3", 3493 | "function-bind": "^1.1.1" 3494 | } 3495 | }, 3496 | "string.prototype.trimright": { 3497 | "version": "2.1.0", 3498 | "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", 3499 | "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", 3500 | "dev": true, 3501 | "requires": { 3502 | "define-properties": "^1.1.3", 3503 | "function-bind": "^1.1.1" 3504 | } 3505 | }, 3506 | "string_decoder": { 3507 | "version": "1.3.0", 3508 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", 3509 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", 3510 | "requires": { 3511 | "safe-buffer": "~5.2.0" 3512 | }, 3513 | "dependencies": { 3514 | "safe-buffer": { 3515 | "version": "5.2.0", 3516 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", 3517 | "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" 3518 | } 3519 | } 3520 | }, 3521 | "strip-ansi": { 3522 | "version": "4.0.0", 3523 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 3524 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 3525 | "dev": true, 3526 | "requires": { 3527 | "ansi-regex": "^3.0.0" 3528 | }, 3529 | "dependencies": { 3530 | "ansi-regex": { 3531 | "version": "3.0.0", 3532 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3533 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3534 | "dev": true 3535 | } 3536 | } 3537 | }, 3538 | "strip-bom": { 3539 | "version": "3.0.0", 3540 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 3541 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 3542 | "dev": true 3543 | }, 3544 | "strip-json-comments": { 3545 | "version": "2.0.1", 3546 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 3547 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 3548 | "dev": true 3549 | }, 3550 | "subarg": { 3551 | "version": "1.0.0", 3552 | "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", 3553 | "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", 3554 | "requires": { 3555 | "minimist": "^1.1.0" 3556 | } 3557 | }, 3558 | "supports-color": { 3559 | "version": "5.5.0", 3560 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 3561 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 3562 | "requires": { 3563 | "has-flag": "^3.0.0" 3564 | } 3565 | }, 3566 | "symbol-observable": { 3567 | "version": "1.0.1", 3568 | "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", 3569 | "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", 3570 | "dev": true 3571 | }, 3572 | "syntax-error": { 3573 | "version": "1.4.0", 3574 | "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", 3575 | "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", 3576 | "requires": { 3577 | "acorn-node": "^1.2.0" 3578 | } 3579 | }, 3580 | "table": { 3581 | "version": "4.0.3", 3582 | "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", 3583 | "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", 3584 | "dev": true, 3585 | "requires": { 3586 | "ajv": "^6.0.1", 3587 | "ajv-keywords": "^3.0.0", 3588 | "chalk": "^2.1.0", 3589 | "lodash": "^4.17.4", 3590 | "slice-ansi": "1.0.0", 3591 | "string-width": "^2.1.1" 3592 | } 3593 | }, 3594 | "text-table": { 3595 | "version": "0.2.0", 3596 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 3597 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 3598 | "dev": true 3599 | }, 3600 | "through": { 3601 | "version": "2.3.8", 3602 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 3603 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 3604 | }, 3605 | "through2": { 3606 | "version": "2.0.5", 3607 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", 3608 | "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", 3609 | "requires": { 3610 | "readable-stream": "~2.3.6", 3611 | "xtend": "~4.0.1" 3612 | } 3613 | }, 3614 | "timers-browserify": { 3615 | "version": "1.4.2", 3616 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", 3617 | "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", 3618 | "requires": { 3619 | "process": "~0.11.0" 3620 | } 3621 | }, 3622 | "tmp": { 3623 | "version": "0.0.33", 3624 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", 3625 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", 3626 | "dev": true, 3627 | "requires": { 3628 | "os-tmpdir": "~1.0.2" 3629 | } 3630 | }, 3631 | "to-fast-properties": { 3632 | "version": "2.0.0", 3633 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 3634 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" 3635 | }, 3636 | "tty-browserify": { 3637 | "version": "0.0.1", 3638 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", 3639 | "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" 3640 | }, 3641 | "type-check": { 3642 | "version": "0.3.2", 3643 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 3644 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 3645 | "dev": true, 3646 | "requires": { 3647 | "prelude-ls": "~1.1.2" 3648 | } 3649 | }, 3650 | "typedarray": { 3651 | "version": "0.0.6", 3652 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 3653 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 3654 | }, 3655 | "umd": { 3656 | "version": "3.0.3", 3657 | "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", 3658 | "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==" 3659 | }, 3660 | "undeclared-identifiers": { 3661 | "version": "1.1.3", 3662 | "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz", 3663 | "integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==", 3664 | "requires": { 3665 | "acorn-node": "^1.3.0", 3666 | "dash-ast": "^1.0.0", 3667 | "get-assigned-identifiers": "^1.2.0", 3668 | "simple-concat": "^1.0.0", 3669 | "xtend": "^4.0.1" 3670 | } 3671 | }, 3672 | "unicode-canonical-property-names-ecmascript": { 3673 | "version": "1.0.4", 3674 | "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", 3675 | "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==" 3676 | }, 3677 | "unicode-match-property-ecmascript": { 3678 | "version": "1.0.4", 3679 | "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", 3680 | "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", 3681 | "requires": { 3682 | "unicode-canonical-property-names-ecmascript": "^1.0.4", 3683 | "unicode-property-aliases-ecmascript": "^1.0.4" 3684 | } 3685 | }, 3686 | "unicode-match-property-value-ecmascript": { 3687 | "version": "1.1.0", 3688 | "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", 3689 | "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==" 3690 | }, 3691 | "unicode-property-aliases-ecmascript": { 3692 | "version": "1.0.5", 3693 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", 3694 | "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==" 3695 | }, 3696 | "uniq": { 3697 | "version": "1.0.1", 3698 | "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", 3699 | "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", 3700 | "dev": true 3701 | }, 3702 | "universalify": { 3703 | "version": "0.1.2", 3704 | "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", 3705 | "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" 3706 | }, 3707 | "uri-js": { 3708 | "version": "4.2.2", 3709 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", 3710 | "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", 3711 | "dev": true, 3712 | "requires": { 3713 | "punycode": "^2.1.0" 3714 | }, 3715 | "dependencies": { 3716 | "punycode": { 3717 | "version": "2.1.1", 3718 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 3719 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 3720 | "dev": true 3721 | } 3722 | } 3723 | }, 3724 | "url": { 3725 | "version": "0.11.0", 3726 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", 3727 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", 3728 | "requires": { 3729 | "punycode": "1.3.2", 3730 | "querystring": "0.2.0" 3731 | }, 3732 | "dependencies": { 3733 | "punycode": { 3734 | "version": "1.3.2", 3735 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 3736 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" 3737 | } 3738 | } 3739 | }, 3740 | "util": { 3741 | "version": "0.10.4", 3742 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", 3743 | "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", 3744 | "requires": { 3745 | "inherits": "2.0.3" 3746 | }, 3747 | "dependencies": { 3748 | "inherits": { 3749 | "version": "2.0.3", 3750 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3751 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 3752 | } 3753 | } 3754 | }, 3755 | "util-deprecate": { 3756 | "version": "1.0.2", 3757 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 3758 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 3759 | }, 3760 | "validate-npm-package-license": { 3761 | "version": "3.0.4", 3762 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 3763 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 3764 | "dev": true, 3765 | "requires": { 3766 | "spdx-correct": "^3.0.0", 3767 | "spdx-expression-parse": "^3.0.0" 3768 | } 3769 | }, 3770 | "vm-browserify": { 3771 | "version": "1.1.2", 3772 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", 3773 | "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" 3774 | }, 3775 | "which": { 3776 | "version": "1.3.1", 3777 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 3778 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 3779 | "dev": true, 3780 | "requires": { 3781 | "isexe": "^2.0.0" 3782 | } 3783 | }, 3784 | "word-wrap": { 3785 | "version": "1.2.3", 3786 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", 3787 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 3788 | "dev": true 3789 | }, 3790 | "wrappy": { 3791 | "version": "1.0.2", 3792 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 3793 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 3794 | }, 3795 | "write": { 3796 | "version": "0.2.1", 3797 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", 3798 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", 3799 | "dev": true, 3800 | "requires": { 3801 | "mkdirp": "^0.5.1" 3802 | } 3803 | }, 3804 | "xtend": { 3805 | "version": "4.0.2", 3806 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 3807 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" 3808 | } 3809 | } 3810 | } 3811 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "serverless-plugin-optimize", 3 | "version": "4.2.1-rc.1", 4 | "description": "Bundle with Browserify, transpile and minify with Babel automatically to your NodeJS runtime compatible JavaScript.", 5 | "main": "src/index.js", 6 | "scripts": { 7 | "lint": "node_modules/.bin/standard src/**", 8 | "lint:fix": "node_modules/.bin/standard --fix src/**" 9 | }, 10 | "author": "Gonçalo Neves", 11 | "license": "MIT", 12 | "repository": { 13 | "type": "git", 14 | "url": "git+https://github.com/FidelLimited/serverless-plugin-optimize.git" 15 | }, 16 | "keywords": [ 17 | "serverless plugin optimize handler", 18 | "serverless optimizer", 19 | "serverless plugin", 20 | "lambda serverless", 21 | "optimize lambda" 22 | ], 23 | "bugs": { 24 | "url": "https://github.com/FidelLimited/serverless-plugin-optimize/issues" 25 | }, 26 | "homepage": "https://github.com/FidelLimited/serverless-plugin-optimize#readme", 27 | "dependencies": { 28 | "@babel/core": "^7.1.6", 29 | "@babel/preset-env": "^7.1.6", 30 | "babel-preset-minify": "^0.5.0", 31 | "babelify": "^10.0.0", 32 | "bluebird": "^3.5.3", 33 | "browserify": "^16.2.3", 34 | "fs-extra": "^7.0.1", 35 | "resolve-from": "^4.0.0" 36 | }, 37 | "devDependencies": { 38 | "standard": "^12.0.1" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | /** 4 | * @module serverless-plugin-optimize 5 | * 6 | * @see {@link https://serverless.com/framework/docs/providers/aws/guide/plugins/} 7 | * 8 | * @requires 'babelify' 9 | * @requires 'browserify' 10 | * @requires 'bluebird' 11 | * @requires 'fs-extra' 12 | * @requires 'path' 13 | * @requires 'resolve-from' 14 | * */ 15 | const babelify = require('babelify') 16 | const browserify = require('browserify') 17 | const BbPromise = require('bluebird') 18 | const fs = BbPromise.promisifyAll(require('fs-extra')) 19 | const path = require('path') 20 | const resolveFrom = require('resolve-from') 21 | 22 | /** 23 | * @classdesc Bundle, transpile to ES5 and minify your Serverless functions 24 | * @class Optimize 25 | * */ 26 | class Optimize { 27 | /** 28 | * @description Serverless Optimize 29 | * @constructor 30 | * 31 | * @param {!Object} serverless - Serverless object 32 | * @param {!Object} options - Serverless options 33 | * */ 34 | constructor (serverless, options) { 35 | /** Serverless variables */ 36 | this.serverless = serverless 37 | this.options = options 38 | this.custom = this.serverless.service.custom 39 | 40 | this.provider = this.serverless.getProvider('aws') 41 | 42 | /** Runtime >=node4.3 */ 43 | const validRunTime = (!this.serverless.service.provider.runtime || 44 | this.serverless.service.provider.runtime === 'nodejs4.3' || 45 | this.serverless.service.provider.runtime === 'nodejs6.10' || 46 | this.serverless.service.provider.runtime === 'nodejs8.10' || 47 | this.serverless.service.provider.runtime === 'nodejs10.x' || 48 | this.serverless.service.provider.runtime === 'nodejs12.x' || 49 | this.serverless.service.provider.runtime === 'nodejs14.x') 50 | 51 | /** AWS provider and valid runtime check */ 52 | if (validRunTime) { 53 | let nodeVersion = 'current' 54 | 55 | if (this.serverless.service.provider.runtime) { 56 | nodeVersion = this.serverless.service.provider.runtime.split('nodejs')[1] 57 | } 58 | 59 | if (nodeVersion.endsWith('.x')) { 60 | nodeVersion = nodeVersion.replace(/\.x$/, '') 61 | } 62 | 63 | /** Optimize variables with default options */ 64 | this.optimize = { 65 | functions: [], 66 | options: { 67 | debug: false, 68 | exclude: ['aws-sdk'], 69 | external: [], 70 | externalPaths: {}, 71 | extensions: [], 72 | global: false, 73 | includePaths: [], 74 | ignore: [], 75 | minify: true, 76 | plugins: [], 77 | prefix: '_optimize', 78 | presets: [[require.resolve('@babel/preset-env'), { 79 | targets: { 80 | node: nodeVersion 81 | } 82 | }]] 83 | } 84 | } 85 | 86 | /** Set custom options */ 87 | if (this.custom && this.custom.optimize) { 88 | /** Debug flag */ 89 | if (this.custom.optimize.debug === true) { 90 | this.optimize.options.debug = this.custom.optimize.debug 91 | } 92 | 93 | /** Exclude */ 94 | if (Array.isArray(this.custom.optimize.exclude)) { 95 | this.optimize.options.exclude = this.custom.optimize.exclude 96 | } 97 | 98 | /** External */ 99 | if (Array.isArray(this.custom.optimize.external)) { 100 | this.optimize.options.external = this.custom.optimize.external 101 | } 102 | 103 | /** External Paths */ 104 | if (typeof this.custom.optimize.externalPaths === 'object') { 105 | this.optimize.options.externalPaths = this.custom.optimize.externalPaths 106 | } 107 | 108 | /** Extensions */ 109 | if (Array.isArray(this.custom.optimize.extensions)) { 110 | this.optimize.options.extensions = this.custom.optimize.extensions 111 | } 112 | 113 | /** Global transforms */ 114 | if (typeof this.custom.optimize.global === 'boolean') { 115 | this.optimize.options.global = this.custom.optimize.global 116 | } 117 | 118 | /** Include paths */ 119 | if (Array.isArray(this.custom.optimize.includePaths)) { 120 | this.optimize.options.includePaths = this.custom.optimize.includePaths 121 | } 122 | 123 | /** Ignore */ 124 | if (Array.isArray(this.custom.optimize.ignore)) { 125 | this.optimize.options.ignore = this.custom.optimize.ignore 126 | } 127 | 128 | /** Minify flag */ 129 | if (typeof this.custom.optimize.minify === 'boolean') { 130 | this.optimize.options.minify = this.custom.optimize.minify 131 | } 132 | 133 | /** Babel plugins */ 134 | if (Array.isArray(this.custom.optimize.plugins)) { 135 | this.optimize.options.plugins = this.custom.optimize.plugins 136 | } 137 | 138 | /** Optimize prefix */ 139 | if (typeof this.custom.optimize.prefix === 'string') { 140 | this.optimize.options.prefix = this.custom.optimize.prefix 141 | } 142 | 143 | /** Babel presets */ 144 | if (Array.isArray(this.custom.optimize.presets)) { 145 | this.optimize.options.presets = this.custom.optimize.presets 146 | } 147 | } 148 | 149 | /** Serverless hooks */ 150 | this.hooks = { 151 | 'after:package:function:package': this.afterCreateDeploymentArtifacts.bind(this), 152 | 'before:package:function:package': this.beforeCreateDeploymentArtifacts.bind(this), 153 | 'after:package:createDeploymentArtifacts': this.afterCreateDeploymentArtifacts.bind(this), 154 | 'before:package:createDeploymentArtifacts': this.beforeCreateDeploymentArtifacts.bind(this), 155 | 'after:invoke:local:invoke': this.afterCreateDeploymentArtifacts.bind(this), 156 | 'before:invoke:local:invoke': this.beforeCreateDeploymentArtifacts.bind(this) 157 | } 158 | } 159 | } 160 | 161 | /** 162 | * @description Before create deployment artifacts 163 | * 164 | * @fulfil {} — Functions optimized 165 | * @reject {Error} Optimization error 166 | * 167 | * @return {Promise} 168 | * */ 169 | beforeCreateDeploymentArtifacts () { 170 | /** Log optimize start */ 171 | this.serverless.cli.log('Optimize: starting engines') 172 | 173 | /** Get prefix path */ 174 | this.path = this.getPath(this.optimize.options.prefix) 175 | 176 | /** Package globally or individually */ 177 | this.optimize.options.individually = !!(this.serverless.service.package && this.serverless.service.package.individually) 178 | if (!this.optimize.options.individually) { 179 | this.optimize.package = { 180 | exclude: ['**'], 181 | include: [this.optimize.options.prefix + '/**'] 182 | } 183 | this.serverless.service.package = this.serverless.service.package || {} 184 | Object.assign(this.serverless.service.package, this.optimize.package) 185 | } 186 | 187 | /** Clean prefix folder */ 188 | return this.cleanFolder().then(() => { 189 | /** Optimize one function */ 190 | if (this.options.function) { 191 | return this.optimizeFunction(this.options.function) 192 | } else { 193 | /** Optimize all functions */ 194 | return this.optimizeAllFunctions() 195 | } 196 | }) 197 | } 198 | 199 | /** 200 | * @description After create deployment artifacts 201 | * 202 | * @fulfil {} — Optimization finished 203 | * @reject {Error} Optimization error 204 | * 205 | * @return {Promise} 206 | * */ 207 | afterCreateDeploymentArtifacts () { 208 | /** Log optimize object if debug flag is set */ 209 | if (this.optimize.options.debug) { 210 | this.serverless.cli.log('Optimize: debug ' + JSON.stringify(this.optimize, null, 2)) 211 | } else { 212 | /** Clean prefix folder */ 213 | return this.cleanFolder() 214 | } 215 | } 216 | 217 | /** 218 | * @description After create deployment artifacts 219 | * 220 | * @param {string} file — File path 221 | * 222 | * @return {String} Absolute file path 223 | * */ 224 | getPath (file) { 225 | return path.join(this.serverless.config.servicePath, file) 226 | } 227 | 228 | /** 229 | * @description Create prefix folder 230 | * 231 | * @fulfil {} — Folder created 232 | * @reject {Error} File system error 233 | * 234 | * @return {Promise} 235 | * */ 236 | createFolder () { 237 | return fs.mkdirsAsync(this.path) 238 | } 239 | 240 | /** 241 | * @description Clean prefix folder 242 | * 243 | * @fulfil {} — Folder cleaned 244 | * @reject {Error} File system error 245 | * 246 | * @return {Promise} 247 | * */ 248 | cleanFolder () { 249 | return fs.removeAsync(this.path) 250 | } 251 | 252 | /** 253 | * @description Optimize all functions 254 | * 255 | * @fulfil {} — All functions optimized 256 | * @reject {Error} Optimization error 257 | * 258 | * @return {Promise} 259 | * */ 260 | optimizeAllFunctions () { 261 | /** Get functions */ 262 | const allFunctions = this.serverless.service.getAllFunctions() 263 | 264 | /** Create prefix folder */ 265 | return this.createFolder().then(() => { 266 | /** Optimize each function */ 267 | return BbPromise.map(allFunctions, (functionName) => { 268 | return this.optimizeFunction(functionName) 269 | }) 270 | }) 271 | } 272 | 273 | /** 274 | * @description Optimize function 275 | * 276 | * @param {string} functionName - Function name 277 | * 278 | * @fulfil {} — Function optimized 279 | * @reject {Error} Optimization error 280 | * 281 | * @return {Promise} 282 | * */ 283 | optimizeFunction (functionName) { 284 | /** Function object variables */ 285 | const functionObject = this.serverless.service.getFunction(functionName) 286 | functionObject.package = functionObject.package || {} 287 | const functionFileIndex = functionObject.handler.lastIndexOf('.') 288 | const functionPath = functionObject.handler.substring(0, functionFileIndex) 289 | const functionFile = this.getPath(functionPath + '.js') 290 | const functionOptimizePath = this.optimize.options.prefix + '/' + functionObject.name 291 | const functionOptimizeHandler = functionOptimizePath + '/' + functionPath 292 | const functionBundle = this.getPath(functionOptimizeHandler + '.js') 293 | const functionDir = functionPath.substring(0, functionPath.lastIndexOf('/')) 294 | const functionModulesOptimizeDir = functionOptimizePath + '/' + functionDir + '/' + 'node_modules' 295 | 296 | /** Skip function */ 297 | if (functionObject.optimize === false) { 298 | return BbPromise.resolve('optimization skipped') 299 | } 300 | 301 | /** Log function to optimize */ 302 | this.serverless.cli.log('Optimize: ' + functionObject.name) 303 | 304 | /** Optimize object */ 305 | let optimize = { 306 | bundle: functionBundle, 307 | handlerOriginal: functionObject.handler, 308 | handlerOptimize: functionOptimizeHandler + functionObject.handler.substring(functionFileIndex), 309 | package: { 310 | exclude: ['**'], 311 | include: [functionOptimizePath + '/**'] 312 | } 313 | } 314 | 315 | /** Function optimize options */ 316 | let functionOptions = { 317 | exclude: this.optimize.options.exclude, 318 | external: this.optimize.options.external, 319 | externalPaths: Object.assign({}, this.optimize.options.externalPaths), 320 | extensions: this.optimize.options.extensions, 321 | global: this.optimize.options.global, 322 | includePaths: this.optimize.options.includePaths, 323 | ignore: this.optimize.options.ignore, 324 | minify: this.optimize.options.minify, 325 | plugins: this.optimize.options.plugins, 326 | presets: this.optimize.options.presets 327 | } 328 | 329 | if (functionObject.optimize) { 330 | /** Exclude */ 331 | if (Array.isArray(functionObject.optimize.exclude)) { 332 | functionOptions.exclude = optimize.exclude = functionObject.optimize.exclude 333 | } 334 | 335 | /** External */ 336 | if (Array.isArray(functionObject.optimize.external)) { 337 | functionOptions.external = optimize.external = functionObject.optimize.external 338 | } 339 | 340 | /** External paths */ 341 | if (typeof functionObject.optimize.externalPaths === 'object') { 342 | functionOptions.externalPaths = optimize.externalPaths = functionObject.optimize.externalPaths 343 | } 344 | 345 | /** Extensions */ 346 | if (Array.isArray(functionObject.optimize.extensions)) { 347 | functionOptions.extensions = optimize.extensions = functionObject.optimize.extensions 348 | } 349 | 350 | /** Global transforms */ 351 | if (typeof functionObject.optimize.global === 'boolean') { 352 | functionOptions.global = optimize.global = functionObject.optimize.global 353 | } 354 | 355 | /** Include paths */ 356 | if (Array.isArray(functionObject.optimize.includePaths)) { 357 | functionOptions.includePaths = optimize.includePaths = functionObject.optimize.includePaths 358 | } 359 | 360 | /** Ignore */ 361 | if (Array.isArray(functionObject.optimize.ignore)) { 362 | functionOptions.ignore = optimize.ignore = functionObject.optimize.ignore 363 | } 364 | 365 | /** Minify flag */ 366 | if (typeof functionObject.optimize.minify === 'boolean') { 367 | functionOptions.minify = optimize.minify = functionObject.optimize.minify 368 | } 369 | 370 | /** Babel plugins */ 371 | if (Array.isArray(functionObject.optimize.plugins)) { 372 | functionOptions.plugins = optimize.plugins = functionObject.optimize.plugins 373 | } 374 | 375 | /** Babel presets */ 376 | if (Array.isArray(functionObject.optimize.presets)) { 377 | functionOptions.presets = optimize.presets = functionObject.optimize.presets 378 | } 379 | } 380 | 381 | /** Browserify */ 382 | const bundler = browserify({ 383 | entries: [functionFile], 384 | extensions: functionOptions.extensions, 385 | standalone: 'handler', 386 | browserField: false, 387 | builtins: false, 388 | commondir: false, 389 | ignoreMissing: true, 390 | detectGlobals: true, 391 | insertGlobalVars: { // https://github.com/substack/node-browserify/issues/1472 392 | process: undefined, 393 | global: undefined, 394 | 'Buffer.isBuffer': undefined, 395 | Buffer: undefined 396 | } 397 | }) 398 | 399 | /** Browserify exclude */ 400 | functionOptions.exclude.forEach((exclusion) => { 401 | bundler.exclude(exclusion) 402 | }) 403 | 404 | /** Browserify external */ 405 | functionOptions.external.forEach((external) => { 406 | bundler.external(external) 407 | }) 408 | 409 | /** Browserify Babili minification preset */ 410 | if (functionOptions.minify) { 411 | functionOptions.presets = [[require.resolve('babel-preset-minify'), { 412 | builtIns: false, 413 | mangle: false 414 | }]].concat(functionOptions.presets) 415 | } 416 | 417 | /** Browserify babelify transform */ 418 | bundler.transform(babelify, { 419 | comments: false, 420 | global: functionOptions.global, 421 | ignore: functionOptions.ignore, 422 | plugins: functionOptions.plugins, 423 | presets: functionOptions.presets 424 | }) 425 | 426 | /** Generate bundle */ 427 | return new Promise((resolve, reject) => { 428 | bundler.bundle((error, buff) => { 429 | /** Bundle error */ 430 | if (error) { 431 | return reject(error) 432 | } 433 | 434 | /** Write bundle */ 435 | resolve(fs.outputFileAsync(functionBundle, buff.toString())) 436 | }) 437 | }).then(() => { 438 | /** Copy includePaths files to prefix folder */ 439 | if (functionOptions.includePaths.length) { 440 | return BbPromise.map(functionOptions.includePaths, (includePath) => { 441 | /** Remove relative dot */ 442 | if (includePath.substring(0, 2) === './') { 443 | includePath = includePath.substring(2) 444 | } 445 | 446 | /** Copy file */ 447 | return fs.copyAsync(this.getPath(includePath), this.getPath(functionOptimizePath + '/' + includePath)) 448 | }) 449 | } 450 | }).then(() => { 451 | /** Copy external files to prefix folder */ 452 | if (functionOptions.external.length) { 453 | return BbPromise.map(functionOptions.external, (external) => { 454 | /** Remove relative dot */ 455 | if (external.substring(0, 2) === './') { 456 | external = external.substring(2) 457 | } 458 | 459 | /** Copy file */ 460 | const externalEntry = resolveFrom(functionFile, external) || functionDir + '/' 461 | const externalDir = externalEntry.substring( 462 | this.serverless.config.servicePath.length, 463 | externalEntry.lastIndexOf('node_modules/' + external) 464 | ) + 'node_modules/' + external 465 | return fs.copyAsync( 466 | this.getPath(functionOptions.externalPaths[external] || externalDir), 467 | this.getPath(functionModulesOptimizeDir + '/' + external) 468 | ) 469 | }) 470 | } 471 | }).then(() => { 472 | /** Add optimized function to functions array */ 473 | this.optimize.functions.push(optimize) 474 | 475 | /** Update function object with optimize bundle */ 476 | functionObject.handler = optimize.handlerOptimize 477 | 478 | /** Update package */ 479 | functionObject.package = optimize.package 480 | }) 481 | } 482 | } 483 | 484 | /** Export optimize class */ 485 | module.exports = Optimize 486 | --------------------------------------------------------------------------------