├── .editorconfig ├── .eslintrc.json ├── .gitignore ├── .npmignore ├── .travis.yml ├── .vscode └── settings.json ├── CHANGELOG.md ├── LICENSE ├── README.md ├── code-example.js ├── code.png ├── index.js ├── lib ├── hooks.js └── index.js ├── mocks └── model.mock.js ├── package.json ├── test ├── .eslintrc └── hooks.js └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent 2 | # coding styles between different editors and IDEs 3 | # editorconfig.org 4 | 5 | root = true 6 | 7 | 8 | [*] 9 | 10 | # Change these settings to your own preference 11 | indent_style = space 12 | indent_size = 2 13 | 14 | # We recommend you to keep these unchanged 15 | end_of_line = lf 16 | charset = utf-8 17 | trim_trailing_whitespace = true 18 | insert_final_newline = true 19 | 20 | [*.md] 21 | trim_trailing_whitespace = false 22 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "parserOptions": { 3 | "ecmaVersion": 6, 4 | "sourceType": "script" 5 | }, 6 | "root": true, 7 | "env": { 8 | "node": true 9 | }, 10 | "extends": "airbnb-base", 11 | "plugins": [ 12 | "mocha" 13 | ], 14 | "rules": { 15 | // enable additional rules 16 | "indent": ["error", 2, {"SwitchCase": 1}], 17 | "no-use-before-define": ["error", {"functions": false}], 18 | "prefer-rest-params": "off", 19 | "prefer-spread": "off", 20 | "no-underscore-dangle": "off", 21 | "no-param-reassign": "off", 22 | "max-len": ["error", 120], 23 | "mocha/no-exclusive-tests": "off", 24 | "strict": ["error", "global"] 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # nyc test coverage 18 | .nyc_output 19 | 20 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 21 | .grunt 22 | 23 | # node-waf configuration 24 | .lock-wscript 25 | 26 | # Compiled binary addons (http://nodejs.org/api/addons.html) 27 | build/Release 28 | 29 | # Dependency directories 30 | node_modules 31 | jspm_packages 32 | 33 | # Optional npm cache directory 34 | .npm 35 | 36 | # Optional REPL history 37 | .node_repl_history 38 | 39 | .trash 40 | config.json 41 | .coveralls.yml -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .coveralls.yml 2 | jsconfig.json 3 | .travis.yml 4 | .jshintrc 5 | .eslintrc.json 6 | .babelrc 7 | test/ 8 | **/.trash 9 | .vscode/ -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "lts/*" 4 | - "10" 5 | 6 | branches: 7 | only: 8 | - master 9 | 10 | install: yarn install 11 | 12 | script: 13 | - npm test 14 | 15 | after_success: 16 | - npm run coveralls 17 | 18 | cache: 19 | yarn: true 20 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "editor.formatOnSave": false, 3 | "eslint.autoFixOnSave": true, 4 | "editor.minimap.enabled": false 5 | } 6 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. 4 | 5 | ### [3.1.1](https://github.com/sebelga/promised-hooks/compare/v3.1.0...v3.1.1) (2019-09-11) 6 | 7 | 8 | ### Bug Fixes 9 | 10 | * **Error handling:** Escalate unhandledpromiserejectionwarning in non promise methods ([#3](https://github.com/sebelga/promised-hooks/issues/3)) ([38842c7](https://github.com/sebelga/promised-hooks/commit/38842c7)) 11 | 12 | 13 | # [3.1.0](https://github.com/sebelga/promised-hooks/compare/v3.0.0...v3.1.0) (2018-04-07) 14 | 15 | 16 | ### Features 17 | 18 | * **post-hooks:** Allow dynamic callback scope for "post" hooks ([1b89228](https://github.com/sebelga/promised-hooks/commit/1b89228)) 19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Sébastien Loix 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 | # Middleware utility for your Promises 2 | 3 | [![NPM Version][npm-image]][npm-url] 4 | [![Build Status][travis-image]][travis-url] 5 | [![coveralls-image]][coveralls-url] 6 | [![Commitizen friendly][commitizen-image]][commitizen-url] 7 | 8 | Add **pre** and **post** middleware hooks to any function returning a Promise. 9 | Read [the post](https://medium.com/@sebelga/simplify-your-code-adding-hooks-to-your-promises-9e1483662dfa) on Medium for some example. 10 | 11 | 12 | 13 | ## Install 14 | 15 | ```sh 16 | yarn add promised-hooks 17 | # or 18 | npm install promised-hooks --save` 19 | ``` 20 | 21 | ## Warp your Class/function/object 22 | 23 | In order to add "pre" and "post" hooks to your promise you need to wrap their containing object (Class/function/object) 24 | 25 | ```js 26 | const hooks = require('promised-hooks'); 27 | 28 | // Class 29 | class User { 30 | // some method that returns a Promise 31 | someMethod() { ... } 32 | } 33 | 34 | // Function 35 | function User() { 36 | } 37 | User.prototype.someMethod = function someMethod() { ... } 38 | 39 | // Object 40 | const api = { 41 | save: function() { ... } 42 | }; 43 | 44 | // Wrap them to add "pre" and "post" hooks functionalities to their methods 45 | hooks.wrap(User); 46 | hooks.wrap(api); 47 | 48 | ``` 49 | 50 | ## Add middleware 51 | 52 | ### pre() method 53 | 54 | Adds a middelware to a promise that will be resolved or rejected **before** the method you are targetting. If the middelware rejects the Promise the original method is **not executed**. 55 | All the parameters sent to the original methods are available in the arguments of your middleware. 56 | 57 | 58 | ```js 59 | const hooks = require('promised-hooks'); 60 | 61 | class User { 62 | // instance methods 63 | save() { ... } 64 | 65 | // works also with static methods 66 | static otherMethod() { ... } 67 | } 68 | 69 | hooks.wrap(User); 70 | 71 | User.pre('save', doSometingBeforeSaving); 72 | 73 | function doSometingBeforeSaving() { 74 | // Access the arguments passed if needed 75 | const args = Array.prototype.slice.apply(arguments); 76 | 77 | // the scope (this) is the original Object wrapped 78 | 79 | // return a Promise 80 | return new Promise((resolve, reject) => { 81 | 82 | // ... do some async stuff 83 | 84 | // then resolve or reject 85 | resolve(); 86 | }); 87 | } 88 | 89 | ``` 90 | 91 | #### Override 92 | You can override the original arguments sent to the target method by resolving the middleware with an object containing an "__override" property. 93 | 94 | ```js 95 | User.pre('save', doSometingBeforeSaving); 96 | 97 | function doSometingBeforeSaving() { 98 | return new Promise((resolve, reject) => { 99 | // ... 100 | 101 | resolve({ __override: 123 }); // single argument 102 | // or 103 | resolve({ __override: [ 123, 'arg2' ] }); // multi arguments 104 | }); 105 | 106 | /** 107 | * With the above override, the User.save() method will 108 | * receive those arguments instead of the one originally provided 109 | */ 110 | } 111 | 112 | ``` 113 | 114 | ### post() method 115 | Adds a middelware to be executed **after** the method you are targetting has been **resolved**. If the post middleware fails and rejects the Promise, the original Promise still resolves and the "post" errors are added the response (see below). 116 | 117 | If you resolve your post middelware with an object containing an "__override" property (same as with "pre" hook), it **will override** the original response. 118 | 119 | ```js 120 | const hooks = require('promised-hooks'); 121 | 122 | class User { 123 | // instance methods 124 | save() { ... } 125 | 126 | // works also with static (prototype) methods 127 | static otherMethod() { ... } 128 | } 129 | 130 | hooks.wrap(User); 131 | 132 | // Several middleware can be added at once with an Array 133 | User.post('save', [postMiddleware1, postMiddleware2]); 134 | 135 | function postMiddleware1(data) { 136 | // data is the resolved value from the original promised method 137 | // or previous "post" hooks with an __override property 138 | 139 | // do some async stuff ... 140 | 141 | // and resolve a Promise 142 | return Promise.resolve(); 143 | 144 | // If needed, you can override the response 145 | return Promise.resolve({ __override: 'my new response' }); 146 | } 147 | 148 | function postMiddleware2(data) { 149 | return new Promise((resolve, reject) => { 150 | // call async service... 151 | myApi.doSomething((err) => { 152 | if (err) { 153 | /* if the async fails you would then reject your promise. 154 | * The original response is *not* overriden 155 | * (see errors in "post" hook below) 156 | */ 157 | return reject(err); 158 | } 159 | 160 | // no error 161 | return resolve(); 162 | }); 163 | }); 164 | } 165 | 166 | ``` 167 | 168 | #### Errors in "post" hooks 169 | 170 | If one of the "post" hook fails and rejects its Promise then a **Symbol** is added on the response containing an Array with the errors. 171 | If the response is a primitive('string', 'number', boolean) then it is first **converted to an object** with a "result" property. 172 | 173 | ```js 174 | // For example, if the response returned by the targeted method is: 175 | 'my response' 176 | 177 | // in case there are "post" hooks error it will be converted to: 178 | { 179 | result: 'my response' 180 | } 181 | ``` 182 | 183 | You access the errors Array with the `hooks.ERRORS` Symbol. 184 | 185 | ```js 186 | const hooks = require('promised-hooks'); 187 | 188 | class User { 189 | save() { ... } 190 | } 191 | 192 | hooks.wrap(User); 193 | 194 | User.post('save', postMiddleware); 195 | 196 | function postMiddleware() { 197 | return new Promise((resolve, reject) => { 198 | // call async service... 199 | myApi.doSomething((err) => { 200 | if (err) { 201 | return reject(err); 202 | } 203 | return resolve(); 204 | }); 205 | }); 206 | } 207 | 208 | // Somewhere else in your code 209 | 210 | const user = new User(); 211 | 212 | user.save().then((response) => { 213 | // The save occurred without issue but 214 | // let's check for any "post" hook error 215 | if (response[hooks.ERRORS]) { 216 | // deal with errors 217 | } 218 | ... 219 | }); 220 | 221 | ``` 222 | 223 | ## Scope (this) 224 | 225 | The scope (this) of the middelware is set by default on the "wrapped" object. If you need to change it at runtime, you can declare a `__scopeHook` function 226 | on the object that will be called for each hook. This method, when called, receives 3 parameters: 227 | 228 | - the target method 229 | - the arguments (array of arguments sent to the targeted method) 230 | - the hook method name 231 | 232 | ```js 233 | class User { 234 | save() {} 235 | 236 | __scopeHook(targetMethod, args, hookMethod) { 237 | console.log(targetMethod); // "save" 238 | console.log(args); // [123] 239 | console.log(hookMethod); // "hashPassword" 240 | 241 | // You can here return any object for the scope 242 | 243 | if (hookMethod === 'hashPassword') { 244 | return { x: 'abc' }; // set the scope 245 | } 246 | 247 | // If you return "undefined" the scope is not changed 248 | return undefined; 249 | } 250 | } 251 | hooks.wrap(User); 252 | 253 | User.pre('save', function hashPassword() { 254 | // Check the scope 255 | console.log(this); // { x: 'abc' } 256 | }); 257 | 258 | // ... 259 | 260 | const user = new User(); 261 | user.save(123).then( ... ); 262 | 263 | ``` 264 | 265 | ## Example 266 | 267 | ```js 268 | const hooks = require('promised-hooks'); 269 | 270 | class User { 271 | save(userData) { 272 | return new Promise((resolve, reject) { 273 | // ...your logic to save a user then 274 | resolve(response); 275 | }); 276 | } 277 | 278 | // works also on static methods 279 | static otherMethod() { ... } 280 | } 281 | 282 | // Wrap the class to add hooks functionalities 283 | hooks.wrap(User); 284 | 285 | // Hash a user password before saving 286 | User.pre('save', (userData) => { 287 | /** 288 | * INFO: If you need to access the User class from this middelware 289 | * you can not use an arrow function as the scope is lost. 290 | * Use a normal function and *this* will be your Class 291 | */ 292 | 293 | if (typeof userData.password !== 'undefined') { 294 | userData.password = hashString(userData.password); 295 | } 296 | 297 | return Promise.resolve(); 298 | 299 | // ---------- 300 | 301 | function hashString(str) { 302 | // ... logic to hash a string 303 | return hashedString; 304 | } 305 | }); 306 | 307 | // Let's email our newly created user 308 | User.post('save', (response) => { 309 | // response is what the target method returns 310 | const email = response.email; 311 | 312 | // Return a method that returns a Promise 313 | return yourMailService.sendEmail(email); 314 | }); 315 | 316 | // Create new user 317 | const user = new User(); 318 | 319 | // Save user 320 | user.save({ name: 'John', password: 'snow' }) 321 | .then((response) => { 322 | // Save success 323 | 324 | // Check if there are any errors in our "post" middleware 325 | if (response.[hooks.ERRORS]) { 326 | // deal with Post hook error 327 | } 328 | 329 | }, (err) => { 330 | // Save failed 331 | }); 332 | 333 | ``` 334 | 335 | ## Credits 336 | I have been inspired by the [hooks-fixed](https://github.com/vkarpov15/hooks-fixed) library from @vkarpov15 to write this small utility. 337 | 338 | [npm-image]: https://img.shields.io/npm/v/promised-hooks.svg?style=flat-square 339 | [npm-url]: https://npmjs.org/package/promised-hooks 340 | [travis-image]: https://img.shields.io/travis/sebelga/promised-hooks/master.svg?style=flat-square 341 | [travis-url]: https://travis-ci.org/sebelga/promised-hooks 342 | [coveralls-image]: https://img.shields.io/coveralls/github/sebelga/promised-hooks.svg 343 | [coveralls-url]: https://coveralls.io/github/sebelga/promised-hooks?branch=master 344 | [commitizen-image]: https://img.shields.io/badge/commitizen-friendly-brightgreen.svg 345 | [commitizen-url]: http://commitizen.github.io/cz-cli/ 346 | -------------------------------------------------------------------------------- /code-example.js: -------------------------------------------------------------------------------- 1 | // ************ Your package ************ 2 | const { hooks } = require('promised-hooks'); 3 | 4 | const api = { 5 | doSomethingGreat() { 6 | return Promise.resolve({ data: 123 }); 7 | }, 8 | }; 9 | 10 | hooks.wrap(api); 11 | module.exports = api; 12 | 13 | // *********** CONSUMERS of your package ******** 14 | const { AmazingService } = require('your-package'); 15 | 16 | // Add a middleware to be executed *before* doSomethingGreat() 17 | // to authorize the method call 18 | AmazingService.pre('doSomethingGreat', function() { 19 | return someService.checkIfDoSomethingGreatAllowed(); 20 | }); 21 | 22 | // ... 23 | 24 | // Anywhere in the Application, the hook will authorize the method call 25 | async function someHandler() { 26 | let res; 27 | try { 28 | res = await AmazingService.doSomethingGreat(); 29 | } catch(e) { 30 | // not allowed 31 | } 32 | } -------------------------------------------------------------------------------- /code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sebelga/promised-hooks/da20b9f14c1aefc101675ffdb747d15de69b4453/code.png -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 2 | 'use strict'; 3 | 4 | module.exports = require('./lib/'); -------------------------------------------------------------------------------- /lib/hooks.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-multi-assign */ 2 | 3 | 'use strict'; 4 | 5 | const is = require('is'); 6 | const arrify = require('arrify'); 7 | 8 | const ERR_KEY = Symbol('errors'); 9 | 10 | class HooksPromise { 11 | static wrap(scope) { 12 | scope.pre = this.pre; 13 | scope.post = this.post; 14 | scope.hook = this.hook; 15 | scope.__setupHooks = this.__setupHooks; 16 | } 17 | 18 | static hook(name, originalMethod) { 19 | const proto = this; 20 | 21 | const presHooks = (proto.__pres = proto.__pres || {}); 22 | const postsHooks = (proto.__posts = proto.__posts || {}); 23 | 24 | presHooks[name] = presHooks[name] || []; 25 | postsHooks[name] = postsHooks[name] || []; 26 | 27 | /** 28 | * Wrap the original "target" method with hooks 29 | */ 30 | proto[name] = function wrapper() { 31 | const self = this; 32 | 33 | /** 34 | * save the arguments passed to the target method 35 | */ 36 | let passedArgs = Array.prototype.slice.apply(arguments); 37 | 38 | /** 39 | * Array or pre hooks 40 | */ 41 | const pres = this.__pres[name]; 42 | 43 | /** 44 | * Array of post hooks 45 | */ 46 | const posts = this.__posts[name]; 47 | 48 | /** 49 | * Total pre hooks 50 | */ 51 | const totalPres = pres.length; 52 | 53 | /** 54 | * Total posts hooks 55 | */ 56 | const totalPost = posts.length; 57 | 58 | /** 59 | * Scope for the hooks 60 | */ 61 | let scope = self; 62 | 63 | /** 64 | * Current hook being processed 65 | */ 66 | let currentPre = -1; 67 | 68 | let resolveFn; 69 | let rejectFn; 70 | 71 | if (self.preHooksEnabled === false) { 72 | return done.apply(self, passedArgs); 73 | } 74 | 75 | return new Promise((resolve, reject) => { 76 | resolveFn = resolve; 77 | rejectFn = reject; 78 | 79 | /** 80 | * Error Handler 81 | */ 82 | const handleError = function handleError(err) { 83 | reject(err); 84 | }; 85 | 86 | /** 87 | * "pre" hook handler 88 | */ 89 | const nextPreHook = function nextPreHook() { 90 | /** 91 | * read the arguments from previous "hook" response 92 | */ 93 | const args = Array.prototype.slice.apply(arguments); 94 | 95 | /** 96 | * Check if the arguments contains an "__override" property 97 | * that would override the arguments sent originally to the 98 | * target method 99 | */ 100 | if ( 101 | is.object(args[0]) 102 | && {}.hasOwnProperty.call(args[0], '__override') 103 | ) { 104 | passedArgs = arrify(args[0].__override); 105 | } 106 | 107 | /** 108 | * Reference to current pre hook 109 | */ 110 | let currentHook; 111 | 112 | if (currentPre + 1 < totalPres) { 113 | currentPre += 1; 114 | currentHook = pres[currentPre]; 115 | const hookMethod = currentHook.displayName || currentHook.name; 116 | /** 117 | * If there is a __scopeHook function on the object 118 | * we call it to get the scope wanted for the hook 119 | */ 120 | scope = getScope(self, name, passedArgs, hookMethod, 'pre'); 121 | 122 | /** 123 | * Execute the hook and recursively call the next one 124 | */ 125 | return currentHook 126 | .apply(scope, passedArgs) 127 | .then(nextPreHook, handleError); 128 | } 129 | 130 | /** 131 | * We are done with "pre" hooks 132 | */ 133 | return done.apply(scope, passedArgs); 134 | }; 135 | 136 | return nextPreHook.apply(this, passedArgs); 137 | }); 138 | 139 | function done() { 140 | /** 141 | * In case we "skipped" the "pre" hooks we define our resolve function 142 | */ 143 | resolveFn = resolveFn 144 | || function resolve(data) { 145 | return Promise.resolve(data); 146 | }; 147 | 148 | let response; 149 | let currentPost = -1; 150 | 151 | /** 152 | * "post" hook handler 153 | * @param {*} res the response coming from the target method 154 | * or the reponse from any "post" hook 155 | */ 156 | const nextPostHook = function nextPostHook(res) { 157 | response = checkResponse(res, response); 158 | 159 | if (currentPost + 1 < totalPost && self.__hooksEnabled !== false) { 160 | currentPost += 1; 161 | 162 | // Reference to current post hook 163 | const currPost = posts[currentPost]; 164 | const hookMethod = currPost.displayName || currPost.name; 165 | scope = getScope(self, name, res, hookMethod, 'post'); 166 | 167 | // Recursively call all the "post" hooks 168 | return currPost 169 | .call(scope, response) 170 | .then(nextPostHook, postHookErrorHandler); 171 | } 172 | 173 | /** 174 | * All "post" hook process done. 175 | * If the response has an "__override" property it will be our response 176 | */ 177 | if ( 178 | is.object(response) 179 | && {}.hasOwnProperty.call(response, '__override') 180 | ) { 181 | response = response.__override; 182 | } 183 | 184 | return resolveFn(response); 185 | }; 186 | 187 | /** 188 | * "post" hook Error handling 189 | * @param {*} err the error returned by latest "post" hook 190 | */ 191 | function postHookErrorHandler(err) { 192 | /** 193 | * Helper to add an error to an Object "errors" Symbol 194 | */ 195 | const addError = (obj) => { 196 | obj[ERR_KEY] = obj[ERR_KEY] || []; 197 | obj[ERR_KEY].push(err); 198 | return obj; 199 | }; 200 | 201 | /** 202 | * For response type that are *not* objects (string, integers, functions...) 203 | * we convert the response to an object with a "result" property and set it as "override" 204 | */ 205 | if (typeof response !== 'object') { 206 | response = { 207 | __override: { 208 | result: response, 209 | }, 210 | }; 211 | } 212 | 213 | if ({}.hasOwnProperty.call(response, '__override')) { 214 | response.__override = addError(response.__override); 215 | } else { 216 | response = addError(response); 217 | } 218 | 219 | return nextPostHook(response); 220 | } 221 | 222 | /** 223 | * Get the target method response 224 | */ 225 | let responsePromised; 226 | try { 227 | responsePromised = originalMethod.apply(self, passedArgs); 228 | } catch (e) { 229 | responsePromised = Promise.reject(e); 230 | } 231 | 232 | /** 233 | * Convert it to a Promise if it is not to be able to chain it 234 | */ 235 | if (responsePromised.constructor.name !== 'Promise') { 236 | responsePromised = Promise.resolve(responsePromised); 237 | } 238 | 239 | /** 240 | * If there are post hooks, we chain the response with the hook 241 | */ 242 | if (totalPost > 0) { 243 | return responsePromised.then(nextPostHook, rejectFn); 244 | } 245 | 246 | // no "post" hook, we're done! 247 | return responsePromised.then(resolveFn, rejectFn); 248 | } 249 | 250 | function checkResponse(currentResponse, previousResponse) { 251 | if (!previousResponse) { 252 | return currentResponse; 253 | } 254 | 255 | if ( 256 | is.object(currentResponse) 257 | && {}.hasOwnProperty.call(currentResponse, '__override') 258 | ) { 259 | const isObject = is.object(previousResponse); 260 | const hasOverride = isObject && {}.hasOwnProperty.call(previousResponse, '__override'); 261 | const hasErrorsPostHooks = hasOverride 262 | && typeof previousResponse.__override[ERR_KEY] !== 'undefined'; 263 | 264 | if (isObject && hasOverride && hasErrorsPostHooks) { 265 | if (typeof currentResponse.__override !== 'object') { 266 | currentResponse.__override = { 267 | result: currentResponse.__override, 268 | }; 269 | } 270 | 271 | /** 272 | * We add the previous "post" hooks error to the 273 | * current response 274 | */ 275 | currentResponse.__override[ERR_KEY] = previousResponse.__override[ERR_KEY]; 276 | } 277 | return currentResponse; 278 | } 279 | 280 | return previousResponse; 281 | } 282 | }; 283 | 284 | proto[name].__numAsyncPres = 0; 285 | proto[name].__hooked = true; 286 | 287 | return this; 288 | } 289 | 290 | static pre(name, fn) { 291 | const proto = this; 292 | 293 | if (is.array(fn)) { 294 | return fn.forEach((middleware) => { 295 | proto.pre.call(proto, name, middleware); 296 | }); 297 | } 298 | 299 | const pres = (proto.__pres = proto.__pres || {}); 300 | 301 | proto.__setupHooks(proto, name); 302 | 303 | pres[name].push(fn); 304 | 305 | return proto; 306 | } 307 | 308 | static post(name, fn) { 309 | const proto = this; 310 | 311 | if (is.array(fn)) { 312 | return fn.forEach((middleware) => { 313 | proto.post.call(proto, name, middleware); 314 | }); 315 | } 316 | 317 | const posts = (proto.__posts = proto.__posts || {}); 318 | 319 | proto.__setupHooks(proto, name); 320 | 321 | posts[name].push(fn); 322 | 323 | return proto; 324 | } 325 | 326 | static __setupHooks(proto, methodName) { 327 | if (proto[methodName] && proto[methodName].__hooked !== true) { 328 | this.hook(methodName, proto[methodName]); 329 | } 330 | } 331 | } 332 | 333 | HooksPromise.ERRORS = ERR_KEY; 334 | 335 | // Helpers 336 | /** 337 | * Set the scope (this) for the hook callback at runtime. 338 | * The wrapped object/Class need to have a __scopeHook method declared that will return the scope 339 | * wanted for each hook. 340 | * 341 | * @param {*} self Scope of the wrapped object 342 | * @param {*} hookName Name of the hook (the target method on the object/class) 343 | * @param {*} args The arguments passed to the target method 344 | * @param {*} hookMethod The name of the callback function (if not an anonymous function of course) 345 | * @param {*} hookType The hook type: "pre" or "post" 346 | */ 347 | function getScope(self, hookName, args, hookMethod, hookType) { 348 | return self.__scopeHook && typeof self.__scopeHook === 'function' 349 | ? self.__scopeHook(hookName, args, hookMethod, hookType) 350 | : self; 351 | } 352 | 353 | module.exports = HooksPromise; 354 | -------------------------------------------------------------------------------- /lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = require('./hooks'); 4 | -------------------------------------------------------------------------------- /mocks/model.mock.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | getModel() { 5 | return { 6 | save: () => Promise.resolve('1234'), 7 | delete: () => Promise.resolve(), 8 | savePromise: () => new Promise((resolve) => { 9 | resolve('1234'); 10 | }), 11 | saveReturnObject: () => Promise.resolve({ a: 123 }), 12 | saveThrowError: () => { 13 | throw new Error('Thrown Error'); 14 | }, 15 | }; 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "promised-hooks", 3 | "version": "3.1.1", 4 | "description": "Middleware (hooks) utility for your Promises", 5 | "main": "index.js", 6 | "scripts": { 7 | "commit": "git-cz", 8 | "lint": "./node_modules/eslint/bin/eslint.js ./lib ./test", 9 | "pretest": "npm run lint", 10 | "test": "nyc mocha test --recursive --colors", 11 | "coverage": "rm -rf ./coverage && nyc report --reporter=html", 12 | "coveralls": "nyc report --reporter=text-lcov | coveralls", 13 | "release": "standard-version" 14 | }, 15 | "engines": { 16 | "node": ">=10.0" 17 | }, 18 | "keywords": [ 19 | "hooks", 20 | "promise", 21 | "middleware" 22 | ], 23 | "repository": { 24 | "type": "git", 25 | "url": "https://github.com/sebelga/promised-hooks.git" 26 | }, 27 | "author": "Sébastien Loix", 28 | "license": "MIT", 29 | "config": { 30 | "commitizen": { 31 | "path": "./node_modules/cz-conventional-changelog" 32 | } 33 | }, 34 | "dependencies": { 35 | "arrify": "^2.0.1", 36 | "is": "^3.3.0" 37 | }, 38 | "devDependencies": { 39 | "chai": "^4.2.0", 40 | "commitizen": "^4.0.3", 41 | "coveralls": "^3.0.6", 42 | "cz-conventional-changelog": "^3.0.2", 43 | "eslint": "^6.3.0", 44 | "eslint-config-airbnb-base": "^14.0.0", 45 | "eslint-plugin-import": "^2.18.2", 46 | "eslint-plugin-mocha": "^6.1.0", 47 | "mocha": "^6.2.0", 48 | "mocha-lcov-reporter": "^1.3.0", 49 | "nyc": "^14.1.1", 50 | "sinon": "^7.4.2", 51 | "standard-version": "^7.0.0" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "node": true, 4 | "mocha": true 5 | } 6 | } -------------------------------------------------------------------------------- /test/hooks.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const chai = require('chai'); 4 | const sinon = require('sinon'); 5 | const hooks = require('../index'); 6 | const mocks = require('../mocks/model.mock'); 7 | 8 | const { expect } = chai; 9 | const { getModel } = mocks; 10 | 11 | describe('hooks-promise', () => { 12 | let model; 13 | 14 | describe('pre()', () => { 15 | let spyPre1; 16 | let spyPre2; 17 | let spyOriginalMethod; 18 | const error = { 19 | code: 500, 20 | }; 21 | 22 | const spies = { 23 | preHook1() { 24 | this.newValue = 123; 25 | return Promise.resolve(); 26 | }, 27 | preHook2() { 28 | return Promise.resolve(); 29 | }, 30 | }; 31 | 32 | beforeEach(() => { 33 | model = getModel(); 34 | hooks.wrap(model); 35 | 36 | spyPre1 = sinon.spy(spies, 'preHook1'); 37 | spyPre2 = sinon.spy(spies, 'preHook2'); 38 | spyOriginalMethod = sinon.spy(model, 'save'); 39 | 40 | model.pre('save', spies.preHook1); 41 | model.pre('save', spies.preHook2); 42 | }); 43 | 44 | afterEach(() => { 45 | spyPre1.restore(); 46 | spyPre2.restore(); 47 | spyOriginalMethod.restore(); 48 | }); 49 | 50 | it('should execute pre hooks in correct order', () => model.save().then(() => { 51 | sinon.assert.callOrder(spyPre1, spyPre2, spyOriginalMethod); 52 | })); 53 | 54 | it('should allow an Array of middleware', () => { 55 | model = getModel(); 56 | hooks.wrap(model); 57 | spyOriginalMethod = sinon.spy(model, 'save'); 58 | model.pre('save', [spies.preHook1, spies.preHook2]); 59 | 60 | return model.save().then(() => { 61 | sinon.assert.callOrder(spyPre1, spyPre2, spyOriginalMethod); 62 | }); 63 | }); 64 | 65 | it('should pass the correct scope to the hook', () => model.save().then(() => { 66 | expect(model.newValue).equal(123); 67 | })); 68 | 69 | it('should catch errors in hooks and not call the original method', () => { 70 | model.pre('save', () => Promise.reject(error)); 71 | 72 | return model.save().catch((err) => { 73 | expect(err).equal(error); 74 | expect(spyOriginalMethod.called).equal(false); 75 | }); 76 | }); 77 | 78 | it('should pass parameter to originalMethod', () => { 79 | const args = ['abc', 123]; 80 | return model.save('abc', 123).then(() => { 81 | expect(spyOriginalMethod.getCall(0).args).deep.equal(args); 82 | }); 83 | }); 84 | 85 | it('preHook resolve should **not** override original parameter passed', () => { 86 | model.pre('save', () => Promise.resolve({ abc: 123 })); 87 | return model.save({ abc: 777 }).then((response) => { 88 | expect(response).equal('1234'); 89 | expect(spyOriginalMethod.getCall(0).args[0].abc).equal(777); 90 | }); 91 | }); 92 | 93 | it('preHook resolve should override original parameter passed (multi)', () => { 94 | model.pre('save', () => Promise.resolve({ __override: ['newParam1', 'newParam2'] })); 95 | return model.save(123, 'abc').then(() => { 96 | expect(spyOriginalMethod.getCall(0).args).deep.equal(['newParam1', 'newParam2']); 97 | }); 98 | }); 99 | 100 | it('preHook resolve should override original parameter passed (single)', () => { 101 | model.pre('save', () => Promise.resolve({ __override: 'newParam1' })); 102 | return model.save(123, 'abc').then(() => { 103 | expect(spyOriginalMethod.getCall(0).args).deep.equal(['newParam1']); 104 | }); 105 | }); 106 | 107 | it('should work with methods from an object', () => { 108 | const myObject = { 109 | save() { return Promise.resolve(); }, 110 | test1() { }, 111 | }; 112 | 113 | hooks.wrap(myObject); 114 | 115 | spyOriginalMethod = sinon.spy(myObject, 'save'); 116 | myObject.pre('save', spies.preHook1); 117 | myObject.pre('save', spies.preHook2); 118 | 119 | return myObject.save().then(() => { 120 | sinon.assert.callOrder(spyPre1, spyPre2, spyOriginalMethod); 121 | }); 122 | }); 123 | 124 | it('bypass middleware(s)', () => { 125 | model.preHooksEnabled = false; 126 | return model.save('abc', 123).then(() => { 127 | expect(spyPre1.called).equal(false); 128 | }); 129 | }); 130 | 131 | it('override the middleware scope and pass the hook function name', () => { 132 | const scopePre = { x: 1 }; 133 | const scopePost = { y: 2 }; 134 | 135 | let check1; 136 | let check2; 137 | let scope1; 138 | let scope2; 139 | 140 | model = getModel(); 141 | model.__scopeHook = function setScope(hookName, args, hookMethod, hookType) { 142 | if (hookName === 'save') { 143 | check1 = hookMethod; 144 | } else if (hookName === 'delete' && hookType === 'pre') { 145 | check2 = hookMethod; 146 | } 147 | 148 | return hookType === 'pre' ? scopePre : scopePost; 149 | }; 150 | hooks.wrap(model); 151 | 152 | function myPreHookMethod() { 153 | scope1 = this; 154 | return Promise.resolve(); 155 | } 156 | 157 | function myPostHookMethod() { 158 | scope2 = this; 159 | return Promise.resolve(); 160 | } 161 | 162 | const myPreHookMethod2 = () => Promise.resolve(); 163 | 164 | // We make sure that the hookMethod passed to __scopeHook 165 | // works with both functions and arrow functions 166 | model.pre('save', myPreHookMethod); 167 | model.pre('delete', myPreHookMethod2); 168 | model.post('delete', myPostHookMethod); 169 | 170 | return model.save() 171 | .then(() => model.delete()) 172 | .then(() => { 173 | expect(scope1).equal(scopePre); 174 | expect(scope2).equal(scopePost); 175 | expect(check1).equal('myPreHookMethod'); 176 | expect(check2).equal('myPreHookMethod2'); 177 | }); 178 | }); 179 | 180 | it('should catch and reject thrown errors when the original method is not a promise', () => { 181 | model.pre('saveThrowError', spies.preHook2); 182 | return model.saveThrowError() 183 | .catch((err) => { 184 | expect(err.message).equal('Thrown Error'); 185 | }); 186 | }); 187 | }); 188 | 189 | describe('post()', () => { 190 | let spyPost1; 191 | let spyPost2; 192 | let spyOriginalMethod; 193 | 194 | const spies = { 195 | postHook1(result) { 196 | this.newValue = 456; 197 | return Promise.resolve(result); 198 | }, 199 | postHook2(result) { 200 | return Promise.resolve(result); 201 | }, 202 | }; 203 | 204 | beforeEach(() => { 205 | model = getModel(); 206 | hooks.wrap(model); 207 | 208 | spyPost1 = sinon.spy(spies, 'postHook1'); 209 | spyPost2 = sinon.spy(spies, 'postHook2'); 210 | spyOriginalMethod = sinon.spy(model, 'save'); 211 | 212 | model.post('save', spies.postHook1); 213 | model.post('save', spies.postHook2); 214 | }); 215 | 216 | afterEach(() => { 217 | spyPost1.restore(); 218 | spyPost2.restore(); 219 | spyOriginalMethod.restore(); 220 | }); 221 | 222 | it('should execute posts hooks in correct order', () => model.save().then(() => { 223 | sinon.assert.callOrder(spyOriginalMethod, spyPost1, spyPost2); 224 | })); 225 | 226 | it('should allow an Array of middleware', () => { 227 | model = getModel(); 228 | hooks.wrap(model); 229 | spyOriginalMethod = sinon.spy(model, 'save'); 230 | model.post('save', [spyPost1, spyPost2]); 231 | 232 | return model.save().then(() => { 233 | sinon.assert.callOrder(spyOriginalMethod, spyPost1, spyPost2); 234 | }); 235 | }); 236 | 237 | it('should pass the correct scope to the hook', () => model.save().then(() => { 238 | expect(model.newValue).equal(456); 239 | })); 240 | 241 | it('should pass resolve value from originalMethod response', () => ( 242 | model.save().then((response) => { 243 | expect(response).equal('1234'); 244 | }) 245 | )); 246 | 247 | it('should **not** override original resolve in post hooks', () => { 248 | model.post('savePromise', () => Promise.resolve('5678')); 249 | 250 | return model.savePromise().then((response) => { 251 | expect(response).equal('1234'); 252 | }); 253 | }); 254 | 255 | it('should override original resolve in post hooks', () => { 256 | model.post('save', () => Promise.resolve({ __override: '5678' })); 257 | 258 | return model.save().then((response) => { 259 | expect(response).equal('5678'); 260 | }); 261 | }); 262 | 263 | it('should not reject promise on error (error in "errorsPostHook")', () => { 264 | const error = { code: 500 }; 265 | model.post('save', () => Promise.reject(error)); 266 | 267 | return model.save().then((response) => { 268 | expect(response).deep.equal({ 269 | result: '1234', 270 | }); 271 | expect(response[hooks.ERRORS][0]).equal(error); 272 | }); 273 | }); 274 | 275 | it('should not reject promise on error (error in Symbol)', () => { 276 | const error = { code: 500 }; 277 | model.post('saveReturnObject', () => Promise.reject(error)); 278 | 279 | return model.saveReturnObject().then((response) => { 280 | expect(response.a).equal(123); 281 | expect(response[hooks.ERRORS][0]).equal(error); 282 | }); 283 | }); 284 | 285 | it('should override response (1)', () => { 286 | const error = { code: 500 }; 287 | model = getModel(); 288 | hooks.wrap(model); 289 | 290 | model.post('save', () => Promise.reject(error)); 291 | model.post('save', () => Promise.resolve({ __override: 'new response' })); 292 | 293 | return model.save().then((response) => { 294 | expect(response).deep.equal({ 295 | result: 'new response', 296 | }); 297 | expect(response[hooks.ERRORS][0]).equal(error); 298 | }); 299 | }); 300 | 301 | it('should override response (2)', () => { 302 | model = getModel(); 303 | hooks.wrap(model); 304 | const err = new Error(); 305 | err.code = 501; 306 | 307 | model.post('save', () => Promise.resolve({ __override: { abc: 123 } })); 308 | model.post('save', () => Promise.reject(err)); 309 | model.post('save', () => Promise.resolve({ __override: { abc: 456 } })); 310 | 311 | return model.save().then((response) => { 312 | expect(response.abc).equal(456); 313 | expect(response[hooks.ERRORS][0].code).equal(501); 314 | }); 315 | }); 316 | 317 | it('should work with methods from an object', () => { 318 | const myObject = { 319 | save() { return Promise.resolve(); }, 320 | test1() { }, 321 | }; 322 | 323 | hooks.wrap(myObject); 324 | 325 | spyOriginalMethod = sinon.spy(myObject, 'save'); 326 | myObject.post('save', spies.postHook1); 327 | myObject.post('save', spies.postHook2); 328 | 329 | return myObject.save().then(() => { 330 | sinon.assert.callOrder(spyOriginalMethod, spyPost1, spyPost2); 331 | }); 332 | }); 333 | 334 | it('should convert original target method response to a Promise', () => { 335 | model = getModel(); 336 | const spy = { original: () => true }; 337 | const spyOriginal = sinon.spy(spy, 'original'); 338 | sinon.stub(model, 'save').returns(spy.original()); 339 | 340 | hooks.wrap(model); 341 | model.post('save', [spyPost1, spyPost2]); 342 | 343 | return model.save().then(() => { 344 | sinon.assert.callOrder(spyOriginal, spyPost1, spyPost2); 345 | }); 346 | }); 347 | }); 348 | }); 349 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": 6 | version "7.5.5" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 8 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/generator@^7.4.0", "@babel/generator@^7.6.0": 13 | version "7.6.0" 14 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.0.tgz#e2c21efbfd3293ad819a2359b448f002bfdfda56" 15 | integrity sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA== 16 | dependencies: 17 | "@babel/types" "^7.6.0" 18 | jsesc "^2.5.1" 19 | lodash "^4.17.13" 20 | source-map "^0.5.0" 21 | trim-right "^1.0.1" 22 | 23 | "@babel/helper-function-name@^7.1.0": 24 | version "7.1.0" 25 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" 26 | integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== 27 | dependencies: 28 | "@babel/helper-get-function-arity" "^7.0.0" 29 | "@babel/template" "^7.1.0" 30 | "@babel/types" "^7.0.0" 31 | 32 | "@babel/helper-get-function-arity@^7.0.0": 33 | version "7.0.0" 34 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" 35 | integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== 36 | dependencies: 37 | "@babel/types" "^7.0.0" 38 | 39 | "@babel/helper-split-export-declaration@^7.4.4": 40 | version "7.4.4" 41 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" 42 | integrity sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q== 43 | dependencies: 44 | "@babel/types" "^7.4.4" 45 | 46 | "@babel/highlight@^7.0.0": 47 | version "7.5.0" 48 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" 49 | integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== 50 | dependencies: 51 | chalk "^2.0.0" 52 | esutils "^2.0.2" 53 | js-tokens "^4.0.0" 54 | 55 | "@babel/parser@^7.4.3": 56 | version "7.5.5" 57 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" 58 | integrity sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g== 59 | 60 | "@babel/parser@^7.6.0": 61 | version "7.6.0" 62 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.0.tgz#3e05d0647432a8326cb28d0de03895ae5a57f39b" 63 | integrity sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ== 64 | 65 | "@babel/template@^7.1.0", "@babel/template@^7.4.0": 66 | version "7.6.0" 67 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6" 68 | integrity sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ== 69 | dependencies: 70 | "@babel/code-frame" "^7.0.0" 71 | "@babel/parser" "^7.6.0" 72 | "@babel/types" "^7.6.0" 73 | 74 | "@babel/traverse@^7.4.3": 75 | version "7.6.0" 76 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.0.tgz#389391d510f79be7ce2ddd6717be66d3fed4b516" 77 | integrity sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ== 78 | dependencies: 79 | "@babel/code-frame" "^7.5.5" 80 | "@babel/generator" "^7.6.0" 81 | "@babel/helper-function-name" "^7.1.0" 82 | "@babel/helper-split-export-declaration" "^7.4.4" 83 | "@babel/parser" "^7.6.0" 84 | "@babel/types" "^7.6.0" 85 | debug "^4.1.0" 86 | globals "^11.1.0" 87 | lodash "^4.17.13" 88 | 89 | "@babel/types@^7.0.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.6.0": 90 | version "7.6.1" 91 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.6.1.tgz#53abf3308add3ac2a2884d539151c57c4b3ac648" 92 | integrity sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g== 93 | dependencies: 94 | esutils "^2.0.2" 95 | lodash "^4.17.13" 96 | to-fast-properties "^2.0.0" 97 | 98 | "@commitlint/execute-rule@^8.1.0": 99 | version "8.1.0" 100 | resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-8.1.0.tgz#e8386bd0836b3dcdd41ebb9d5904bbeb447e4715" 101 | integrity sha512-+vpH3RFuO6ypuCqhP2rSqTjFTQ7ClzXtUvXphpROv9v9+7zH4L+Ex+wZLVkL8Xj2cxefSLn/5Kcqa9XyJTn3kg== 102 | 103 | "@commitlint/load@>6.1.1": 104 | version "8.1.0" 105 | resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-8.1.0.tgz#63b72ae5bb9152b8fa5b17c5428053032a9a49c8" 106 | integrity sha512-ra02Dvmd7Gp1+uFLzTY3yGOpHjPzl5T9wYg/xrtPJNiOWXvQ0Mw7THw+ucd1M5iLUWjvdavv2N87YDRc428wHg== 107 | dependencies: 108 | "@commitlint/execute-rule" "^8.1.0" 109 | "@commitlint/resolve-extends" "^8.1.0" 110 | babel-runtime "^6.23.0" 111 | chalk "2.4.2" 112 | cosmiconfig "^5.2.0" 113 | lodash "4.17.14" 114 | resolve-from "^5.0.0" 115 | 116 | "@commitlint/resolve-extends@^8.1.0": 117 | version "8.1.0" 118 | resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-8.1.0.tgz#ed67f2ee484160ac8e0078bae52f172625157472" 119 | integrity sha512-r/y+CeKW72Oa9BUctS1+I/MFCDiI3lfhwfQ65Tpfn6eZ4CuBYKzrCRi++GTHeAFKE3y8q1epJq5Rl/1GBejtBw== 120 | dependencies: 121 | "@types/node" "^12.0.2" 122 | import-fresh "^3.0.0" 123 | lodash "4.17.14" 124 | resolve-from "^5.0.0" 125 | resolve-global "^1.0.0" 126 | 127 | "@sinonjs/commons@^1", "@sinonjs/commons@^1.3.0", "@sinonjs/commons@^1.4.0": 128 | version "1.6.0" 129 | resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.6.0.tgz#ec7670432ae9c8eb710400d112c201a362d83393" 130 | integrity sha512-w4/WHG7C4WWFyE5geCieFJF6MZkbW4VAriol5KlmQXpAQdxvV0p26sqNZOW6Qyw6Y0l9K4g+cHvvczR2sEEpqg== 131 | dependencies: 132 | type-detect "4.0.8" 133 | 134 | "@sinonjs/formatio@^3.2.1": 135 | version "3.2.1" 136 | resolved "https://registry.yarnpkg.com/@sinonjs/formatio/-/formatio-3.2.1.tgz#52310f2f9bcbc67bdac18c94ad4901b95fde267e" 137 | integrity sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ== 138 | dependencies: 139 | "@sinonjs/commons" "^1" 140 | "@sinonjs/samsam" "^3.1.0" 141 | 142 | "@sinonjs/samsam@^3.1.0", "@sinonjs/samsam@^3.3.3": 143 | version "3.3.3" 144 | resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-3.3.3.tgz#46682efd9967b259b81136b9f120fd54585feb4a" 145 | integrity sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ== 146 | dependencies: 147 | "@sinonjs/commons" "^1.3.0" 148 | array-from "^2.1.1" 149 | lodash "^4.17.15" 150 | 151 | "@sinonjs/text-encoding@^0.7.1": 152 | version "0.7.1" 153 | resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" 154 | integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== 155 | 156 | "@types/node@^12.0.2": 157 | version "12.7.5" 158 | resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.5.tgz#e19436e7f8e9b4601005d73673b6dc4784ffcc2f" 159 | integrity sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w== 160 | 161 | JSONStream@^1.0.4: 162 | version "1.3.2" 163 | resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.2.tgz#c102371b6ec3a7cf3b847ca00c20bb0fce4c6dea" 164 | dependencies: 165 | jsonparse "^1.2.0" 166 | through ">=2.2.7 <3" 167 | 168 | acorn-jsx@^5.0.2: 169 | version "5.0.2" 170 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f" 171 | integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw== 172 | 173 | acorn@^7.0.0: 174 | version "7.0.0" 175 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.0.0.tgz#26b8d1cd9a9b700350b71c0905546f64d1284e7a" 176 | integrity sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ== 177 | 178 | ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: 179 | version "6.10.2" 180 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" 181 | integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== 182 | dependencies: 183 | fast-deep-equal "^2.0.1" 184 | fast-json-stable-stringify "^2.0.0" 185 | json-schema-traverse "^0.4.1" 186 | uri-js "^4.2.2" 187 | 188 | ansi-colors@3.2.3: 189 | version "3.2.3" 190 | resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" 191 | integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== 192 | 193 | ansi-escapes@^3.2.0: 194 | version "3.2.0" 195 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" 196 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 197 | 198 | ansi-regex@^2.0.0: 199 | version "2.1.1" 200 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 201 | 202 | ansi-regex@^3.0.0: 203 | version "3.0.0" 204 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 205 | 206 | ansi-regex@^4.1.0: 207 | version "4.1.0" 208 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 209 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 210 | 211 | ansi-styles@^3.1.0: 212 | version "3.2.0" 213 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" 214 | dependencies: 215 | color-convert "^1.9.0" 216 | 217 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 218 | version "3.2.1" 219 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 220 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 221 | dependencies: 222 | color-convert "^1.9.0" 223 | 224 | append-transform@^1.0.0: 225 | version "1.0.0" 226 | resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab" 227 | integrity sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw== 228 | dependencies: 229 | default-require-extensions "^2.0.0" 230 | 231 | archy@^1.0.0: 232 | version "1.0.0" 233 | resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" 234 | 235 | argparse@^1.0.7: 236 | version "1.0.9" 237 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" 238 | dependencies: 239 | sprintf-js "~1.0.2" 240 | 241 | arr-diff@^4.0.0: 242 | version "4.0.0" 243 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" 244 | 245 | arr-flatten@^1.1.0: 246 | version "1.1.0" 247 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 248 | 249 | arr-union@^3.1.0: 250 | version "3.1.0" 251 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" 252 | 253 | array-find-index@^1.0.1: 254 | version "1.0.2" 255 | resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" 256 | 257 | array-from@^2.1.1: 258 | version "2.1.1" 259 | resolved "https://registry.yarnpkg.com/array-from/-/array-from-2.1.1.tgz#cfe9d8c26628b9dc5aecc62a9f5d8f1f352c1195" 260 | integrity sha1-z+nYwmYoudxa7MYqn12PHzUsEZU= 261 | 262 | array-ify@^1.0.0: 263 | version "1.0.0" 264 | resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" 265 | 266 | array-includes@^3.0.3: 267 | version "3.0.3" 268 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" 269 | integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= 270 | dependencies: 271 | define-properties "^1.1.2" 272 | es-abstract "^1.7.0" 273 | 274 | array-unique@^0.3.2: 275 | version "0.3.2" 276 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" 277 | 278 | arrify@^1.0.1: 279 | version "1.0.1" 280 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 281 | 282 | arrify@^2.0.1: 283 | version "2.0.1" 284 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" 285 | integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== 286 | 287 | asn1@~0.2.3: 288 | version "0.2.3" 289 | resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" 290 | 291 | assert-plus@1.0.0, assert-plus@^1.0.0: 292 | version "1.0.0" 293 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" 294 | 295 | assertion-error@^1.1.0: 296 | version "1.1.0" 297 | resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" 298 | integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== 299 | 300 | assign-symbols@^1.0.0: 301 | version "1.0.0" 302 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" 303 | 304 | astral-regex@^1.0.0: 305 | version "1.0.0" 306 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 307 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 308 | 309 | asynckit@^0.4.0: 310 | version "0.4.0" 311 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 312 | 313 | atob@^2.0.0: 314 | version "2.1.0" 315 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.0.tgz#ab2b150e51d7b122b9efc8d7340c06b6c41076bc" 316 | 317 | aws-sign2@~0.7.0: 318 | version "0.7.0" 319 | resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" 320 | 321 | aws4@^1.8.0: 322 | version "1.8.0" 323 | resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" 324 | integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== 325 | 326 | babel-runtime@^6.23.0: 327 | version "6.26.0" 328 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" 329 | integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 330 | dependencies: 331 | core-js "^2.4.0" 332 | regenerator-runtime "^0.11.0" 333 | 334 | balanced-match@^1.0.0: 335 | version "1.0.0" 336 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 337 | 338 | base@^0.11.1: 339 | version "0.11.2" 340 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" 341 | dependencies: 342 | cache-base "^1.0.1" 343 | class-utils "^0.3.5" 344 | component-emitter "^1.2.1" 345 | define-property "^1.0.0" 346 | isobject "^3.0.1" 347 | mixin-deep "^1.2.0" 348 | pascalcase "^0.1.1" 349 | 350 | bcrypt-pbkdf@^1.0.0: 351 | version "1.0.1" 352 | resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" 353 | dependencies: 354 | tweetnacl "^0.14.3" 355 | 356 | brace-expansion@^1.1.7: 357 | version "1.1.8" 358 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" 359 | dependencies: 360 | balanced-match "^1.0.0" 361 | concat-map "0.0.1" 362 | 363 | braces@^2.3.1: 364 | version "2.3.1" 365 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.1.tgz#7086c913b4e5a08dbe37ac0ee6a2500c4ba691bb" 366 | dependencies: 367 | arr-flatten "^1.1.0" 368 | array-unique "^0.3.2" 369 | define-property "^1.0.0" 370 | extend-shallow "^2.0.1" 371 | fill-range "^4.0.0" 372 | isobject "^3.0.1" 373 | kind-of "^6.0.2" 374 | repeat-element "^1.1.2" 375 | snapdragon "^0.8.1" 376 | snapdragon-node "^2.0.1" 377 | split-string "^3.0.2" 378 | to-regex "^3.0.1" 379 | 380 | browser-stdout@1.3.1: 381 | version "1.3.1" 382 | resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" 383 | integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== 384 | 385 | buffer-from@^1.0.0: 386 | version "1.0.0" 387 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" 388 | 389 | builtin-modules@^1.0.0: 390 | version "1.1.1" 391 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 392 | 393 | cache-base@^1.0.1: 394 | version "1.0.1" 395 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" 396 | dependencies: 397 | collection-visit "^1.0.0" 398 | component-emitter "^1.2.1" 399 | get-value "^2.0.6" 400 | has-value "^1.0.0" 401 | isobject "^3.0.1" 402 | set-value "^2.0.0" 403 | to-object-path "^0.3.0" 404 | union-value "^1.0.0" 405 | unset-value "^1.0.0" 406 | 407 | cachedir@2.2.0: 408 | version "2.2.0" 409 | resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.2.0.tgz#19afa4305e05d79e417566882e0c8f960f62ff0e" 410 | integrity sha512-VvxA0xhNqIIfg0V9AmJkDg91DaJwryutH5rVEZAhcNi4iJFj9f+QxmAjgK1LT9I8OgToX27fypX6/MeCXVbBjQ== 411 | 412 | caching-transform@^3.0.2: 413 | version "3.0.2" 414 | resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-3.0.2.tgz#601d46b91eca87687a281e71cef99791b0efca70" 415 | integrity sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w== 416 | dependencies: 417 | hasha "^3.0.0" 418 | make-dir "^2.0.0" 419 | package-hash "^3.0.0" 420 | write-file-atomic "^2.4.2" 421 | 422 | caller-callsite@^2.0.0: 423 | version "2.0.0" 424 | resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" 425 | integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= 426 | dependencies: 427 | callsites "^2.0.0" 428 | 429 | caller-path@^2.0.0: 430 | version "2.0.0" 431 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" 432 | integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= 433 | dependencies: 434 | caller-callsite "^2.0.0" 435 | 436 | callsites@^2.0.0: 437 | version "2.0.0" 438 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" 439 | integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= 440 | 441 | callsites@^3.0.0: 442 | version "3.1.0" 443 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 444 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 445 | 446 | camelcase-keys@^2.0.0: 447 | version "2.1.0" 448 | resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" 449 | dependencies: 450 | camelcase "^2.0.0" 451 | map-obj "^1.0.0" 452 | 453 | camelcase-keys@^4.0.0: 454 | version "4.2.0" 455 | resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" 456 | dependencies: 457 | camelcase "^4.1.0" 458 | map-obj "^2.0.0" 459 | quick-lru "^1.0.0" 460 | 461 | camelcase@^2.0.0: 462 | version "2.1.1" 463 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" 464 | 465 | camelcase@^4.1.0: 466 | version "4.1.0" 467 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" 468 | 469 | camelcase@^5.0.0: 470 | version "5.3.1" 471 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 472 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 473 | 474 | caseless@~0.12.0: 475 | version "0.12.0" 476 | resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" 477 | 478 | chai@^4.2.0: 479 | version "4.2.0" 480 | resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" 481 | integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== 482 | dependencies: 483 | assertion-error "^1.1.0" 484 | check-error "^1.0.2" 485 | deep-eql "^3.0.1" 486 | get-func-name "^2.0.0" 487 | pathval "^1.1.0" 488 | type-detect "^4.0.5" 489 | 490 | chalk@2.4.2, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: 491 | version "2.4.2" 492 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 493 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 494 | dependencies: 495 | ansi-styles "^3.2.1" 496 | escape-string-regexp "^1.0.5" 497 | supports-color "^5.3.0" 498 | 499 | chalk@^2.0.0, chalk@^2.1.0: 500 | version "2.3.0" 501 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" 502 | dependencies: 503 | ansi-styles "^3.1.0" 504 | escape-string-regexp "^1.0.5" 505 | supports-color "^4.0.0" 506 | 507 | chardet@^0.7.0: 508 | version "0.7.0" 509 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" 510 | integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== 511 | 512 | check-error@^1.0.2: 513 | version "1.0.2" 514 | resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" 515 | integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= 516 | 517 | class-utils@^0.3.5: 518 | version "0.3.6" 519 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" 520 | dependencies: 521 | arr-union "^3.1.0" 522 | define-property "^0.2.5" 523 | isobject "^3.0.0" 524 | static-extend "^0.1.1" 525 | 526 | cli-cursor@^2.1.0: 527 | version "2.1.0" 528 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 529 | dependencies: 530 | restore-cursor "^2.0.0" 531 | 532 | cli-width@^2.0.0: 533 | version "2.2.0" 534 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" 535 | 536 | cliui@^4.0.0: 537 | version "4.0.0" 538 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc" 539 | dependencies: 540 | string-width "^2.1.1" 541 | strip-ansi "^4.0.0" 542 | wrap-ansi "^2.0.0" 543 | 544 | cliui@^5.0.0: 545 | version "5.0.0" 546 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" 547 | integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== 548 | dependencies: 549 | string-width "^3.1.0" 550 | strip-ansi "^5.2.0" 551 | wrap-ansi "^5.1.0" 552 | 553 | code-point-at@^1.0.0: 554 | version "1.1.0" 555 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 556 | 557 | collection-visit@^1.0.0: 558 | version "1.0.0" 559 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" 560 | dependencies: 561 | map-visit "^1.0.0" 562 | object-visit "^1.0.0" 563 | 564 | color-convert@^1.9.0: 565 | version "1.9.1" 566 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" 567 | dependencies: 568 | color-name "^1.1.1" 569 | 570 | color-name@^1.1.1: 571 | version "1.1.3" 572 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 573 | 574 | combined-stream@^1.0.6, combined-stream@~1.0.6: 575 | version "1.0.8" 576 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" 577 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 578 | dependencies: 579 | delayed-stream "~1.0.0" 580 | 581 | commander@~2.20.0: 582 | version "2.20.0" 583 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" 584 | integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== 585 | 586 | commitizen@^4.0.3: 587 | version "4.0.3" 588 | resolved "https://registry.yarnpkg.com/commitizen/-/commitizen-4.0.3.tgz#c19a4213257d0525b85139e2f36db7cc3b4f6dae" 589 | integrity sha512-lxu0F/Iq4dudoFeIl5pY3h3CQJzkmQuh3ygnaOvqhAD8Wu2pYBI17ofqSuPHNsBTEOh1r1AVa9kR4Hp0FAHKcQ== 590 | dependencies: 591 | cachedir "2.2.0" 592 | cz-conventional-changelog "3.0.1" 593 | dedent "0.7.0" 594 | detect-indent "6.0.0" 595 | find-node-modules "2.0.0" 596 | find-root "1.1.0" 597 | fs-extra "8.1.0" 598 | glob "7.1.4" 599 | inquirer "6.5.0" 600 | is-utf8 "^0.2.1" 601 | lodash "4.17.15" 602 | minimist "1.2.0" 603 | shelljs "0.7.6" 604 | strip-bom "4.0.0" 605 | strip-json-comments "3.0.1" 606 | 607 | commondir@^1.0.1: 608 | version "1.0.1" 609 | resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 610 | 611 | compare-func@^1.3.1: 612 | version "1.3.2" 613 | resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648" 614 | dependencies: 615 | array-ify "^1.0.0" 616 | dot-prop "^3.0.0" 617 | 618 | component-emitter@^1.2.1: 619 | version "1.2.1" 620 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" 621 | 622 | concat-map@0.0.1: 623 | version "0.0.1" 624 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 625 | 626 | concat-stream@^2.0.0: 627 | version "2.0.0" 628 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" 629 | integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== 630 | dependencies: 631 | buffer-from "^1.0.0" 632 | inherits "^2.0.3" 633 | readable-stream "^3.0.2" 634 | typedarray "^0.0.6" 635 | 636 | confusing-browser-globals@^1.0.7: 637 | version "1.0.8" 638 | resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.8.tgz#93ffec1f82a6e2bf2bc36769cc3a92fa20e502f3" 639 | integrity sha512-lI7asCibVJ6Qd3FGU7mu4sfG4try4LX3+GVS+Gv8UlrEf2AeW57piecapnog2UHZSbcX/P/1UDWVaTsblowlZg== 640 | 641 | contains-path@^0.1.0: 642 | version "0.1.0" 643 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 644 | 645 | conventional-changelog-angular@^5.0.3: 646 | version "5.0.3" 647 | resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.3.tgz#299fdd43df5a1f095283ac16aeedfb0a682ecab0" 648 | integrity sha512-YD1xzH7r9yXQte/HF9JBuEDfvjxxwDGGwZU1+ndanbY0oFgA+Po1T9JDSpPLdP0pZT6MhCAsdvFKC4TJ4MTJTA== 649 | dependencies: 650 | compare-func "^1.3.1" 651 | q "^1.5.1" 652 | 653 | conventional-changelog-atom@^2.0.1: 654 | version "2.0.1" 655 | resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-2.0.1.tgz#dc88ce650ffa9ceace805cbe70f88bfd0cb2c13a" 656 | integrity sha512-9BniJa4gLwL20Sm7HWSNXd0gd9c5qo49gCi8nylLFpqAHhkFTj7NQfROq3f1VpffRtzfTQp4VKU5nxbe2v+eZQ== 657 | dependencies: 658 | q "^1.5.1" 659 | 660 | conventional-changelog-codemirror@^2.0.1: 661 | version "2.0.1" 662 | resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.1.tgz#acc046bc0971460939a0cc2d390e5eafc5eb30da" 663 | integrity sha512-23kT5IZWa+oNoUaDUzVXMYn60MCdOygTA2I+UjnOMiYVhZgmVwNd6ri/yDlmQGXHqbKhNR5NoXdBzSOSGxsgIQ== 664 | dependencies: 665 | q "^1.5.1" 666 | 667 | conventional-changelog-config-spec@2.0.0: 668 | version "2.0.0" 669 | resolved "https://registry.yarnpkg.com/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.0.0.tgz#a9e8c9225d4a922d25f4ac501e454274ae4ad0b3" 670 | integrity sha512-zQmcBP/pR8tN5MSv+nXG9hOmy+Z6rgEquBerpoEbOKTFPLoxBy/adeUUpshrMpqdZ/ycqbT2AgdTtiIu/9IHGg== 671 | 672 | conventional-changelog-conventionalcommits@^4.0.0: 673 | version "4.1.0" 674 | resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.1.0.tgz#eb7d47a9c5f1a6f9846a649482294e4ac50d7683" 675 | integrity sha512-J3xolGrH8PTxpCqueHOuZtv3Cp73SQOWiBQzlsaugZAZ+hZgcJBonmC+1bQbfGs2neC2S18p2L1Gx+nTEglJTQ== 676 | dependencies: 677 | compare-func "^1.3.1" 678 | q "^1.5.1" 679 | 680 | conventional-changelog-core@^3.2.3: 681 | version "3.2.3" 682 | resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz#b31410856f431c847086a7dcb4d2ca184a7d88fb" 683 | integrity sha512-LMMX1JlxPIq/Ez5aYAYS5CpuwbOk6QFp8O4HLAcZxe3vxoCtABkhfjetk8IYdRB9CDQGwJFLR3Dr55Za6XKgUQ== 684 | dependencies: 685 | conventional-changelog-writer "^4.0.6" 686 | conventional-commits-parser "^3.0.3" 687 | dateformat "^3.0.0" 688 | get-pkg-repo "^1.0.0" 689 | git-raw-commits "2.0.0" 690 | git-remote-origin-url "^2.0.0" 691 | git-semver-tags "^2.0.3" 692 | lodash "^4.2.1" 693 | normalize-package-data "^2.3.5" 694 | q "^1.5.1" 695 | read-pkg "^3.0.0" 696 | read-pkg-up "^3.0.0" 697 | through2 "^3.0.0" 698 | 699 | conventional-changelog-ember@^2.0.2: 700 | version "2.0.2" 701 | resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-2.0.2.tgz#284ffdea8c83ea8c210b65c5b4eb3e5cc0f4f51a" 702 | integrity sha512-qtZbA3XefO/n6DDmkYywDYi6wDKNNc98MMl2F9PKSaheJ25Trpi3336W8fDlBhq0X+EJRuseceAdKLEMmuX2tg== 703 | dependencies: 704 | q "^1.5.1" 705 | 706 | conventional-changelog-eslint@^3.0.2: 707 | version "3.0.2" 708 | resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.2.tgz#e9eb088cda6be3e58b2de6a5aac63df0277f3cbe" 709 | integrity sha512-Yi7tOnxjZLXlCYBHArbIAm8vZ68QUSygFS7PgumPRiEk+9NPUeucy5Wg9AAyKoBprSV3o6P7Oghh4IZSLtKCvQ== 710 | dependencies: 711 | q "^1.5.1" 712 | 713 | conventional-changelog-express@^2.0.1: 714 | version "2.0.1" 715 | resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-2.0.1.tgz#fea2231d99a5381b4e6badb0c1c40a41fcacb755" 716 | integrity sha512-G6uCuCaQhLxdb4eEfAIHpcfcJ2+ao3hJkbLrw/jSK/eROeNfnxCJasaWdDAfFkxsbpzvQT4W01iSynU3OoPLIw== 717 | dependencies: 718 | q "^1.5.1" 719 | 720 | conventional-changelog-jquery@^3.0.4: 721 | version "3.0.4" 722 | resolved "https://registry.yarnpkg.com/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.4.tgz#7eb598467b83db96742178e1e8d68598bffcd7ae" 723 | integrity sha512-IVJGI3MseYoY6eybknnTf9WzeQIKZv7aNTm2KQsiFVJH21bfP2q7XVjfoMibdCg95GmgeFlaygMdeoDDa+ZbEQ== 724 | dependencies: 725 | q "^1.5.1" 726 | 727 | conventional-changelog-jshint@^2.0.1: 728 | version "2.0.1" 729 | resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.1.tgz#11c0e8283abf156a4ff78e89be6fdedf9bd72202" 730 | integrity sha512-kRFJsCOZzPFm2tzRHULWP4tauGMvccOlXYf3zGeuSW4U0mZhk5NsjnRZ7xFWrTFPlCLV+PNmHMuXp5atdoZmEg== 731 | dependencies: 732 | compare-func "^1.3.1" 733 | q "^1.5.1" 734 | 735 | conventional-changelog-preset-loader@^2.1.1, conventional-changelog-preset-loader@^2.2.0: 736 | version "2.2.0" 737 | resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.2.0.tgz#571e2b3d7b53d65587bea9eedf6e37faa5db4fcc" 738 | integrity sha512-zXB+5vF7D5Y3Cb/rJfSyCCvFphCVmF8mFqOdncX3BmjZwAtGAPfYrBcT225udilCKvBbHgyzgxqz2GWDB5xShQ== 739 | 740 | conventional-changelog-writer@^4.0.6: 741 | version "4.0.7" 742 | resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.0.7.tgz#e4b7d9cbea902394ad671f67108a71fa90c7095f" 743 | integrity sha512-p/wzs9eYaxhFbrmX/mCJNwJuvvHR+j4Fd0SQa2xyAhYed6KBiZ780LvoqUUvsayP4R1DtC27czalGUhKV2oabw== 744 | dependencies: 745 | compare-func "^1.3.1" 746 | conventional-commits-filter "^2.0.2" 747 | dateformat "^3.0.0" 748 | handlebars "^4.1.2" 749 | json-stringify-safe "^5.0.1" 750 | lodash "^4.2.1" 751 | meow "^4.0.0" 752 | semver "^6.0.0" 753 | split "^1.0.0" 754 | through2 "^3.0.0" 755 | 756 | conventional-changelog@3.1.9: 757 | version "3.1.9" 758 | resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.9.tgz#5a6a19dadc1e4080c2db8dcddd00a6c0077c55a4" 759 | integrity sha512-JbNVm1iGZ3aXxcFZjqKNDNfdgchQjSltWc8rvSniMrkHLsub9Wn20/JLdJNTBM74dt1IA2M+v/mzServ6N37YA== 760 | dependencies: 761 | conventional-changelog-angular "^5.0.3" 762 | conventional-changelog-atom "^2.0.1" 763 | conventional-changelog-codemirror "^2.0.1" 764 | conventional-changelog-conventionalcommits "^4.0.0" 765 | conventional-changelog-core "^3.2.3" 766 | conventional-changelog-ember "^2.0.2" 767 | conventional-changelog-eslint "^3.0.2" 768 | conventional-changelog-express "^2.0.1" 769 | conventional-changelog-jquery "^3.0.4" 770 | conventional-changelog-jshint "^2.0.1" 771 | conventional-changelog-preset-loader "^2.1.1" 772 | 773 | conventional-commit-types@^2.0.0: 774 | version "2.2.0" 775 | resolved "https://registry.yarnpkg.com/conventional-commit-types/-/conventional-commit-types-2.2.0.tgz#5db95739d6c212acbe7b6f656a11b940baa68946" 776 | 777 | conventional-commits-filter@^2.0.2: 778 | version "2.0.2" 779 | resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz#f122f89fbcd5bb81e2af2fcac0254d062d1039c1" 780 | integrity sha512-WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ== 781 | dependencies: 782 | lodash.ismatch "^4.4.0" 783 | modify-values "^1.0.0" 784 | 785 | conventional-commits-parser@^3.0.3: 786 | version "3.0.3" 787 | resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.0.3.tgz#c3f972fd4e056aa8b9b4f5f3d0e540da18bf396d" 788 | integrity sha512-KaA/2EeUkO4bKjinNfGUyqPTX/6w9JGshuQRik4r/wJz7rUw3+D3fDG6sZSEqJvKILzKXFQuFkpPLclcsAuZcg== 789 | dependencies: 790 | JSONStream "^1.0.4" 791 | is-text-path "^2.0.0" 792 | lodash "^4.2.1" 793 | meow "^4.0.0" 794 | split2 "^2.0.0" 795 | through2 "^3.0.0" 796 | trim-off-newlines "^1.0.0" 797 | 798 | conventional-recommended-bump@6.0.0: 799 | version "6.0.0" 800 | resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.0.0.tgz#bdafad56bc32bc04d58dbbd8bd6b750375500edc" 801 | integrity sha512-iIHkDOuWCC49J/E4WXvXBCCrO2NoGqwjfhm2iUOHPPEik8TVHxczt/hFaWY+4MXeZ/nC53BNfjmlr8+EXOrlvA== 802 | dependencies: 803 | concat-stream "^2.0.0" 804 | conventional-changelog-preset-loader "^2.2.0" 805 | conventional-commits-filter "^2.0.2" 806 | conventional-commits-parser "^3.0.3" 807 | git-raw-commits "2.0.0" 808 | git-semver-tags "^3.0.0" 809 | meow "^4.0.0" 810 | q "^1.5.1" 811 | 812 | convert-source-map@^1.6.0: 813 | version "1.6.0" 814 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" 815 | integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== 816 | dependencies: 817 | safe-buffer "~5.1.1" 818 | 819 | copy-descriptor@^0.1.0: 820 | version "0.1.1" 821 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" 822 | 823 | core-js@^2.4.0: 824 | version "2.5.4" 825 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.4.tgz#f2c8bf181f2a80b92f360121429ce63a2f0aeae0" 826 | 827 | core-util-is@1.0.2, core-util-is@~1.0.0: 828 | version "1.0.2" 829 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 830 | 831 | cosmiconfig@^5.2.0: 832 | version "5.2.1" 833 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" 834 | integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== 835 | dependencies: 836 | import-fresh "^2.0.0" 837 | is-directory "^0.3.1" 838 | js-yaml "^3.13.1" 839 | parse-json "^4.0.0" 840 | 841 | coveralls@^3.0.6: 842 | version "3.0.6" 843 | resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.6.tgz#5c63b2759b6781118e7439bd870ba5e9ee428b25" 844 | integrity sha512-Pgh4v3gCI4T/9VijVrm8Ym5v0OgjvGLKj3zTUwkvsCiwqae/p6VLzpsFNjQS2i6ewV7ef+DjFJ5TSKxYt/mCrA== 845 | dependencies: 846 | growl "~> 1.10.0" 847 | js-yaml "^3.13.1" 848 | lcov-parse "^0.0.10" 849 | log-driver "^1.2.7" 850 | minimist "^1.2.0" 851 | request "^2.86.0" 852 | 853 | cp-file@^6.2.0: 854 | version "6.2.0" 855 | resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-6.2.0.tgz#40d5ea4a1def2a9acdd07ba5c0b0246ef73dc10d" 856 | integrity sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA== 857 | dependencies: 858 | graceful-fs "^4.1.2" 859 | make-dir "^2.0.0" 860 | nested-error-stacks "^2.0.0" 861 | pify "^4.0.1" 862 | safe-buffer "^5.0.1" 863 | 864 | cross-spawn@^4: 865 | version "4.0.2" 866 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" 867 | dependencies: 868 | lru-cache "^4.0.1" 869 | which "^1.2.9" 870 | 871 | cross-spawn@^6.0.0, cross-spawn@^6.0.5: 872 | version "6.0.5" 873 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 874 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 875 | dependencies: 876 | nice-try "^1.0.4" 877 | path-key "^2.0.1" 878 | semver "^5.5.0" 879 | shebang-command "^1.2.0" 880 | which "^1.2.9" 881 | 882 | currently-unhandled@^0.4.1: 883 | version "0.4.1" 884 | resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" 885 | dependencies: 886 | array-find-index "^1.0.1" 887 | 888 | cz-conventional-changelog@3.0.1: 889 | version "3.0.1" 890 | resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.0.1.tgz#b1f207ae050355e7ada65aad5c52e9de3d0c8e5b" 891 | integrity sha512-7KASIwB8/ClEyCRvQrCPbN7WkQnUSjSSVNyPM+gDJ0jskLi8h8N2hrdpyeCk7fIqKMRzziqVSOBTB8yyLTMHGQ== 892 | dependencies: 893 | chalk "^2.4.1" 894 | conventional-commit-types "^2.0.0" 895 | lodash.map "^4.5.1" 896 | longest "^2.0.1" 897 | right-pad "^1.0.1" 898 | word-wrap "^1.0.3" 899 | optionalDependencies: 900 | "@commitlint/load" ">6.1.1" 901 | 902 | cz-conventional-changelog@^3.0.2: 903 | version "3.0.2" 904 | resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.0.2.tgz#f6b9a406177ab07f9a3a087e06103a045b376260" 905 | integrity sha512-MPxERbtQyVp0nnpCBiwzKGKmMBSswmCV3Jpef3Axqd5f3c/SOc6VFiSUlclOyZXBn3Xtf4snzt4O15hBTRb2gA== 906 | dependencies: 907 | chalk "^2.4.1" 908 | commitizen "^4.0.3" 909 | conventional-commit-types "^2.0.0" 910 | lodash.map "^4.5.1" 911 | longest "^2.0.1" 912 | right-pad "^1.0.1" 913 | word-wrap "^1.0.3" 914 | optionalDependencies: 915 | "@commitlint/load" ">6.1.1" 916 | 917 | dargs@^4.0.1: 918 | version "4.1.0" 919 | resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" 920 | dependencies: 921 | number-is-nan "^1.0.0" 922 | 923 | dashdash@^1.12.0: 924 | version "1.14.1" 925 | resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" 926 | dependencies: 927 | assert-plus "^1.0.0" 928 | 929 | dateformat@^3.0.0: 930 | version "3.0.3" 931 | resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" 932 | 933 | debug@3.2.6: 934 | version "3.2.6" 935 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" 936 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== 937 | dependencies: 938 | ms "^2.1.1" 939 | 940 | debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: 941 | version "2.6.9" 942 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 943 | dependencies: 944 | ms "2.0.0" 945 | 946 | debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: 947 | version "4.1.1" 948 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 949 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 950 | dependencies: 951 | ms "^2.1.1" 952 | 953 | decamelize-keys@^1.0.0: 954 | version "1.1.0" 955 | resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" 956 | dependencies: 957 | decamelize "^1.1.0" 958 | map-obj "^1.0.0" 959 | 960 | decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: 961 | version "1.2.0" 962 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 963 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 964 | 965 | decode-uri-component@^0.2.0: 966 | version "0.2.0" 967 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" 968 | 969 | dedent@0.7.0: 970 | version "0.7.0" 971 | resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" 972 | integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= 973 | 974 | deep-eql@^3.0.1: 975 | version "3.0.1" 976 | resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" 977 | integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== 978 | dependencies: 979 | type-detect "^4.0.0" 980 | 981 | deep-is@~0.1.3: 982 | version "0.1.3" 983 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 984 | 985 | default-require-extensions@^2.0.0: 986 | version "2.0.0" 987 | resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" 988 | integrity sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc= 989 | dependencies: 990 | strip-bom "^3.0.0" 991 | 992 | define-properties@^1.1.2, define-properties@^1.1.3: 993 | version "1.1.3" 994 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 995 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 996 | dependencies: 997 | object-keys "^1.0.12" 998 | 999 | define-property@^0.2.5: 1000 | version "0.2.5" 1001 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" 1002 | dependencies: 1003 | is-descriptor "^0.1.0" 1004 | 1005 | define-property@^1.0.0: 1006 | version "1.0.0" 1007 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" 1008 | dependencies: 1009 | is-descriptor "^1.0.0" 1010 | 1011 | define-property@^2.0.2: 1012 | version "2.0.2" 1013 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" 1014 | dependencies: 1015 | is-descriptor "^1.0.2" 1016 | isobject "^3.0.1" 1017 | 1018 | delayed-stream@~1.0.0: 1019 | version "1.0.0" 1020 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 1021 | 1022 | detect-file@^1.0.0: 1023 | version "1.0.0" 1024 | resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" 1025 | integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= 1026 | 1027 | detect-indent@6.0.0: 1028 | version "6.0.0" 1029 | resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" 1030 | integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== 1031 | 1032 | detect-newline@3.0.0: 1033 | version "3.0.0" 1034 | resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.0.0.tgz#8ae477c089e51872c264531cd6547719c0b86b2f" 1035 | integrity sha512-JAP22dVPAqvhdRFFxK1G5GViIokyUn0UWXRNW0ztK96fsqi9cuM8w8ESbSk+T2w5OVorcMcL6m7yUg1RrX+2CA== 1036 | 1037 | diff@3.5.0, diff@^3.5.0: 1038 | version "3.5.0" 1039 | resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" 1040 | integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== 1041 | 1042 | doctrine@1.5.0: 1043 | version "1.5.0" 1044 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 1045 | dependencies: 1046 | esutils "^2.0.2" 1047 | isarray "^1.0.0" 1048 | 1049 | doctrine@^3.0.0: 1050 | version "3.0.0" 1051 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 1052 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 1053 | dependencies: 1054 | esutils "^2.0.2" 1055 | 1056 | dot-prop@^3.0.0: 1057 | version "3.0.0" 1058 | resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" 1059 | dependencies: 1060 | is-obj "^1.0.0" 1061 | 1062 | dotgitignore@2.1.0: 1063 | version "2.1.0" 1064 | resolved "https://registry.yarnpkg.com/dotgitignore/-/dotgitignore-2.1.0.tgz#a4b15a4e4ef3cf383598aaf1dfa4a04bcc089b7b" 1065 | integrity sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA== 1066 | dependencies: 1067 | find-up "^3.0.0" 1068 | minimatch "^3.0.4" 1069 | 1070 | ecc-jsbn@~0.1.1: 1071 | version "0.1.1" 1072 | resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" 1073 | dependencies: 1074 | jsbn "~0.1.0" 1075 | 1076 | emoji-regex@^7.0.1: 1077 | version "7.0.3" 1078 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 1079 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 1080 | 1081 | end-of-stream@^1.1.0: 1082 | version "1.4.1" 1083 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" 1084 | integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== 1085 | dependencies: 1086 | once "^1.4.0" 1087 | 1088 | error-ex@^1.2.0, error-ex@^1.3.1: 1089 | version "1.3.1" 1090 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" 1091 | dependencies: 1092 | is-arrayish "^0.2.1" 1093 | 1094 | es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0: 1095 | version "1.14.2" 1096 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.14.2.tgz#7ce108fad83068c8783c3cdf62e504e084d8c497" 1097 | integrity sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg== 1098 | dependencies: 1099 | es-to-primitive "^1.2.0" 1100 | function-bind "^1.1.1" 1101 | has "^1.0.3" 1102 | has-symbols "^1.0.0" 1103 | is-callable "^1.1.4" 1104 | is-regex "^1.0.4" 1105 | object-inspect "^1.6.0" 1106 | object-keys "^1.1.1" 1107 | string.prototype.trimleft "^2.0.0" 1108 | string.prototype.trimright "^2.0.0" 1109 | 1110 | es-to-primitive@^1.2.0: 1111 | version "1.2.0" 1112 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" 1113 | integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== 1114 | dependencies: 1115 | is-callable "^1.1.4" 1116 | is-date-object "^1.0.1" 1117 | is-symbol "^1.0.2" 1118 | 1119 | es6-error@^4.0.1: 1120 | version "4.1.1" 1121 | resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" 1122 | integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== 1123 | 1124 | escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: 1125 | version "1.0.5" 1126 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 1127 | 1128 | eslint-config-airbnb-base@^14.0.0: 1129 | version "14.0.0" 1130 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.0.0.tgz#8a7bcb9643d13c55df4dd7444f138bf4efa61e17" 1131 | integrity sha512-2IDHobw97upExLmsebhtfoD3NAKhV4H0CJWP3Uprd/uk+cHuWYOczPVxQ8PxLFUAw7o3Th1RAU8u1DoUpr+cMA== 1132 | dependencies: 1133 | confusing-browser-globals "^1.0.7" 1134 | object.assign "^4.1.0" 1135 | object.entries "^1.1.0" 1136 | 1137 | eslint-import-resolver-node@^0.3.2: 1138 | version "0.3.2" 1139 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" 1140 | integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== 1141 | dependencies: 1142 | debug "^2.6.9" 1143 | resolve "^1.5.0" 1144 | 1145 | eslint-module-utils@^2.4.0: 1146 | version "2.4.1" 1147 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" 1148 | integrity sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw== 1149 | dependencies: 1150 | debug "^2.6.8" 1151 | pkg-dir "^2.0.0" 1152 | 1153 | eslint-plugin-import@^2.18.2: 1154 | version "2.18.2" 1155 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" 1156 | integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== 1157 | dependencies: 1158 | array-includes "^3.0.3" 1159 | contains-path "^0.1.0" 1160 | debug "^2.6.9" 1161 | doctrine "1.5.0" 1162 | eslint-import-resolver-node "^0.3.2" 1163 | eslint-module-utils "^2.4.0" 1164 | has "^1.0.3" 1165 | minimatch "^3.0.4" 1166 | object.values "^1.1.0" 1167 | read-pkg-up "^2.0.0" 1168 | resolve "^1.11.0" 1169 | 1170 | eslint-plugin-mocha@^6.1.0: 1171 | version "6.1.0" 1172 | resolved "https://registry.yarnpkg.com/eslint-plugin-mocha/-/eslint-plugin-mocha-6.1.0.tgz#4950ceea8e51b1f4265116c0d03d0cbae86d0a6f" 1173 | integrity sha512-EQj355rhaSGOLP6WH9P9xu+0Xuy+G5dZUuRTlLPNpICw5x0zrqK+uxQZvMVKWO9zOJA4PDVR1XHO0rm9wbOLuA== 1174 | dependencies: 1175 | ramda "^0.26.1" 1176 | 1177 | eslint-scope@^5.0.0: 1178 | version "5.0.0" 1179 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" 1180 | integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== 1181 | dependencies: 1182 | esrecurse "^4.1.0" 1183 | estraverse "^4.1.1" 1184 | 1185 | eslint-utils@^1.4.2: 1186 | version "1.4.2" 1187 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" 1188 | integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== 1189 | dependencies: 1190 | eslint-visitor-keys "^1.0.0" 1191 | 1192 | eslint-visitor-keys@^1.0.0: 1193 | version "1.0.0" 1194 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" 1195 | 1196 | eslint-visitor-keys@^1.1.0: 1197 | version "1.1.0" 1198 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" 1199 | integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== 1200 | 1201 | eslint@^6.3.0: 1202 | version "6.3.0" 1203 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.3.0.tgz#1f1a902f67bfd4c354e7288b81e40654d927eb6a" 1204 | integrity sha512-ZvZTKaqDue+N8Y9g0kp6UPZtS4FSY3qARxBs7p4f0H0iof381XHduqVerFWtK8DPtKmemqbqCFENWSQgPR/Gow== 1205 | dependencies: 1206 | "@babel/code-frame" "^7.0.0" 1207 | ajv "^6.10.0" 1208 | chalk "^2.1.0" 1209 | cross-spawn "^6.0.5" 1210 | debug "^4.0.1" 1211 | doctrine "^3.0.0" 1212 | eslint-scope "^5.0.0" 1213 | eslint-utils "^1.4.2" 1214 | eslint-visitor-keys "^1.1.0" 1215 | espree "^6.1.1" 1216 | esquery "^1.0.1" 1217 | esutils "^2.0.2" 1218 | file-entry-cache "^5.0.1" 1219 | functional-red-black-tree "^1.0.1" 1220 | glob-parent "^5.0.0" 1221 | globals "^11.7.0" 1222 | ignore "^4.0.6" 1223 | import-fresh "^3.0.0" 1224 | imurmurhash "^0.1.4" 1225 | inquirer "^6.4.1" 1226 | is-glob "^4.0.0" 1227 | js-yaml "^3.13.1" 1228 | json-stable-stringify-without-jsonify "^1.0.1" 1229 | levn "^0.3.0" 1230 | lodash "^4.17.14" 1231 | minimatch "^3.0.4" 1232 | mkdirp "^0.5.1" 1233 | natural-compare "^1.4.0" 1234 | optionator "^0.8.2" 1235 | progress "^2.0.0" 1236 | regexpp "^2.0.1" 1237 | semver "^6.1.2" 1238 | strip-ansi "^5.2.0" 1239 | strip-json-comments "^3.0.1" 1240 | table "^5.2.3" 1241 | text-table "^0.2.0" 1242 | v8-compile-cache "^2.0.3" 1243 | 1244 | espree@^6.1.1: 1245 | version "6.1.1" 1246 | resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.1.tgz#7f80e5f7257fc47db450022d723e356daeb1e5de" 1247 | integrity sha512-EYbr8XZUhWbYCqQRW0duU5LxzL5bETN6AjKBGy1302qqzPaCH10QbRg3Wvco79Z8x9WbiE8HYB4e75xl6qUYvQ== 1248 | dependencies: 1249 | acorn "^7.0.0" 1250 | acorn-jsx "^5.0.2" 1251 | eslint-visitor-keys "^1.1.0" 1252 | 1253 | esprima@^4.0.0: 1254 | version "4.0.0" 1255 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" 1256 | 1257 | esquery@^1.0.1: 1258 | version "1.0.1" 1259 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" 1260 | integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== 1261 | dependencies: 1262 | estraverse "^4.0.0" 1263 | 1264 | esrecurse@^4.1.0: 1265 | version "4.2.0" 1266 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" 1267 | dependencies: 1268 | estraverse "^4.1.0" 1269 | object-assign "^4.0.1" 1270 | 1271 | estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1: 1272 | version "4.2.0" 1273 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 1274 | 1275 | esutils@^2.0.2: 1276 | version "2.0.2" 1277 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 1278 | 1279 | execa@^1.0.0: 1280 | version "1.0.0" 1281 | resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" 1282 | integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== 1283 | dependencies: 1284 | cross-spawn "^6.0.0" 1285 | get-stream "^4.0.0" 1286 | is-stream "^1.1.0" 1287 | npm-run-path "^2.0.0" 1288 | p-finally "^1.0.0" 1289 | signal-exit "^3.0.0" 1290 | strip-eof "^1.0.0" 1291 | 1292 | expand-brackets@^2.1.4: 1293 | version "2.1.4" 1294 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" 1295 | dependencies: 1296 | debug "^2.3.3" 1297 | define-property "^0.2.5" 1298 | extend-shallow "^2.0.1" 1299 | posix-character-classes "^0.1.0" 1300 | regex-not "^1.0.0" 1301 | snapdragon "^0.8.1" 1302 | to-regex "^3.0.1" 1303 | 1304 | expand-tilde@^2.0.0, expand-tilde@^2.0.2: 1305 | version "2.0.2" 1306 | resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" 1307 | integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= 1308 | dependencies: 1309 | homedir-polyfill "^1.0.1" 1310 | 1311 | extend-shallow@^2.0.1: 1312 | version "2.0.1" 1313 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" 1314 | dependencies: 1315 | is-extendable "^0.1.0" 1316 | 1317 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 1318 | version "3.0.2" 1319 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" 1320 | dependencies: 1321 | assign-symbols "^1.0.0" 1322 | is-extendable "^1.0.1" 1323 | 1324 | extend@~3.0.2: 1325 | version "3.0.2" 1326 | resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" 1327 | integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== 1328 | 1329 | external-editor@^3.0.3: 1330 | version "3.1.0" 1331 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" 1332 | integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== 1333 | dependencies: 1334 | chardet "^0.7.0" 1335 | iconv-lite "^0.4.24" 1336 | tmp "^0.0.33" 1337 | 1338 | extglob@^2.0.4: 1339 | version "2.0.4" 1340 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" 1341 | dependencies: 1342 | array-unique "^0.3.2" 1343 | define-property "^1.0.0" 1344 | expand-brackets "^2.1.4" 1345 | extend-shallow "^2.0.1" 1346 | fragment-cache "^0.2.1" 1347 | regex-not "^1.0.0" 1348 | snapdragon "^0.8.1" 1349 | to-regex "^3.0.1" 1350 | 1351 | extsprintf@1.3.0: 1352 | version "1.3.0" 1353 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" 1354 | 1355 | extsprintf@^1.2.0: 1356 | version "1.4.0" 1357 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" 1358 | 1359 | fast-deep-equal@^2.0.1: 1360 | version "2.0.1" 1361 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" 1362 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= 1363 | 1364 | fast-json-stable-stringify@^2.0.0: 1365 | version "2.0.0" 1366 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 1367 | 1368 | fast-levenshtein@~2.0.4: 1369 | version "2.0.6" 1370 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 1371 | 1372 | figures@3.0.0: 1373 | version "3.0.0" 1374 | resolved "https://registry.yarnpkg.com/figures/-/figures-3.0.0.tgz#756275c964646163cc6f9197c7a0295dbfd04de9" 1375 | integrity sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g== 1376 | dependencies: 1377 | escape-string-regexp "^1.0.5" 1378 | 1379 | figures@^2.0.0: 1380 | version "2.0.0" 1381 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 1382 | dependencies: 1383 | escape-string-regexp "^1.0.5" 1384 | 1385 | file-entry-cache@^5.0.1: 1386 | version "5.0.1" 1387 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" 1388 | integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== 1389 | dependencies: 1390 | flat-cache "^2.0.1" 1391 | 1392 | fill-range@^4.0.0: 1393 | version "4.0.0" 1394 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" 1395 | dependencies: 1396 | extend-shallow "^2.0.1" 1397 | is-number "^3.0.0" 1398 | repeat-string "^1.6.1" 1399 | to-regex-range "^2.1.0" 1400 | 1401 | find-cache-dir@^2.1.0: 1402 | version "2.1.0" 1403 | resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" 1404 | integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== 1405 | dependencies: 1406 | commondir "^1.0.1" 1407 | make-dir "^2.0.0" 1408 | pkg-dir "^3.0.0" 1409 | 1410 | find-node-modules@2.0.0: 1411 | version "2.0.0" 1412 | resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-2.0.0.tgz#5db1fb9e668a3d451db3d618cd167cdd59e41b69" 1413 | integrity sha512-8MWIBRgJi/WpjjfVXumjPKCtmQ10B+fjx6zmSA+770GMJirLhWIzg8l763rhjl9xaeaHbnxPNRQKq2mgMhr+aw== 1414 | dependencies: 1415 | findup-sync "^3.0.0" 1416 | merge "^1.2.1" 1417 | 1418 | find-root@1.1.0: 1419 | version "1.1.0" 1420 | resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" 1421 | integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== 1422 | 1423 | find-up@3.0.0, find-up@^3.0.0: 1424 | version "3.0.0" 1425 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 1426 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 1427 | dependencies: 1428 | locate-path "^3.0.0" 1429 | 1430 | find-up@4.1.0: 1431 | version "4.1.0" 1432 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" 1433 | integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== 1434 | dependencies: 1435 | locate-path "^5.0.0" 1436 | path-exists "^4.0.0" 1437 | 1438 | find-up@^1.0.0: 1439 | version "1.1.2" 1440 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 1441 | dependencies: 1442 | path-exists "^2.0.0" 1443 | pinkie-promise "^2.0.0" 1444 | 1445 | find-up@^2.0.0, find-up@^2.1.0: 1446 | version "2.1.0" 1447 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 1448 | dependencies: 1449 | locate-path "^2.0.0" 1450 | 1451 | findup-sync@^3.0.0: 1452 | version "3.0.0" 1453 | resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" 1454 | integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== 1455 | dependencies: 1456 | detect-file "^1.0.0" 1457 | is-glob "^4.0.0" 1458 | micromatch "^3.0.4" 1459 | resolve-dir "^1.0.1" 1460 | 1461 | flat-cache@^2.0.1: 1462 | version "2.0.1" 1463 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" 1464 | integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== 1465 | dependencies: 1466 | flatted "^2.0.0" 1467 | rimraf "2.6.3" 1468 | write "1.0.3" 1469 | 1470 | flat@^4.1.0: 1471 | version "4.1.0" 1472 | resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" 1473 | integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== 1474 | dependencies: 1475 | is-buffer "~2.0.3" 1476 | 1477 | flatted@^2.0.0: 1478 | version "2.0.1" 1479 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" 1480 | integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== 1481 | 1482 | for-in@^1.0.2: 1483 | version "1.0.2" 1484 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 1485 | 1486 | foreground-child@^1.5.6: 1487 | version "1.5.6" 1488 | resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-1.5.6.tgz#4fd71ad2dfde96789b980a5c0a295937cb2f5ce9" 1489 | dependencies: 1490 | cross-spawn "^4" 1491 | signal-exit "^3.0.0" 1492 | 1493 | forever-agent@~0.6.1: 1494 | version "0.6.1" 1495 | resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" 1496 | 1497 | form-data@~2.3.2: 1498 | version "2.3.3" 1499 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" 1500 | integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== 1501 | dependencies: 1502 | asynckit "^0.4.0" 1503 | combined-stream "^1.0.6" 1504 | mime-types "^2.1.12" 1505 | 1506 | fragment-cache@^0.2.1: 1507 | version "0.2.1" 1508 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" 1509 | dependencies: 1510 | map-cache "^0.2.2" 1511 | 1512 | fs-access@1.0.1: 1513 | version "1.0.1" 1514 | resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" 1515 | integrity sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o= 1516 | dependencies: 1517 | null-check "^1.0.0" 1518 | 1519 | fs-extra@8.1.0: 1520 | version "8.1.0" 1521 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" 1522 | integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== 1523 | dependencies: 1524 | graceful-fs "^4.2.0" 1525 | jsonfile "^4.0.0" 1526 | universalify "^0.1.0" 1527 | 1528 | fs.realpath@^1.0.0: 1529 | version "1.0.0" 1530 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1531 | 1532 | function-bind@^1.0.2, function-bind@^1.1.1: 1533 | version "1.1.1" 1534 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 1535 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 1536 | 1537 | functional-red-black-tree@^1.0.1: 1538 | version "1.0.1" 1539 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 1540 | 1541 | get-caller-file@^1.0.1: 1542 | version "1.0.2" 1543 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" 1544 | 1545 | get-caller-file@^2.0.1: 1546 | version "2.0.5" 1547 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" 1548 | integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== 1549 | 1550 | get-func-name@^2.0.0: 1551 | version "2.0.0" 1552 | resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" 1553 | 1554 | get-pkg-repo@^1.0.0: 1555 | version "1.4.0" 1556 | resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" 1557 | dependencies: 1558 | hosted-git-info "^2.1.4" 1559 | meow "^3.3.0" 1560 | normalize-package-data "^2.3.0" 1561 | parse-github-repo-url "^1.3.0" 1562 | through2 "^2.0.0" 1563 | 1564 | get-stdin@^4.0.1: 1565 | version "4.0.1" 1566 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" 1567 | 1568 | get-stream@^4.0.0: 1569 | version "4.1.0" 1570 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" 1571 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 1572 | dependencies: 1573 | pump "^3.0.0" 1574 | 1575 | get-value@^2.0.3, get-value@^2.0.6: 1576 | version "2.0.6" 1577 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" 1578 | 1579 | getpass@^0.1.1: 1580 | version "0.1.7" 1581 | resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" 1582 | dependencies: 1583 | assert-plus "^1.0.0" 1584 | 1585 | git-raw-commits@2.0.0: 1586 | version "2.0.0" 1587 | resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.0.tgz#d92addf74440c14bcc5c83ecce3fb7f8a79118b5" 1588 | integrity sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg== 1589 | dependencies: 1590 | dargs "^4.0.1" 1591 | lodash.template "^4.0.2" 1592 | meow "^4.0.0" 1593 | split2 "^2.0.0" 1594 | through2 "^2.0.0" 1595 | 1596 | git-remote-origin-url@^2.0.0: 1597 | version "2.0.0" 1598 | resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" 1599 | dependencies: 1600 | gitconfiglocal "^1.0.0" 1601 | pify "^2.3.0" 1602 | 1603 | git-semver-tags@3.0.0, git-semver-tags@^3.0.0: 1604 | version "3.0.0" 1605 | resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-3.0.0.tgz#fe10147824657662c82efd9341f0fa59f74ddcba" 1606 | integrity sha512-T4C/gJ9k2Bnxz+PubtcyiMtUUKrC+Nh9Q4zaECcnmVMwJgPhrNyP/Rf+YpdRqsJbCV/+kYrCH24Xg+IeAmbOPg== 1607 | dependencies: 1608 | meow "^4.0.0" 1609 | semver "^6.0.0" 1610 | 1611 | git-semver-tags@^2.0.3: 1612 | version "2.0.3" 1613 | resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-2.0.3.tgz#48988a718acf593800f99622a952a77c405bfa34" 1614 | integrity sha512-tj4FD4ww2RX2ae//jSrXZzrocla9db5h0V7ikPl1P/WwoZar9epdUhwR7XHXSgc+ZkNq72BEEerqQuicoEQfzA== 1615 | dependencies: 1616 | meow "^4.0.0" 1617 | semver "^6.0.0" 1618 | 1619 | gitconfiglocal@^1.0.0: 1620 | version "1.0.0" 1621 | resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" 1622 | dependencies: 1623 | ini "^1.3.2" 1624 | 1625 | glob-parent@^5.0.0: 1626 | version "5.0.0" 1627 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" 1628 | integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== 1629 | dependencies: 1630 | is-glob "^4.0.1" 1631 | 1632 | glob@7.1.3: 1633 | version "7.1.3" 1634 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" 1635 | integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== 1636 | dependencies: 1637 | fs.realpath "^1.0.0" 1638 | inflight "^1.0.4" 1639 | inherits "2" 1640 | minimatch "^3.0.4" 1641 | once "^1.3.0" 1642 | path-is-absolute "^1.0.0" 1643 | 1644 | glob@7.1.4, glob@^7.1.3: 1645 | version "7.1.4" 1646 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" 1647 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== 1648 | dependencies: 1649 | fs.realpath "^1.0.0" 1650 | inflight "^1.0.4" 1651 | inherits "2" 1652 | minimatch "^3.0.4" 1653 | once "^1.3.0" 1654 | path-is-absolute "^1.0.0" 1655 | 1656 | glob@^7.0.0, glob@^7.0.5: 1657 | version "7.1.2" 1658 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" 1659 | dependencies: 1660 | fs.realpath "^1.0.0" 1661 | inflight "^1.0.4" 1662 | inherits "2" 1663 | minimatch "^3.0.4" 1664 | once "^1.3.0" 1665 | path-is-absolute "^1.0.0" 1666 | 1667 | global-dirs@^0.1.1: 1668 | version "0.1.1" 1669 | resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" 1670 | integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= 1671 | dependencies: 1672 | ini "^1.3.4" 1673 | 1674 | global-modules@^1.0.0: 1675 | version "1.0.0" 1676 | resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" 1677 | integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== 1678 | dependencies: 1679 | global-prefix "^1.0.1" 1680 | is-windows "^1.0.1" 1681 | resolve-dir "^1.0.0" 1682 | 1683 | global-prefix@^1.0.1: 1684 | version "1.0.2" 1685 | resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" 1686 | integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= 1687 | dependencies: 1688 | expand-tilde "^2.0.2" 1689 | homedir-polyfill "^1.0.1" 1690 | ini "^1.3.4" 1691 | is-windows "^1.0.1" 1692 | which "^1.2.14" 1693 | 1694 | globals@^11.1.0, globals@^11.7.0: 1695 | version "11.12.0" 1696 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1697 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1698 | 1699 | graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: 1700 | version "4.1.11" 1701 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 1702 | 1703 | graceful-fs@^4.1.15, graceful-fs@^4.2.0: 1704 | version "4.2.2" 1705 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" 1706 | integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== 1707 | 1708 | growl@1.10.5, "growl@~> 1.10.0": 1709 | version "1.10.5" 1710 | resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" 1711 | integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== 1712 | 1713 | handlebars@^4.1.2: 1714 | version "4.2.0" 1715 | resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.2.0.tgz#57ce8d2175b9bbb3d8b3cf3e4217b1aec8ddcb2e" 1716 | integrity sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw== 1717 | dependencies: 1718 | neo-async "^2.6.0" 1719 | optimist "^0.6.1" 1720 | source-map "^0.6.1" 1721 | optionalDependencies: 1722 | uglify-js "^3.1.4" 1723 | 1724 | har-schema@^2.0.0: 1725 | version "2.0.0" 1726 | resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" 1727 | 1728 | har-validator@~5.1.0: 1729 | version "5.1.3" 1730 | resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" 1731 | integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== 1732 | dependencies: 1733 | ajv "^6.5.5" 1734 | har-schema "^2.0.0" 1735 | 1736 | has-flag@^2.0.0: 1737 | version "2.0.0" 1738 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" 1739 | 1740 | has-flag@^3.0.0: 1741 | version "3.0.0" 1742 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1743 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1744 | 1745 | has-symbols@^1.0.0: 1746 | version "1.0.0" 1747 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 1748 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 1749 | 1750 | has-value@^0.3.1: 1751 | version "0.3.1" 1752 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" 1753 | dependencies: 1754 | get-value "^2.0.3" 1755 | has-values "^0.1.4" 1756 | isobject "^2.0.0" 1757 | 1758 | has-value@^1.0.0: 1759 | version "1.0.0" 1760 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" 1761 | dependencies: 1762 | get-value "^2.0.6" 1763 | has-values "^1.0.0" 1764 | isobject "^3.0.0" 1765 | 1766 | has-values@^0.1.4: 1767 | version "0.1.4" 1768 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" 1769 | 1770 | has-values@^1.0.0: 1771 | version "1.0.0" 1772 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" 1773 | dependencies: 1774 | is-number "^3.0.0" 1775 | kind-of "^4.0.0" 1776 | 1777 | has@^1.0.1: 1778 | version "1.0.1" 1779 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" 1780 | dependencies: 1781 | function-bind "^1.0.2" 1782 | 1783 | has@^1.0.3: 1784 | version "1.0.3" 1785 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 1786 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1787 | dependencies: 1788 | function-bind "^1.1.1" 1789 | 1790 | hasha@^3.0.0: 1791 | version "3.0.0" 1792 | resolved "https://registry.yarnpkg.com/hasha/-/hasha-3.0.0.tgz#52a32fab8569d41ca69a61ff1a214f8eb7c8bd39" 1793 | integrity sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk= 1794 | dependencies: 1795 | is-stream "^1.0.1" 1796 | 1797 | he@1.2.0: 1798 | version "1.2.0" 1799 | resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" 1800 | integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== 1801 | 1802 | homedir-polyfill@^1.0.1: 1803 | version "1.0.3" 1804 | resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" 1805 | integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== 1806 | dependencies: 1807 | parse-passwd "^1.0.0" 1808 | 1809 | hosted-git-info@^2.1.4: 1810 | version "2.5.0" 1811 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" 1812 | 1813 | http-signature@~1.2.0: 1814 | version "1.2.0" 1815 | resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" 1816 | dependencies: 1817 | assert-plus "^1.0.0" 1818 | jsprim "^1.2.2" 1819 | sshpk "^1.7.0" 1820 | 1821 | iconv-lite@^0.4.24: 1822 | version "0.4.24" 1823 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 1824 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1825 | dependencies: 1826 | safer-buffer ">= 2.1.2 < 3" 1827 | 1828 | ignore@^4.0.6: 1829 | version "4.0.6" 1830 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 1831 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 1832 | 1833 | import-fresh@^2.0.0: 1834 | version "2.0.0" 1835 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" 1836 | integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= 1837 | dependencies: 1838 | caller-path "^2.0.0" 1839 | resolve-from "^3.0.0" 1840 | 1841 | import-fresh@^3.0.0: 1842 | version "3.1.0" 1843 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz#6d33fa1dcef6df930fae003446f33415af905118" 1844 | integrity sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ== 1845 | dependencies: 1846 | parent-module "^1.0.0" 1847 | resolve-from "^4.0.0" 1848 | 1849 | imurmurhash@^0.1.4: 1850 | version "0.1.4" 1851 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 1852 | 1853 | indent-string@^2.1.0: 1854 | version "2.1.0" 1855 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" 1856 | dependencies: 1857 | repeating "^2.0.0" 1858 | 1859 | indent-string@^3.0.0: 1860 | version "3.2.0" 1861 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" 1862 | 1863 | inflight@^1.0.4: 1864 | version "1.0.6" 1865 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1866 | dependencies: 1867 | once "^1.3.0" 1868 | wrappy "1" 1869 | 1870 | inherits@2, inherits@^2.0.3, inherits@~2.0.3: 1871 | version "2.0.3" 1872 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 1873 | 1874 | ini@^1.3.2, ini@^1.3.4: 1875 | version "1.3.5" 1876 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" 1877 | 1878 | inquirer@6.5.0: 1879 | version "6.5.0" 1880 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.0.tgz#2303317efc9a4ea7ec2e2df6f86569b734accf42" 1881 | integrity sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA== 1882 | dependencies: 1883 | ansi-escapes "^3.2.0" 1884 | chalk "^2.4.2" 1885 | cli-cursor "^2.1.0" 1886 | cli-width "^2.0.0" 1887 | external-editor "^3.0.3" 1888 | figures "^2.0.0" 1889 | lodash "^4.17.12" 1890 | mute-stream "0.0.7" 1891 | run-async "^2.2.0" 1892 | rxjs "^6.4.0" 1893 | string-width "^2.1.0" 1894 | strip-ansi "^5.1.0" 1895 | through "^2.3.6" 1896 | 1897 | inquirer@^6.4.1: 1898 | version "6.5.2" 1899 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" 1900 | integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== 1901 | dependencies: 1902 | ansi-escapes "^3.2.0" 1903 | chalk "^2.4.2" 1904 | cli-cursor "^2.1.0" 1905 | cli-width "^2.0.0" 1906 | external-editor "^3.0.3" 1907 | figures "^2.0.0" 1908 | lodash "^4.17.12" 1909 | mute-stream "0.0.7" 1910 | run-async "^2.2.0" 1911 | rxjs "^6.4.0" 1912 | string-width "^2.1.0" 1913 | strip-ansi "^5.1.0" 1914 | through "^2.3.6" 1915 | 1916 | interpret@^1.0.0: 1917 | version "1.1.0" 1918 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" 1919 | 1920 | invert-kv@^2.0.0: 1921 | version "2.0.0" 1922 | resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" 1923 | integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== 1924 | 1925 | is-accessor-descriptor@^0.1.6: 1926 | version "0.1.6" 1927 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" 1928 | dependencies: 1929 | kind-of "^3.0.2" 1930 | 1931 | is-accessor-descriptor@^1.0.0: 1932 | version "1.0.0" 1933 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" 1934 | dependencies: 1935 | kind-of "^6.0.0" 1936 | 1937 | is-arrayish@^0.2.1: 1938 | version "0.2.1" 1939 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 1940 | 1941 | is-buffer@^1.1.5: 1942 | version "1.1.6" 1943 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" 1944 | 1945 | is-buffer@~2.0.3: 1946 | version "2.0.3" 1947 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" 1948 | integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw== 1949 | 1950 | is-builtin-module@^1.0.0: 1951 | version "1.0.0" 1952 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 1953 | dependencies: 1954 | builtin-modules "^1.0.0" 1955 | 1956 | is-callable@^1.1.4: 1957 | version "1.1.4" 1958 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 1959 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 1960 | 1961 | is-data-descriptor@^0.1.4: 1962 | version "0.1.4" 1963 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" 1964 | dependencies: 1965 | kind-of "^3.0.2" 1966 | 1967 | is-data-descriptor@^1.0.0: 1968 | version "1.0.0" 1969 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" 1970 | dependencies: 1971 | kind-of "^6.0.0" 1972 | 1973 | is-date-object@^1.0.1: 1974 | version "1.0.1" 1975 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 1976 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 1977 | 1978 | is-descriptor@^0.1.0: 1979 | version "0.1.6" 1980 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" 1981 | dependencies: 1982 | is-accessor-descriptor "^0.1.6" 1983 | is-data-descriptor "^0.1.4" 1984 | kind-of "^5.0.0" 1985 | 1986 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1987 | version "1.0.2" 1988 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" 1989 | dependencies: 1990 | is-accessor-descriptor "^1.0.0" 1991 | is-data-descriptor "^1.0.0" 1992 | kind-of "^6.0.2" 1993 | 1994 | is-directory@^0.3.1: 1995 | version "0.3.1" 1996 | resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" 1997 | integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= 1998 | 1999 | is-extendable@^0.1.0, is-extendable@^0.1.1: 2000 | version "0.1.1" 2001 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 2002 | 2003 | is-extendable@^1.0.1: 2004 | version "1.0.1" 2005 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" 2006 | dependencies: 2007 | is-plain-object "^2.0.4" 2008 | 2009 | is-extglob@^2.1.1: 2010 | version "2.1.1" 2011 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 2012 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 2013 | 2014 | is-finite@^1.0.0: 2015 | version "1.0.2" 2016 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" 2017 | dependencies: 2018 | number-is-nan "^1.0.0" 2019 | 2020 | is-fullwidth-code-point@^1.0.0: 2021 | version "1.0.0" 2022 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 2023 | dependencies: 2024 | number-is-nan "^1.0.0" 2025 | 2026 | is-fullwidth-code-point@^2.0.0: 2027 | version "2.0.0" 2028 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 2029 | 2030 | is-glob@^4.0.0, is-glob@^4.0.1: 2031 | version "4.0.1" 2032 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 2033 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 2034 | dependencies: 2035 | is-extglob "^2.1.1" 2036 | 2037 | is-number@^3.0.0: 2038 | version "3.0.0" 2039 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 2040 | dependencies: 2041 | kind-of "^3.0.2" 2042 | 2043 | is-number@^4.0.0: 2044 | version "4.0.0" 2045 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" 2046 | 2047 | is-obj@^1.0.0: 2048 | version "1.0.1" 2049 | resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" 2050 | 2051 | is-odd@^2.0.0: 2052 | version "2.0.0" 2053 | resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" 2054 | dependencies: 2055 | is-number "^4.0.0" 2056 | 2057 | is-plain-obj@^1.1.0: 2058 | version "1.1.0" 2059 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" 2060 | 2061 | is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: 2062 | version "2.0.4" 2063 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" 2064 | dependencies: 2065 | isobject "^3.0.1" 2066 | 2067 | is-promise@^2.1.0: 2068 | version "2.1.0" 2069 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 2070 | 2071 | is-regex@^1.0.4: 2072 | version "1.0.4" 2073 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 2074 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 2075 | dependencies: 2076 | has "^1.0.1" 2077 | 2078 | is-stream@^1.0.1, is-stream@^1.1.0: 2079 | version "1.1.0" 2080 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 2081 | 2082 | is-symbol@^1.0.2: 2083 | version "1.0.2" 2084 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 2085 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 2086 | dependencies: 2087 | has-symbols "^1.0.0" 2088 | 2089 | is-text-path@^2.0.0: 2090 | version "2.0.0" 2091 | resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-2.0.0.tgz#b2484e2b720a633feb2e85b67dc193ff72c75636" 2092 | integrity sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw== 2093 | dependencies: 2094 | text-extensions "^2.0.0" 2095 | 2096 | is-typedarray@~1.0.0: 2097 | version "1.0.0" 2098 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 2099 | 2100 | is-utf8@^0.2.0, is-utf8@^0.2.1: 2101 | version "0.2.1" 2102 | resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" 2103 | integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= 2104 | 2105 | is-windows@^1.0.1, is-windows@^1.0.2: 2106 | version "1.0.2" 2107 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 2108 | 2109 | is@^3.3.0: 2110 | version "3.3.0" 2111 | resolved "https://registry.yarnpkg.com/is/-/is-3.3.0.tgz#61cff6dd3c4193db94a3d62582072b44e5645d79" 2112 | integrity sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg== 2113 | 2114 | isarray@0.0.1: 2115 | version "0.0.1" 2116 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" 2117 | 2118 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: 2119 | version "1.0.0" 2120 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 2121 | 2122 | isexe@^2.0.0: 2123 | version "2.0.0" 2124 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 2125 | 2126 | isobject@^2.0.0: 2127 | version "2.1.0" 2128 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 2129 | dependencies: 2130 | isarray "1.0.0" 2131 | 2132 | isobject@^3.0.0, isobject@^3.0.1: 2133 | version "3.0.1" 2134 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" 2135 | 2136 | isstream@~0.1.2: 2137 | version "0.1.2" 2138 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" 2139 | 2140 | istanbul-lib-coverage@^2.0.5: 2141 | version "2.0.5" 2142 | resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" 2143 | integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== 2144 | 2145 | istanbul-lib-hook@^2.0.7: 2146 | version "2.0.7" 2147 | resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" 2148 | integrity sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA== 2149 | dependencies: 2150 | append-transform "^1.0.0" 2151 | 2152 | istanbul-lib-instrument@^3.3.0: 2153 | version "3.3.0" 2154 | resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" 2155 | integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== 2156 | dependencies: 2157 | "@babel/generator" "^7.4.0" 2158 | "@babel/parser" "^7.4.3" 2159 | "@babel/template" "^7.4.0" 2160 | "@babel/traverse" "^7.4.3" 2161 | "@babel/types" "^7.4.0" 2162 | istanbul-lib-coverage "^2.0.5" 2163 | semver "^6.0.0" 2164 | 2165 | istanbul-lib-report@^2.0.8: 2166 | version "2.0.8" 2167 | resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" 2168 | integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== 2169 | dependencies: 2170 | istanbul-lib-coverage "^2.0.5" 2171 | make-dir "^2.1.0" 2172 | supports-color "^6.1.0" 2173 | 2174 | istanbul-lib-source-maps@^3.0.6: 2175 | version "3.0.6" 2176 | resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" 2177 | integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== 2178 | dependencies: 2179 | debug "^4.1.1" 2180 | istanbul-lib-coverage "^2.0.5" 2181 | make-dir "^2.1.0" 2182 | rimraf "^2.6.3" 2183 | source-map "^0.6.1" 2184 | 2185 | istanbul-reports@^2.2.4: 2186 | version "2.2.6" 2187 | resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" 2188 | integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA== 2189 | dependencies: 2190 | handlebars "^4.1.2" 2191 | 2192 | js-tokens@^4.0.0: 2193 | version "4.0.0" 2194 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 2195 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 2196 | 2197 | js-yaml@3.13.1, js-yaml@^3.13.1: 2198 | version "3.13.1" 2199 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 2200 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 2201 | dependencies: 2202 | argparse "^1.0.7" 2203 | esprima "^4.0.0" 2204 | 2205 | jsbn@~0.1.0: 2206 | version "0.1.1" 2207 | resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" 2208 | 2209 | jsesc@^2.5.1: 2210 | version "2.5.2" 2211 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 2212 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 2213 | 2214 | json-parse-better-errors@^1.0.1: 2215 | version "1.0.2" 2216 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 2217 | 2218 | json-schema-traverse@^0.4.1: 2219 | version "0.4.1" 2220 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 2221 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 2222 | 2223 | json-schema@0.2.3: 2224 | version "0.2.3" 2225 | resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" 2226 | 2227 | json-stable-stringify-without-jsonify@^1.0.1: 2228 | version "1.0.1" 2229 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 2230 | 2231 | json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: 2232 | version "5.0.1" 2233 | resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" 2234 | 2235 | jsonfile@^4.0.0: 2236 | version "4.0.0" 2237 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" 2238 | integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= 2239 | optionalDependencies: 2240 | graceful-fs "^4.1.6" 2241 | 2242 | jsonparse@^1.2.0: 2243 | version "1.3.1" 2244 | resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" 2245 | 2246 | jsprim@^1.2.2: 2247 | version "1.4.1" 2248 | resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" 2249 | dependencies: 2250 | assert-plus "1.0.0" 2251 | extsprintf "1.3.0" 2252 | json-schema "0.2.3" 2253 | verror "1.10.0" 2254 | 2255 | just-extend@^4.0.2: 2256 | version "4.0.2" 2257 | resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.0.2.tgz#f3f47f7dfca0f989c55410a7ebc8854b07108afc" 2258 | integrity sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw== 2259 | 2260 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 2261 | version "3.2.2" 2262 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 2263 | dependencies: 2264 | is-buffer "^1.1.5" 2265 | 2266 | kind-of@^4.0.0: 2267 | version "4.0.0" 2268 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 2269 | dependencies: 2270 | is-buffer "^1.1.5" 2271 | 2272 | kind-of@^5.0.0: 2273 | version "5.1.0" 2274 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" 2275 | 2276 | kind-of@^6.0.0, kind-of@^6.0.2: 2277 | version "6.0.2" 2278 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" 2279 | 2280 | lcid@^2.0.0: 2281 | version "2.0.0" 2282 | resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" 2283 | integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== 2284 | dependencies: 2285 | invert-kv "^2.0.0" 2286 | 2287 | lcov-parse@^0.0.10: 2288 | version "0.0.10" 2289 | resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-0.0.10.tgz#1b0b8ff9ac9c7889250582b70b71315d9da6d9a3" 2290 | 2291 | levn@^0.3.0, levn@~0.3.0: 2292 | version "0.3.0" 2293 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 2294 | dependencies: 2295 | prelude-ls "~1.1.2" 2296 | type-check "~0.3.2" 2297 | 2298 | load-json-file@^1.0.0: 2299 | version "1.1.0" 2300 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" 2301 | dependencies: 2302 | graceful-fs "^4.1.2" 2303 | parse-json "^2.2.0" 2304 | pify "^2.0.0" 2305 | pinkie-promise "^2.0.0" 2306 | strip-bom "^2.0.0" 2307 | 2308 | load-json-file@^2.0.0: 2309 | version "2.0.0" 2310 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 2311 | dependencies: 2312 | graceful-fs "^4.1.2" 2313 | parse-json "^2.2.0" 2314 | pify "^2.0.0" 2315 | strip-bom "^3.0.0" 2316 | 2317 | load-json-file@^4.0.0: 2318 | version "4.0.0" 2319 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" 2320 | dependencies: 2321 | graceful-fs "^4.1.2" 2322 | parse-json "^4.0.0" 2323 | pify "^3.0.0" 2324 | strip-bom "^3.0.0" 2325 | 2326 | locate-path@^2.0.0: 2327 | version "2.0.0" 2328 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 2329 | dependencies: 2330 | p-locate "^2.0.0" 2331 | path-exists "^3.0.0" 2332 | 2333 | locate-path@^3.0.0: 2334 | version "3.0.0" 2335 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 2336 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 2337 | dependencies: 2338 | p-locate "^3.0.0" 2339 | path-exists "^3.0.0" 2340 | 2341 | locate-path@^5.0.0: 2342 | version "5.0.0" 2343 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" 2344 | integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== 2345 | dependencies: 2346 | p-locate "^4.1.0" 2347 | 2348 | lodash._reinterpolate@~3.0.0: 2349 | version "3.0.0" 2350 | resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" 2351 | 2352 | lodash.flattendeep@^4.4.0: 2353 | version "4.4.0" 2354 | resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" 2355 | integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= 2356 | 2357 | lodash.ismatch@^4.4.0: 2358 | version "4.4.0" 2359 | resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" 2360 | integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= 2361 | 2362 | lodash.map@^4.5.1: 2363 | version "4.6.0" 2364 | resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" 2365 | 2366 | lodash.template@^4.0.2: 2367 | version "4.4.0" 2368 | resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" 2369 | dependencies: 2370 | lodash._reinterpolate "~3.0.0" 2371 | lodash.templatesettings "^4.0.0" 2372 | 2373 | lodash.templatesettings@^4.0.0: 2374 | version "4.1.0" 2375 | resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" 2376 | dependencies: 2377 | lodash._reinterpolate "~3.0.0" 2378 | 2379 | lodash@4.17.14: 2380 | version "4.17.14" 2381 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.14.tgz#9ce487ae66c96254fe20b599f21b6816028078ba" 2382 | integrity sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw== 2383 | 2384 | lodash@4.17.15, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15: 2385 | version "4.17.15" 2386 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" 2387 | integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== 2388 | 2389 | lodash@^4.2.1: 2390 | version "4.17.5" 2391 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" 2392 | 2393 | log-driver@^1.2.7: 2394 | version "1.2.7" 2395 | resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" 2396 | integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== 2397 | 2398 | log-symbols@2.2.0: 2399 | version "2.2.0" 2400 | resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" 2401 | integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== 2402 | dependencies: 2403 | chalk "^2.0.1" 2404 | 2405 | lolex@^4.1.0, lolex@^4.2.0: 2406 | version "4.2.0" 2407 | resolved "https://registry.yarnpkg.com/lolex/-/lolex-4.2.0.tgz#ddbd7f6213ca1ea5826901ab1222b65d714b3cd7" 2408 | integrity sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg== 2409 | 2410 | longest@^2.0.1: 2411 | version "2.0.1" 2412 | resolved "https://registry.yarnpkg.com/longest/-/longest-2.0.1.tgz#781e183296aa94f6d4d916dc335d0d17aefa23f8" 2413 | integrity sha1-eB4YMpaqlPbU2RbcM10NF676I/g= 2414 | 2415 | loud-rejection@^1.0.0: 2416 | version "1.6.0" 2417 | resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" 2418 | dependencies: 2419 | currently-unhandled "^0.4.1" 2420 | signal-exit "^3.0.0" 2421 | 2422 | lru-cache@^4.0.1: 2423 | version "4.1.1" 2424 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" 2425 | dependencies: 2426 | pseudomap "^1.0.2" 2427 | yallist "^2.1.2" 2428 | 2429 | make-dir@^2.0.0, make-dir@^2.1.0: 2430 | version "2.1.0" 2431 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" 2432 | integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== 2433 | dependencies: 2434 | pify "^4.0.1" 2435 | semver "^5.6.0" 2436 | 2437 | map-age-cleaner@^0.1.1: 2438 | version "0.1.3" 2439 | resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" 2440 | integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== 2441 | dependencies: 2442 | p-defer "^1.0.0" 2443 | 2444 | map-cache@^0.2.2: 2445 | version "0.2.2" 2446 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 2447 | 2448 | map-obj@^1.0.0, map-obj@^1.0.1: 2449 | version "1.0.1" 2450 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" 2451 | 2452 | map-obj@^2.0.0: 2453 | version "2.0.0" 2454 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" 2455 | 2456 | map-visit@^1.0.0: 2457 | version "1.0.0" 2458 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" 2459 | dependencies: 2460 | object-visit "^1.0.0" 2461 | 2462 | mem@^4.0.0: 2463 | version "4.3.0" 2464 | resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" 2465 | integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== 2466 | dependencies: 2467 | map-age-cleaner "^0.1.1" 2468 | mimic-fn "^2.0.0" 2469 | p-is-promise "^2.0.0" 2470 | 2471 | meow@^3.3.0: 2472 | version "3.7.0" 2473 | resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" 2474 | dependencies: 2475 | camelcase-keys "^2.0.0" 2476 | decamelize "^1.1.2" 2477 | loud-rejection "^1.0.0" 2478 | map-obj "^1.0.1" 2479 | minimist "^1.1.3" 2480 | normalize-package-data "^2.3.4" 2481 | object-assign "^4.0.1" 2482 | read-pkg-up "^1.0.1" 2483 | redent "^1.0.0" 2484 | trim-newlines "^1.0.0" 2485 | 2486 | meow@^4.0.0: 2487 | version "4.0.0" 2488 | resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.0.tgz#fd5855dd008db5b92c552082db1c307cba20b29d" 2489 | dependencies: 2490 | camelcase-keys "^4.0.0" 2491 | decamelize-keys "^1.0.0" 2492 | loud-rejection "^1.0.0" 2493 | minimist "^1.1.3" 2494 | minimist-options "^3.0.1" 2495 | normalize-package-data "^2.3.4" 2496 | read-pkg-up "^3.0.0" 2497 | redent "^2.0.0" 2498 | trim-newlines "^2.0.0" 2499 | 2500 | merge-source-map@^1.1.0: 2501 | version "1.1.0" 2502 | resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" 2503 | integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== 2504 | dependencies: 2505 | source-map "^0.6.1" 2506 | 2507 | merge@^1.2.1: 2508 | version "1.2.1" 2509 | resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" 2510 | integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== 2511 | 2512 | micromatch@^3.0.4: 2513 | version "3.1.10" 2514 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" 2515 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 2516 | dependencies: 2517 | arr-diff "^4.0.0" 2518 | array-unique "^0.3.2" 2519 | braces "^2.3.1" 2520 | define-property "^2.0.2" 2521 | extend-shallow "^3.0.2" 2522 | extglob "^2.0.4" 2523 | fragment-cache "^0.2.1" 2524 | kind-of "^6.0.2" 2525 | nanomatch "^1.2.9" 2526 | object.pick "^1.3.0" 2527 | regex-not "^1.0.0" 2528 | snapdragon "^0.8.1" 2529 | to-regex "^3.0.2" 2530 | 2531 | mime-db@1.40.0: 2532 | version "1.40.0" 2533 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" 2534 | integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== 2535 | 2536 | mime-db@~1.30.0: 2537 | version "1.30.0" 2538 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" 2539 | 2540 | mime-types@^2.1.12: 2541 | version "2.1.17" 2542 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" 2543 | dependencies: 2544 | mime-db "~1.30.0" 2545 | 2546 | mime-types@~2.1.19: 2547 | version "2.1.24" 2548 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" 2549 | integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== 2550 | dependencies: 2551 | mime-db "1.40.0" 2552 | 2553 | mimic-fn@^1.0.0: 2554 | version "1.1.0" 2555 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" 2556 | 2557 | mimic-fn@^2.0.0: 2558 | version "2.1.0" 2559 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" 2560 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 2561 | 2562 | minimatch@3.0.4, minimatch@^3.0.4: 2563 | version "3.0.4" 2564 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 2565 | dependencies: 2566 | brace-expansion "^1.1.7" 2567 | 2568 | minimist-options@^3.0.1: 2569 | version "3.0.2" 2570 | resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" 2571 | dependencies: 2572 | arrify "^1.0.1" 2573 | is-plain-obj "^1.1.0" 2574 | 2575 | minimist@0.0.8: 2576 | version "0.0.8" 2577 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 2578 | 2579 | minimist@1.2.0, minimist@^1.1.3, minimist@^1.2.0: 2580 | version "1.2.0" 2581 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 2582 | 2583 | minimist@~0.0.1: 2584 | version "0.0.10" 2585 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" 2586 | 2587 | mixin-deep@^1.2.0: 2588 | version "1.3.1" 2589 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" 2590 | dependencies: 2591 | for-in "^1.0.2" 2592 | is-extendable "^1.0.1" 2593 | 2594 | mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: 2595 | version "0.5.1" 2596 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 2597 | dependencies: 2598 | minimist "0.0.8" 2599 | 2600 | mocha-lcov-reporter@^1.3.0: 2601 | version "1.3.0" 2602 | resolved "https://registry.yarnpkg.com/mocha-lcov-reporter/-/mocha-lcov-reporter-1.3.0.tgz#469bdef4f8afc9a116056f079df6182d0afb0384" 2603 | 2604 | mocha@^6.2.0: 2605 | version "6.2.0" 2606 | resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.0.tgz#f896b642843445d1bb8bca60eabd9206b8916e56" 2607 | integrity sha512-qwfFgY+7EKAAUAdv7VYMZQknI7YJSGesxHyhn6qD52DV8UcSZs5XwCifcZGMVIE4a5fbmhvbotxC0DLQ0oKohQ== 2608 | dependencies: 2609 | ansi-colors "3.2.3" 2610 | browser-stdout "1.3.1" 2611 | debug "3.2.6" 2612 | diff "3.5.0" 2613 | escape-string-regexp "1.0.5" 2614 | find-up "3.0.0" 2615 | glob "7.1.3" 2616 | growl "1.10.5" 2617 | he "1.2.0" 2618 | js-yaml "3.13.1" 2619 | log-symbols "2.2.0" 2620 | minimatch "3.0.4" 2621 | mkdirp "0.5.1" 2622 | ms "2.1.1" 2623 | node-environment-flags "1.0.5" 2624 | object.assign "4.1.0" 2625 | strip-json-comments "2.0.1" 2626 | supports-color "6.0.0" 2627 | which "1.3.1" 2628 | wide-align "1.1.3" 2629 | yargs "13.2.2" 2630 | yargs-parser "13.0.0" 2631 | yargs-unparser "1.5.0" 2632 | 2633 | modify-values@^1.0.0: 2634 | version "1.0.1" 2635 | resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" 2636 | 2637 | ms@2.0.0: 2638 | version "2.0.0" 2639 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 2640 | 2641 | ms@2.1.1: 2642 | version "2.1.1" 2643 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 2644 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 2645 | 2646 | ms@^2.1.1: 2647 | version "2.1.2" 2648 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 2649 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 2650 | 2651 | mute-stream@0.0.7: 2652 | version "0.0.7" 2653 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 2654 | 2655 | nanomatch@^1.2.9: 2656 | version "1.2.9" 2657 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" 2658 | dependencies: 2659 | arr-diff "^4.0.0" 2660 | array-unique "^0.3.2" 2661 | define-property "^2.0.2" 2662 | extend-shallow "^3.0.2" 2663 | fragment-cache "^0.2.1" 2664 | is-odd "^2.0.0" 2665 | is-windows "^1.0.2" 2666 | kind-of "^6.0.2" 2667 | object.pick "^1.3.0" 2668 | regex-not "^1.0.0" 2669 | snapdragon "^0.8.1" 2670 | to-regex "^3.0.1" 2671 | 2672 | natural-compare@^1.4.0: 2673 | version "1.4.0" 2674 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 2675 | 2676 | neo-async@^2.6.0: 2677 | version "2.6.1" 2678 | resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" 2679 | integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== 2680 | 2681 | nested-error-stacks@^2.0.0: 2682 | version "2.1.0" 2683 | resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz#0fbdcf3e13fe4994781280524f8b96b0cdff9c61" 2684 | integrity sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug== 2685 | 2686 | nice-try@^1.0.4: 2687 | version "1.0.5" 2688 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 2689 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 2690 | 2691 | nise@^1.5.2: 2692 | version "1.5.2" 2693 | resolved "https://registry.yarnpkg.com/nise/-/nise-1.5.2.tgz#b6d29af10e48b321b307e10e065199338eeb2652" 2694 | integrity sha512-/6RhOUlicRCbE9s+94qCUsyE+pKlVJ5AhIv+jEE7ESKwnbXqulKZ1FYU+XAtHHWE9TinYvAxDUJAb912PwPoWA== 2695 | dependencies: 2696 | "@sinonjs/formatio" "^3.2.1" 2697 | "@sinonjs/text-encoding" "^0.7.1" 2698 | just-extend "^4.0.2" 2699 | lolex "^4.1.0" 2700 | path-to-regexp "^1.7.0" 2701 | 2702 | node-environment-flags@1.0.5: 2703 | version "1.0.5" 2704 | resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" 2705 | integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== 2706 | dependencies: 2707 | object.getownpropertydescriptors "^2.0.3" 2708 | semver "^5.7.0" 2709 | 2710 | normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5: 2711 | version "2.4.0" 2712 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" 2713 | dependencies: 2714 | hosted-git-info "^2.1.4" 2715 | is-builtin-module "^1.0.0" 2716 | semver "2 || 3 || 4 || 5" 2717 | validate-npm-package-license "^3.0.1" 2718 | 2719 | npm-run-path@^2.0.0: 2720 | version "2.0.2" 2721 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 2722 | dependencies: 2723 | path-key "^2.0.0" 2724 | 2725 | null-check@^1.0.0: 2726 | version "1.0.0" 2727 | resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" 2728 | 2729 | number-is-nan@^1.0.0: 2730 | version "1.0.1" 2731 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 2732 | 2733 | nyc@^14.1.1: 2734 | version "14.1.1" 2735 | resolved "https://registry.yarnpkg.com/nyc/-/nyc-14.1.1.tgz#151d64a6a9f9f5908a1b73233931e4a0a3075eeb" 2736 | integrity sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw== 2737 | dependencies: 2738 | archy "^1.0.0" 2739 | caching-transform "^3.0.2" 2740 | convert-source-map "^1.6.0" 2741 | cp-file "^6.2.0" 2742 | find-cache-dir "^2.1.0" 2743 | find-up "^3.0.0" 2744 | foreground-child "^1.5.6" 2745 | glob "^7.1.3" 2746 | istanbul-lib-coverage "^2.0.5" 2747 | istanbul-lib-hook "^2.0.7" 2748 | istanbul-lib-instrument "^3.3.0" 2749 | istanbul-lib-report "^2.0.8" 2750 | istanbul-lib-source-maps "^3.0.6" 2751 | istanbul-reports "^2.2.4" 2752 | js-yaml "^3.13.1" 2753 | make-dir "^2.1.0" 2754 | merge-source-map "^1.1.0" 2755 | resolve-from "^4.0.0" 2756 | rimraf "^2.6.3" 2757 | signal-exit "^3.0.2" 2758 | spawn-wrap "^1.4.2" 2759 | test-exclude "^5.2.3" 2760 | uuid "^3.3.2" 2761 | yargs "^13.2.2" 2762 | yargs-parser "^13.0.0" 2763 | 2764 | oauth-sign@~0.9.0: 2765 | version "0.9.0" 2766 | resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" 2767 | integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== 2768 | 2769 | object-assign@^4.0.1: 2770 | version "4.1.1" 2771 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 2772 | 2773 | object-copy@^0.1.0: 2774 | version "0.1.0" 2775 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" 2776 | dependencies: 2777 | copy-descriptor "^0.1.0" 2778 | define-property "^0.2.5" 2779 | kind-of "^3.0.3" 2780 | 2781 | object-inspect@^1.6.0: 2782 | version "1.6.0" 2783 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" 2784 | integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== 2785 | 2786 | object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: 2787 | version "1.1.1" 2788 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 2789 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 2790 | 2791 | object-visit@^1.0.0: 2792 | version "1.0.1" 2793 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" 2794 | dependencies: 2795 | isobject "^3.0.0" 2796 | 2797 | object.assign@4.1.0, object.assign@^4.1.0: 2798 | version "4.1.0" 2799 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 2800 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 2801 | dependencies: 2802 | define-properties "^1.1.2" 2803 | function-bind "^1.1.1" 2804 | has-symbols "^1.0.0" 2805 | object-keys "^1.0.11" 2806 | 2807 | object.entries@^1.1.0: 2808 | version "1.1.0" 2809 | resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" 2810 | integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== 2811 | dependencies: 2812 | define-properties "^1.1.3" 2813 | es-abstract "^1.12.0" 2814 | function-bind "^1.1.1" 2815 | has "^1.0.3" 2816 | 2817 | object.getownpropertydescriptors@^2.0.3: 2818 | version "2.0.3" 2819 | resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" 2820 | integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= 2821 | dependencies: 2822 | define-properties "^1.1.2" 2823 | es-abstract "^1.5.1" 2824 | 2825 | object.pick@^1.3.0: 2826 | version "1.3.0" 2827 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" 2828 | dependencies: 2829 | isobject "^3.0.1" 2830 | 2831 | object.values@^1.1.0: 2832 | version "1.1.0" 2833 | resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" 2834 | integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== 2835 | dependencies: 2836 | define-properties "^1.1.3" 2837 | es-abstract "^1.12.0" 2838 | function-bind "^1.1.1" 2839 | has "^1.0.3" 2840 | 2841 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 2842 | version "1.4.0" 2843 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 2844 | dependencies: 2845 | wrappy "1" 2846 | 2847 | onetime@^2.0.0: 2848 | version "2.0.1" 2849 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 2850 | dependencies: 2851 | mimic-fn "^1.0.0" 2852 | 2853 | optimist@^0.6.1: 2854 | version "0.6.1" 2855 | resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" 2856 | dependencies: 2857 | minimist "~0.0.1" 2858 | wordwrap "~0.0.2" 2859 | 2860 | optionator@^0.8.2: 2861 | version "0.8.2" 2862 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 2863 | dependencies: 2864 | deep-is "~0.1.3" 2865 | fast-levenshtein "~2.0.4" 2866 | levn "~0.3.0" 2867 | prelude-ls "~1.1.2" 2868 | type-check "~0.3.2" 2869 | wordwrap "~1.0.0" 2870 | 2871 | os-homedir@^1.0.1: 2872 | version "1.0.2" 2873 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 2874 | 2875 | os-locale@^3.0.0, os-locale@^3.1.0: 2876 | version "3.1.0" 2877 | resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" 2878 | integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== 2879 | dependencies: 2880 | execa "^1.0.0" 2881 | lcid "^2.0.0" 2882 | mem "^4.0.0" 2883 | 2884 | os-tmpdir@~1.0.2: 2885 | version "1.0.2" 2886 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 2887 | 2888 | p-defer@^1.0.0: 2889 | version "1.0.0" 2890 | resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" 2891 | integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= 2892 | 2893 | p-finally@^1.0.0: 2894 | version "1.0.0" 2895 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 2896 | 2897 | p-is-promise@^2.0.0: 2898 | version "2.1.0" 2899 | resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" 2900 | integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== 2901 | 2902 | p-limit@^1.1.0: 2903 | version "1.2.0" 2904 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" 2905 | dependencies: 2906 | p-try "^1.0.0" 2907 | 2908 | p-limit@^2.0.0, p-limit@^2.2.0: 2909 | version "2.2.1" 2910 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" 2911 | integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== 2912 | dependencies: 2913 | p-try "^2.0.0" 2914 | 2915 | p-locate@^2.0.0: 2916 | version "2.0.0" 2917 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 2918 | dependencies: 2919 | p-limit "^1.1.0" 2920 | 2921 | p-locate@^3.0.0: 2922 | version "3.0.0" 2923 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 2924 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 2925 | dependencies: 2926 | p-limit "^2.0.0" 2927 | 2928 | p-locate@^4.1.0: 2929 | version "4.1.0" 2930 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" 2931 | integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== 2932 | dependencies: 2933 | p-limit "^2.2.0" 2934 | 2935 | p-try@^1.0.0: 2936 | version "1.0.0" 2937 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" 2938 | 2939 | p-try@^2.0.0: 2940 | version "2.2.0" 2941 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 2942 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 2943 | 2944 | package-hash@^3.0.0: 2945 | version "3.0.0" 2946 | resolved "https://registry.yarnpkg.com/package-hash/-/package-hash-3.0.0.tgz#50183f2d36c9e3e528ea0a8605dff57ce976f88e" 2947 | integrity sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA== 2948 | dependencies: 2949 | graceful-fs "^4.1.15" 2950 | hasha "^3.0.0" 2951 | lodash.flattendeep "^4.4.0" 2952 | release-zalgo "^1.0.0" 2953 | 2954 | parent-module@^1.0.0: 2955 | version "1.0.1" 2956 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 2957 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 2958 | dependencies: 2959 | callsites "^3.0.0" 2960 | 2961 | parse-github-repo-url@^1.3.0: 2962 | version "1.4.1" 2963 | resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" 2964 | 2965 | parse-json@^2.2.0: 2966 | version "2.2.0" 2967 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 2968 | dependencies: 2969 | error-ex "^1.2.0" 2970 | 2971 | parse-json@^4.0.0: 2972 | version "4.0.0" 2973 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 2974 | dependencies: 2975 | error-ex "^1.3.1" 2976 | json-parse-better-errors "^1.0.1" 2977 | 2978 | parse-passwd@^1.0.0: 2979 | version "1.0.0" 2980 | resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" 2981 | 2982 | pascalcase@^0.1.1: 2983 | version "0.1.1" 2984 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" 2985 | 2986 | path-exists@^2.0.0: 2987 | version "2.1.0" 2988 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 2989 | dependencies: 2990 | pinkie-promise "^2.0.0" 2991 | 2992 | path-exists@^3.0.0: 2993 | version "3.0.0" 2994 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 2995 | 2996 | path-exists@^4.0.0: 2997 | version "4.0.0" 2998 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" 2999 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 3000 | 3001 | path-is-absolute@^1.0.0: 3002 | version "1.0.1" 3003 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 3004 | 3005 | path-key@^2.0.0, path-key@^2.0.1: 3006 | version "2.0.1" 3007 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 3008 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 3009 | 3010 | path-parse@^1.0.5: 3011 | version "1.0.5" 3012 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" 3013 | 3014 | path-parse@^1.0.6: 3015 | version "1.0.6" 3016 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 3017 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 3018 | 3019 | path-to-regexp@^1.7.0: 3020 | version "1.7.0" 3021 | resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" 3022 | dependencies: 3023 | isarray "0.0.1" 3024 | 3025 | path-type@^1.0.0: 3026 | version "1.1.0" 3027 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" 3028 | dependencies: 3029 | graceful-fs "^4.1.2" 3030 | pify "^2.0.0" 3031 | pinkie-promise "^2.0.0" 3032 | 3033 | path-type@^2.0.0: 3034 | version "2.0.0" 3035 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 3036 | dependencies: 3037 | pify "^2.0.0" 3038 | 3039 | path-type@^3.0.0: 3040 | version "3.0.0" 3041 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" 3042 | dependencies: 3043 | pify "^3.0.0" 3044 | 3045 | pathval@^1.1.0: 3046 | version "1.1.0" 3047 | resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" 3048 | integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= 3049 | 3050 | performance-now@^2.1.0: 3051 | version "2.1.0" 3052 | resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" 3053 | 3054 | pify@^2.0.0, pify@^2.3.0: 3055 | version "2.3.0" 3056 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 3057 | 3058 | pify@^3.0.0: 3059 | version "3.0.0" 3060 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" 3061 | 3062 | pify@^4.0.1: 3063 | version "4.0.1" 3064 | resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" 3065 | integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== 3066 | 3067 | pinkie-promise@^2.0.0: 3068 | version "2.0.1" 3069 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 3070 | dependencies: 3071 | pinkie "^2.0.0" 3072 | 3073 | pinkie@^2.0.0: 3074 | version "2.0.4" 3075 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 3076 | 3077 | pkg-dir@^2.0.0: 3078 | version "2.0.0" 3079 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" 3080 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 3081 | dependencies: 3082 | find-up "^2.1.0" 3083 | 3084 | pkg-dir@^3.0.0: 3085 | version "3.0.0" 3086 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" 3087 | integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== 3088 | dependencies: 3089 | find-up "^3.0.0" 3090 | 3091 | posix-character-classes@^0.1.0: 3092 | version "0.1.1" 3093 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" 3094 | 3095 | prelude-ls@~1.1.2: 3096 | version "1.1.2" 3097 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 3098 | 3099 | process-nextick-args@~2.0.0: 3100 | version "2.0.0" 3101 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" 3102 | 3103 | progress@^2.0.0: 3104 | version "2.0.0" 3105 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" 3106 | 3107 | pseudomap@^1.0.2: 3108 | version "1.0.2" 3109 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 3110 | 3111 | psl@^1.1.24: 3112 | version "1.4.0" 3113 | resolved "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2" 3114 | integrity sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw== 3115 | 3116 | pump@^3.0.0: 3117 | version "3.0.0" 3118 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 3119 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 3120 | dependencies: 3121 | end-of-stream "^1.1.0" 3122 | once "^1.3.1" 3123 | 3124 | punycode@^1.4.1: 3125 | version "1.4.1" 3126 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 3127 | 3128 | punycode@^2.1.0: 3129 | version "2.1.1" 3130 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 3131 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 3132 | 3133 | q@^1.5.1: 3134 | version "1.5.1" 3135 | resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" 3136 | 3137 | qs@~6.5.2: 3138 | version "6.5.2" 3139 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" 3140 | integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== 3141 | 3142 | quick-lru@^1.0.0: 3143 | version "1.1.0" 3144 | resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" 3145 | 3146 | ramda@^0.26.1: 3147 | version "0.26.1" 3148 | resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06" 3149 | integrity sha512-hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ== 3150 | 3151 | read-pkg-up@^1.0.1: 3152 | version "1.0.1" 3153 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" 3154 | dependencies: 3155 | find-up "^1.0.0" 3156 | read-pkg "^1.0.0" 3157 | 3158 | read-pkg-up@^2.0.0: 3159 | version "2.0.0" 3160 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 3161 | dependencies: 3162 | find-up "^2.0.0" 3163 | read-pkg "^2.0.0" 3164 | 3165 | read-pkg-up@^3.0.0: 3166 | version "3.0.0" 3167 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" 3168 | dependencies: 3169 | find-up "^2.0.0" 3170 | read-pkg "^3.0.0" 3171 | 3172 | read-pkg-up@^4.0.0: 3173 | version "4.0.0" 3174 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" 3175 | integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== 3176 | dependencies: 3177 | find-up "^3.0.0" 3178 | read-pkg "^3.0.0" 3179 | 3180 | read-pkg@^1.0.0: 3181 | version "1.1.0" 3182 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" 3183 | dependencies: 3184 | load-json-file "^1.0.0" 3185 | normalize-package-data "^2.3.2" 3186 | path-type "^1.0.0" 3187 | 3188 | read-pkg@^2.0.0: 3189 | version "2.0.0" 3190 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 3191 | dependencies: 3192 | load-json-file "^2.0.0" 3193 | normalize-package-data "^2.3.2" 3194 | path-type "^2.0.0" 3195 | 3196 | read-pkg@^3.0.0: 3197 | version "3.0.0" 3198 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" 3199 | dependencies: 3200 | load-json-file "^4.0.0" 3201 | normalize-package-data "^2.3.2" 3202 | path-type "^3.0.0" 3203 | 3204 | "readable-stream@2 || 3", readable-stream@^3.0.2: 3205 | version "3.4.0" 3206 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" 3207 | integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== 3208 | dependencies: 3209 | inherits "^2.0.3" 3210 | string_decoder "^1.1.1" 3211 | util-deprecate "^1.0.1" 3212 | 3213 | readable-stream@^2.1.5: 3214 | version "2.3.6" 3215 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" 3216 | dependencies: 3217 | core-util-is "~1.0.0" 3218 | inherits "~2.0.3" 3219 | isarray "~1.0.0" 3220 | process-nextick-args "~2.0.0" 3221 | safe-buffer "~5.1.1" 3222 | string_decoder "~1.1.1" 3223 | util-deprecate "~1.0.1" 3224 | 3225 | rechoir@^0.6.2: 3226 | version "0.6.2" 3227 | resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" 3228 | dependencies: 3229 | resolve "^1.1.6" 3230 | 3231 | redent@^1.0.0: 3232 | version "1.0.0" 3233 | resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" 3234 | dependencies: 3235 | indent-string "^2.1.0" 3236 | strip-indent "^1.0.1" 3237 | 3238 | redent@^2.0.0: 3239 | version "2.0.0" 3240 | resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" 3241 | dependencies: 3242 | indent-string "^3.0.0" 3243 | strip-indent "^2.0.0" 3244 | 3245 | regenerator-runtime@^0.11.0: 3246 | version "0.11.1" 3247 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" 3248 | 3249 | regex-not@^1.0.0, regex-not@^1.0.2: 3250 | version "1.0.2" 3251 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" 3252 | dependencies: 3253 | extend-shallow "^3.0.2" 3254 | safe-regex "^1.1.0" 3255 | 3256 | regexpp@^2.0.1: 3257 | version "2.0.1" 3258 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" 3259 | integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== 3260 | 3261 | release-zalgo@^1.0.0: 3262 | version "1.0.0" 3263 | resolved "https://registry.yarnpkg.com/release-zalgo/-/release-zalgo-1.0.0.tgz#09700b7e5074329739330e535c5a90fb67851730" 3264 | integrity sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA= 3265 | dependencies: 3266 | es6-error "^4.0.1" 3267 | 3268 | repeat-element@^1.1.2: 3269 | version "1.1.2" 3270 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" 3271 | 3272 | repeat-string@^1.6.1: 3273 | version "1.6.1" 3274 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 3275 | 3276 | repeating@^2.0.0: 3277 | version "2.0.1" 3278 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" 3279 | dependencies: 3280 | is-finite "^1.0.0" 3281 | 3282 | request@^2.86.0: 3283 | version "2.88.0" 3284 | resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" 3285 | integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== 3286 | dependencies: 3287 | aws-sign2 "~0.7.0" 3288 | aws4 "^1.8.0" 3289 | caseless "~0.12.0" 3290 | combined-stream "~1.0.6" 3291 | extend "~3.0.2" 3292 | forever-agent "~0.6.1" 3293 | form-data "~2.3.2" 3294 | har-validator "~5.1.0" 3295 | http-signature "~1.2.0" 3296 | is-typedarray "~1.0.0" 3297 | isstream "~0.1.2" 3298 | json-stringify-safe "~5.0.1" 3299 | mime-types "~2.1.19" 3300 | oauth-sign "~0.9.0" 3301 | performance-now "^2.1.0" 3302 | qs "~6.5.2" 3303 | safe-buffer "^5.1.2" 3304 | tough-cookie "~2.4.3" 3305 | tunnel-agent "^0.6.0" 3306 | uuid "^3.3.2" 3307 | 3308 | require-directory@^2.1.1: 3309 | version "2.1.1" 3310 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 3311 | 3312 | require-main-filename@^1.0.1: 3313 | version "1.0.1" 3314 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" 3315 | 3316 | require-main-filename@^2.0.0: 3317 | version "2.0.0" 3318 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" 3319 | integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== 3320 | 3321 | resolve-dir@^1.0.0, resolve-dir@^1.0.1: 3322 | version "1.0.1" 3323 | resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" 3324 | integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= 3325 | dependencies: 3326 | expand-tilde "^2.0.0" 3327 | global-modules "^1.0.0" 3328 | 3329 | resolve-from@^3.0.0: 3330 | version "3.0.0" 3331 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 3332 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 3333 | 3334 | resolve-from@^4.0.0: 3335 | version "4.0.0" 3336 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 3337 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 3338 | 3339 | resolve-from@^5.0.0: 3340 | version "5.0.0" 3341 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" 3342 | integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== 3343 | 3344 | resolve-global@^1.0.0: 3345 | version "1.0.0" 3346 | resolved "https://registry.yarnpkg.com/resolve-global/-/resolve-global-1.0.0.tgz#a2a79df4af2ca3f49bf77ef9ddacd322dad19255" 3347 | integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw== 3348 | dependencies: 3349 | global-dirs "^0.1.1" 3350 | 3351 | resolve-url@^0.2.1: 3352 | version "0.2.1" 3353 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 3354 | 3355 | resolve@^1.1.6: 3356 | version "1.6.0" 3357 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.6.0.tgz#0fbd21278b27b4004481c395349e7aba60a9ff5c" 3358 | dependencies: 3359 | path-parse "^1.0.5" 3360 | 3361 | resolve@^1.11.0: 3362 | version "1.12.0" 3363 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" 3364 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== 3365 | dependencies: 3366 | path-parse "^1.0.6" 3367 | 3368 | resolve@^1.5.0: 3369 | version "1.5.0" 3370 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" 3371 | dependencies: 3372 | path-parse "^1.0.5" 3373 | 3374 | restore-cursor@^2.0.0: 3375 | version "2.0.0" 3376 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 3377 | dependencies: 3378 | onetime "^2.0.0" 3379 | signal-exit "^3.0.2" 3380 | 3381 | ret@~0.1.10: 3382 | version "0.1.15" 3383 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" 3384 | 3385 | right-pad@^1.0.1: 3386 | version "1.0.1" 3387 | resolved "https://registry.yarnpkg.com/right-pad/-/right-pad-1.0.1.tgz#8ca08c2cbb5b55e74dafa96bf7fd1a27d568c8d0" 3388 | 3389 | rimraf@2.6.3: 3390 | version "2.6.3" 3391 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 3392 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 3393 | dependencies: 3394 | glob "^7.1.3" 3395 | 3396 | rimraf@^2.6.2: 3397 | version "2.6.2" 3398 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" 3399 | dependencies: 3400 | glob "^7.0.5" 3401 | 3402 | rimraf@^2.6.3: 3403 | version "2.7.1" 3404 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" 3405 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 3406 | dependencies: 3407 | glob "^7.1.3" 3408 | 3409 | run-async@^2.2.0: 3410 | version "2.3.0" 3411 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 3412 | dependencies: 3413 | is-promise "^2.1.0" 3414 | 3415 | rxjs@^6.4.0: 3416 | version "6.5.3" 3417 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.3.tgz#510e26317f4db91a7eb1de77d9dd9ba0a4899a3a" 3418 | integrity sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA== 3419 | dependencies: 3420 | tslib "^1.9.0" 3421 | 3422 | safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 3423 | version "5.1.1" 3424 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" 3425 | 3426 | safe-buffer@^5.1.2, safe-buffer@~5.2.0: 3427 | version "5.2.0" 3428 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" 3429 | integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== 3430 | 3431 | safe-regex@^1.1.0: 3432 | version "1.1.0" 3433 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" 3434 | dependencies: 3435 | ret "~0.1.10" 3436 | 3437 | "safer-buffer@>= 2.1.2 < 3": 3438 | version "2.1.2" 3439 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 3440 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 3441 | 3442 | "semver@2 || 3 || 4 || 5", semver@^5.5.0: 3443 | version "5.5.0" 3444 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" 3445 | 3446 | semver@6.3.0, semver@^6.0.0, semver@^6.1.2: 3447 | version "6.3.0" 3448 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 3449 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 3450 | 3451 | semver@^5.6.0, semver@^5.7.0: 3452 | version "5.7.1" 3453 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 3454 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 3455 | 3456 | set-blocking@^2.0.0: 3457 | version "2.0.0" 3458 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 3459 | 3460 | set-value@^0.4.3: 3461 | version "0.4.3" 3462 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" 3463 | dependencies: 3464 | extend-shallow "^2.0.1" 3465 | is-extendable "^0.1.1" 3466 | is-plain-object "^2.0.1" 3467 | to-object-path "^0.3.0" 3468 | 3469 | set-value@^2.0.0: 3470 | version "2.0.0" 3471 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" 3472 | dependencies: 3473 | extend-shallow "^2.0.1" 3474 | is-extendable "^0.1.1" 3475 | is-plain-object "^2.0.3" 3476 | split-string "^3.0.1" 3477 | 3478 | shebang-command@^1.2.0: 3479 | version "1.2.0" 3480 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 3481 | dependencies: 3482 | shebang-regex "^1.0.0" 3483 | 3484 | shebang-regex@^1.0.0: 3485 | version "1.0.0" 3486 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 3487 | 3488 | shelljs@0.7.6: 3489 | version "0.7.6" 3490 | resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.6.tgz#379cccfb56b91c8601e4793356eb5382924de9ad" 3491 | dependencies: 3492 | glob "^7.0.0" 3493 | interpret "^1.0.0" 3494 | rechoir "^0.6.2" 3495 | 3496 | signal-exit@^3.0.0, signal-exit@^3.0.2: 3497 | version "3.0.2" 3498 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 3499 | 3500 | sinon@^7.4.2: 3501 | version "7.4.2" 3502 | resolved "https://registry.yarnpkg.com/sinon/-/sinon-7.4.2.tgz#ecd54158fef2fcfbdb231a3fa55140e8cb02ad6c" 3503 | integrity sha512-pY5RY99DKelU3pjNxcWo6XqeB1S118GBcVIIdDi6V+h6hevn1izcg2xv1hTHW/sViRXU7sUOxt4wTUJ3gsW2CQ== 3504 | dependencies: 3505 | "@sinonjs/commons" "^1.4.0" 3506 | "@sinonjs/formatio" "^3.2.1" 3507 | "@sinonjs/samsam" "^3.3.3" 3508 | diff "^3.5.0" 3509 | lolex "^4.2.0" 3510 | nise "^1.5.2" 3511 | supports-color "^5.5.0" 3512 | 3513 | slice-ansi@^2.1.0: 3514 | version "2.1.0" 3515 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" 3516 | integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== 3517 | dependencies: 3518 | ansi-styles "^3.2.0" 3519 | astral-regex "^1.0.0" 3520 | is-fullwidth-code-point "^2.0.0" 3521 | 3522 | snapdragon-node@^2.0.1: 3523 | version "2.1.1" 3524 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" 3525 | dependencies: 3526 | define-property "^1.0.0" 3527 | isobject "^3.0.0" 3528 | snapdragon-util "^3.0.1" 3529 | 3530 | snapdragon-util@^3.0.1: 3531 | version "3.0.1" 3532 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" 3533 | dependencies: 3534 | kind-of "^3.2.0" 3535 | 3536 | snapdragon@^0.8.1: 3537 | version "0.8.2" 3538 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" 3539 | dependencies: 3540 | base "^0.11.1" 3541 | debug "^2.2.0" 3542 | define-property "^0.2.5" 3543 | extend-shallow "^2.0.1" 3544 | map-cache "^0.2.2" 3545 | source-map "^0.5.6" 3546 | source-map-resolve "^0.5.0" 3547 | use "^3.1.0" 3548 | 3549 | source-map-resolve@^0.5.0: 3550 | version "0.5.1" 3551 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.1.tgz#7ad0f593f2281598e854df80f19aae4b92d7a11a" 3552 | dependencies: 3553 | atob "^2.0.0" 3554 | decode-uri-component "^0.2.0" 3555 | resolve-url "^0.2.1" 3556 | source-map-url "^0.4.0" 3557 | urix "^0.1.0" 3558 | 3559 | source-map-url@^0.4.0: 3560 | version "0.4.0" 3561 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" 3562 | 3563 | source-map@^0.5.0, source-map@^0.5.6: 3564 | version "0.5.7" 3565 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 3566 | 3567 | source-map@^0.6.1, source-map@~0.6.1: 3568 | version "0.6.1" 3569 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 3570 | 3571 | spawn-wrap@^1.4.2: 3572 | version "1.4.2" 3573 | resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.4.2.tgz#cff58e73a8224617b6561abdc32586ea0c82248c" 3574 | dependencies: 3575 | foreground-child "^1.5.6" 3576 | mkdirp "^0.5.0" 3577 | os-homedir "^1.0.1" 3578 | rimraf "^2.6.2" 3579 | signal-exit "^3.0.2" 3580 | which "^1.3.0" 3581 | 3582 | spdx-correct@~1.0.0: 3583 | version "1.0.2" 3584 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" 3585 | dependencies: 3586 | spdx-license-ids "^1.0.2" 3587 | 3588 | spdx-expression-parse@~1.0.0: 3589 | version "1.0.4" 3590 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" 3591 | 3592 | spdx-license-ids@^1.0.2: 3593 | version "1.2.2" 3594 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" 3595 | 3596 | split-string@^3.0.1, split-string@^3.0.2: 3597 | version "3.1.0" 3598 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" 3599 | dependencies: 3600 | extend-shallow "^3.0.0" 3601 | 3602 | split2@^2.0.0: 3603 | version "2.2.0" 3604 | resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" 3605 | dependencies: 3606 | through2 "^2.0.2" 3607 | 3608 | split@^1.0.0: 3609 | version "1.0.1" 3610 | resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" 3611 | dependencies: 3612 | through "2" 3613 | 3614 | sprintf-js@~1.0.2: 3615 | version "1.0.3" 3616 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 3617 | 3618 | sshpk@^1.7.0: 3619 | version "1.13.1" 3620 | resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" 3621 | dependencies: 3622 | asn1 "~0.2.3" 3623 | assert-plus "^1.0.0" 3624 | dashdash "^1.12.0" 3625 | getpass "^0.1.1" 3626 | optionalDependencies: 3627 | bcrypt-pbkdf "^1.0.0" 3628 | ecc-jsbn "~0.1.1" 3629 | jsbn "~0.1.0" 3630 | tweetnacl "~0.14.0" 3631 | 3632 | standard-version@^7.0.0: 3633 | version "7.0.0" 3634 | resolved "https://registry.yarnpkg.com/standard-version/-/standard-version-7.0.0.tgz#4ce10ea5d20270ed4a32b22d15cce5fd1f1a5bbb" 3635 | integrity sha512-pbFXM9vutnxTkSGkqSWQeYCMYqWmFBaLUNdEc/sJDQnMgwB0Csw3CZeeDhi62VoVS3P8mQiYbvXGZWyOBWxUbw== 3636 | dependencies: 3637 | chalk "2.4.2" 3638 | conventional-changelog "3.1.9" 3639 | conventional-changelog-config-spec "2.0.0" 3640 | conventional-recommended-bump "6.0.0" 3641 | detect-indent "6.0.0" 3642 | detect-newline "3.0.0" 3643 | dotgitignore "2.1.0" 3644 | figures "3.0.0" 3645 | find-up "4.1.0" 3646 | fs-access "1.0.1" 3647 | git-semver-tags "3.0.0" 3648 | semver "6.3.0" 3649 | stringify-package "1.0.0" 3650 | yargs "13.3.0" 3651 | 3652 | static-extend@^0.1.1: 3653 | version "0.1.2" 3654 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" 3655 | dependencies: 3656 | define-property "^0.2.5" 3657 | object-copy "^0.1.0" 3658 | 3659 | string-width@^1.0.1: 3660 | version "1.0.2" 3661 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 3662 | dependencies: 3663 | code-point-at "^1.0.0" 3664 | is-fullwidth-code-point "^1.0.0" 3665 | strip-ansi "^3.0.0" 3666 | 3667 | "string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: 3668 | version "2.1.1" 3669 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 3670 | dependencies: 3671 | is-fullwidth-code-point "^2.0.0" 3672 | strip-ansi "^4.0.0" 3673 | 3674 | string-width@^3.0.0, string-width@^3.1.0: 3675 | version "3.1.0" 3676 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 3677 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 3678 | dependencies: 3679 | emoji-regex "^7.0.1" 3680 | is-fullwidth-code-point "^2.0.0" 3681 | strip-ansi "^5.1.0" 3682 | 3683 | string.prototype.trimleft@^2.0.0: 3684 | version "2.1.0" 3685 | resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" 3686 | integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== 3687 | dependencies: 3688 | define-properties "^1.1.3" 3689 | function-bind "^1.1.1" 3690 | 3691 | string.prototype.trimright@^2.0.0: 3692 | version "2.1.0" 3693 | resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" 3694 | integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== 3695 | dependencies: 3696 | define-properties "^1.1.3" 3697 | function-bind "^1.1.1" 3698 | 3699 | string_decoder@^1.1.1: 3700 | version "1.3.0" 3701 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" 3702 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== 3703 | dependencies: 3704 | safe-buffer "~5.2.0" 3705 | 3706 | string_decoder@~1.1.1: 3707 | version "1.1.1" 3708 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 3709 | dependencies: 3710 | safe-buffer "~5.1.0" 3711 | 3712 | stringify-package@1.0.0: 3713 | version "1.0.0" 3714 | resolved "https://registry.yarnpkg.com/stringify-package/-/stringify-package-1.0.0.tgz#e02828089333d7d45cd8c287c30aa9a13375081b" 3715 | integrity sha512-JIQqiWmLiEozOC0b0BtxZ/AOUtdUZHCBPgqIZ2kSJJqGwgb9neo44XdTHUC4HZSGqi03hOeB7W/E8rAlKnGe9g== 3716 | 3717 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 3718 | version "3.0.1" 3719 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 3720 | dependencies: 3721 | ansi-regex "^2.0.0" 3722 | 3723 | strip-ansi@^4.0.0: 3724 | version "4.0.0" 3725 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 3726 | dependencies: 3727 | ansi-regex "^3.0.0" 3728 | 3729 | strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: 3730 | version "5.2.0" 3731 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 3732 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 3733 | dependencies: 3734 | ansi-regex "^4.1.0" 3735 | 3736 | strip-bom@4.0.0: 3737 | version "4.0.0" 3738 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" 3739 | integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== 3740 | 3741 | strip-bom@^2.0.0: 3742 | version "2.0.0" 3743 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" 3744 | dependencies: 3745 | is-utf8 "^0.2.0" 3746 | 3747 | strip-bom@^3.0.0: 3748 | version "3.0.0" 3749 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 3750 | 3751 | strip-eof@^1.0.0: 3752 | version "1.0.0" 3753 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 3754 | 3755 | strip-indent@^1.0.1: 3756 | version "1.0.1" 3757 | resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" 3758 | dependencies: 3759 | get-stdin "^4.0.1" 3760 | 3761 | strip-indent@^2.0.0: 3762 | version "2.0.0" 3763 | resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" 3764 | 3765 | strip-json-comments@2.0.1: 3766 | version "2.0.1" 3767 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 3768 | 3769 | strip-json-comments@3.0.1, strip-json-comments@^3.0.1: 3770 | version "3.0.1" 3771 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" 3772 | integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== 3773 | 3774 | supports-color@6.0.0: 3775 | version "6.0.0" 3776 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" 3777 | integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== 3778 | dependencies: 3779 | has-flag "^3.0.0" 3780 | 3781 | supports-color@^4.0.0: 3782 | version "4.5.0" 3783 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" 3784 | dependencies: 3785 | has-flag "^2.0.0" 3786 | 3787 | supports-color@^5.3.0, supports-color@^5.5.0: 3788 | version "5.5.0" 3789 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 3790 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 3791 | dependencies: 3792 | has-flag "^3.0.0" 3793 | 3794 | supports-color@^6.1.0: 3795 | version "6.1.0" 3796 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" 3797 | integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== 3798 | dependencies: 3799 | has-flag "^3.0.0" 3800 | 3801 | table@^5.2.3: 3802 | version "5.4.6" 3803 | resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" 3804 | integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== 3805 | dependencies: 3806 | ajv "^6.10.2" 3807 | lodash "^4.17.14" 3808 | slice-ansi "^2.1.0" 3809 | string-width "^3.0.0" 3810 | 3811 | test-exclude@^5.2.3: 3812 | version "5.2.3" 3813 | resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" 3814 | integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== 3815 | dependencies: 3816 | glob "^7.1.3" 3817 | minimatch "^3.0.4" 3818 | read-pkg-up "^4.0.0" 3819 | require-main-filename "^2.0.0" 3820 | 3821 | text-extensions@^2.0.0: 3822 | version "2.0.0" 3823 | resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-2.0.0.tgz#43eabd1b495482fae4a2bf65e5f56c29f69220f6" 3824 | integrity sha512-F91ZqLgvi1E0PdvmxMgp+gcf6q8fMH7mhdwWfzXnl1k+GbpQDmi8l7DzLC5JTASKbwpY3TfxajAUzAXcv2NmsQ== 3825 | 3826 | text-table@^0.2.0: 3827 | version "0.2.0" 3828 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 3829 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 3830 | 3831 | through2@^2.0.0, through2@^2.0.2: 3832 | version "2.0.3" 3833 | resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" 3834 | dependencies: 3835 | readable-stream "^2.1.5" 3836 | xtend "~4.0.1" 3837 | 3838 | through2@^3.0.0: 3839 | version "3.0.1" 3840 | resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" 3841 | integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== 3842 | dependencies: 3843 | readable-stream "2 || 3" 3844 | 3845 | through@2, "through@>=2.2.7 <3", through@^2.3.6: 3846 | version "2.3.8" 3847 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 3848 | 3849 | tmp@^0.0.33: 3850 | version "0.0.33" 3851 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 3852 | dependencies: 3853 | os-tmpdir "~1.0.2" 3854 | 3855 | to-fast-properties@^2.0.0: 3856 | version "2.0.0" 3857 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 3858 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 3859 | 3860 | to-object-path@^0.3.0: 3861 | version "0.3.0" 3862 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" 3863 | dependencies: 3864 | kind-of "^3.0.2" 3865 | 3866 | to-regex-range@^2.1.0: 3867 | version "2.1.1" 3868 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" 3869 | dependencies: 3870 | is-number "^3.0.0" 3871 | repeat-string "^1.6.1" 3872 | 3873 | to-regex@^3.0.1, to-regex@^3.0.2: 3874 | version "3.0.2" 3875 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" 3876 | dependencies: 3877 | define-property "^2.0.2" 3878 | extend-shallow "^3.0.2" 3879 | regex-not "^1.0.2" 3880 | safe-regex "^1.1.0" 3881 | 3882 | tough-cookie@~2.4.3: 3883 | version "2.4.3" 3884 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" 3885 | integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== 3886 | dependencies: 3887 | psl "^1.1.24" 3888 | punycode "^1.4.1" 3889 | 3890 | trim-newlines@^1.0.0: 3891 | version "1.0.0" 3892 | resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" 3893 | 3894 | trim-newlines@^2.0.0: 3895 | version "2.0.0" 3896 | resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" 3897 | 3898 | trim-off-newlines@^1.0.0: 3899 | version "1.0.1" 3900 | resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" 3901 | 3902 | trim-right@^1.0.1: 3903 | version "1.0.1" 3904 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" 3905 | 3906 | tslib@^1.9.0: 3907 | version "1.10.0" 3908 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" 3909 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 3910 | 3911 | tunnel-agent@^0.6.0: 3912 | version "0.6.0" 3913 | resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" 3914 | dependencies: 3915 | safe-buffer "^5.0.1" 3916 | 3917 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 3918 | version "0.14.5" 3919 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" 3920 | 3921 | type-check@~0.3.2: 3922 | version "0.3.2" 3923 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 3924 | dependencies: 3925 | prelude-ls "~1.1.2" 3926 | 3927 | type-detect@4.0.8: 3928 | version "4.0.8" 3929 | resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" 3930 | integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== 3931 | 3932 | type-detect@^4.0.0, type-detect@^4.0.5: 3933 | version "4.0.7" 3934 | resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.7.tgz#862bd2cf6058ad92799ff5a5b8cf7b6cec726198" 3935 | 3936 | typedarray@^0.0.6: 3937 | version "0.0.6" 3938 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" 3939 | 3940 | uglify-js@^3.1.4: 3941 | version "3.6.0" 3942 | resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5" 3943 | integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg== 3944 | dependencies: 3945 | commander "~2.20.0" 3946 | source-map "~0.6.1" 3947 | 3948 | union-value@^1.0.0: 3949 | version "1.0.0" 3950 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" 3951 | dependencies: 3952 | arr-union "^3.1.0" 3953 | get-value "^2.0.6" 3954 | is-extendable "^0.1.1" 3955 | set-value "^0.4.3" 3956 | 3957 | universalify@^0.1.0: 3958 | version "0.1.2" 3959 | resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" 3960 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== 3961 | 3962 | unset-value@^1.0.0: 3963 | version "1.0.0" 3964 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" 3965 | dependencies: 3966 | has-value "^0.3.1" 3967 | isobject "^3.0.0" 3968 | 3969 | uri-js@^4.2.2: 3970 | version "4.2.2" 3971 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 3972 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 3973 | dependencies: 3974 | punycode "^2.1.0" 3975 | 3976 | urix@^0.1.0: 3977 | version "0.1.0" 3978 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 3979 | 3980 | use@^3.1.0: 3981 | version "3.1.0" 3982 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544" 3983 | dependencies: 3984 | kind-of "^6.0.2" 3985 | 3986 | util-deprecate@^1.0.1, util-deprecate@~1.0.1: 3987 | version "1.0.2" 3988 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 3989 | 3990 | uuid@^3.3.2: 3991 | version "3.3.3" 3992 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" 3993 | integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== 3994 | 3995 | v8-compile-cache@^2.0.3: 3996 | version "2.1.0" 3997 | resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" 3998 | integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== 3999 | 4000 | validate-npm-package-license@^3.0.1: 4001 | version "3.0.1" 4002 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" 4003 | dependencies: 4004 | spdx-correct "~1.0.0" 4005 | spdx-expression-parse "~1.0.0" 4006 | 4007 | verror@1.10.0: 4008 | version "1.10.0" 4009 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" 4010 | dependencies: 4011 | assert-plus "^1.0.0" 4012 | core-util-is "1.0.2" 4013 | extsprintf "^1.2.0" 4014 | 4015 | which-module@^2.0.0: 4016 | version "2.0.0" 4017 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 4018 | 4019 | which@1.3.1, which@^1.2.14: 4020 | version "1.3.1" 4021 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 4022 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 4023 | dependencies: 4024 | isexe "^2.0.0" 4025 | 4026 | which@^1.2.9, which@^1.3.0: 4027 | version "1.3.0" 4028 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" 4029 | dependencies: 4030 | isexe "^2.0.0" 4031 | 4032 | wide-align@1.1.3: 4033 | version "1.1.3" 4034 | resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" 4035 | integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== 4036 | dependencies: 4037 | string-width "^1.0.2 || 2" 4038 | 4039 | word-wrap@^1.0.3: 4040 | version "1.2.3" 4041 | resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" 4042 | 4043 | wordwrap@~0.0.2: 4044 | version "0.0.3" 4045 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" 4046 | 4047 | wordwrap@~1.0.0: 4048 | version "1.0.0" 4049 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 4050 | 4051 | wrap-ansi@^2.0.0: 4052 | version "2.1.0" 4053 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" 4054 | dependencies: 4055 | string-width "^1.0.1" 4056 | strip-ansi "^3.0.1" 4057 | 4058 | wrap-ansi@^5.1.0: 4059 | version "5.1.0" 4060 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" 4061 | integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== 4062 | dependencies: 4063 | ansi-styles "^3.2.0" 4064 | string-width "^3.0.0" 4065 | strip-ansi "^5.0.0" 4066 | 4067 | wrappy@1: 4068 | version "1.0.2" 4069 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 4070 | 4071 | write-file-atomic@^2.4.2: 4072 | version "2.4.3" 4073 | resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" 4074 | integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== 4075 | dependencies: 4076 | graceful-fs "^4.1.11" 4077 | imurmurhash "^0.1.4" 4078 | signal-exit "^3.0.2" 4079 | 4080 | write@1.0.3: 4081 | version "1.0.3" 4082 | resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" 4083 | integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== 4084 | dependencies: 4085 | mkdirp "^0.5.1" 4086 | 4087 | xtend@~4.0.1: 4088 | version "4.0.1" 4089 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 4090 | 4091 | "y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: 4092 | version "4.0.0" 4093 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" 4094 | integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== 4095 | 4096 | yallist@^2.1.2: 4097 | version "2.1.2" 4098 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" 4099 | 4100 | yargs-parser@13.0.0: 4101 | version "13.0.0" 4102 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.0.0.tgz#3fc44f3e76a8bdb1cc3602e860108602e5ccde8b" 4103 | integrity sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw== 4104 | dependencies: 4105 | camelcase "^5.0.0" 4106 | decamelize "^1.2.0" 4107 | 4108 | yargs-parser@^11.1.1: 4109 | version "11.1.1" 4110 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" 4111 | integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== 4112 | dependencies: 4113 | camelcase "^5.0.0" 4114 | decamelize "^1.2.0" 4115 | 4116 | yargs-parser@^13.0.0, yargs-parser@^13.1.1: 4117 | version "13.1.1" 4118 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" 4119 | integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== 4120 | dependencies: 4121 | camelcase "^5.0.0" 4122 | decamelize "^1.2.0" 4123 | 4124 | yargs-unparser@1.5.0: 4125 | version "1.5.0" 4126 | resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.5.0.tgz#f2bb2a7e83cbc87bb95c8e572828a06c9add6e0d" 4127 | integrity sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw== 4128 | dependencies: 4129 | flat "^4.1.0" 4130 | lodash "^4.17.11" 4131 | yargs "^12.0.5" 4132 | 4133 | yargs@13.2.2: 4134 | version "13.2.2" 4135 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.2.tgz#0c101f580ae95cea7f39d927e7770e3fdc97f993" 4136 | integrity sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA== 4137 | dependencies: 4138 | cliui "^4.0.0" 4139 | find-up "^3.0.0" 4140 | get-caller-file "^2.0.1" 4141 | os-locale "^3.1.0" 4142 | require-directory "^2.1.1" 4143 | require-main-filename "^2.0.0" 4144 | set-blocking "^2.0.0" 4145 | string-width "^3.0.0" 4146 | which-module "^2.0.0" 4147 | y18n "^4.0.0" 4148 | yargs-parser "^13.0.0" 4149 | 4150 | yargs@13.3.0, yargs@^13.2.2: 4151 | version "13.3.0" 4152 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" 4153 | integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== 4154 | dependencies: 4155 | cliui "^5.0.0" 4156 | find-up "^3.0.0" 4157 | get-caller-file "^2.0.1" 4158 | require-directory "^2.1.1" 4159 | require-main-filename "^2.0.0" 4160 | set-blocking "^2.0.0" 4161 | string-width "^3.0.0" 4162 | which-module "^2.0.0" 4163 | y18n "^4.0.0" 4164 | yargs-parser "^13.1.1" 4165 | 4166 | yargs@^12.0.5: 4167 | version "12.0.5" 4168 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" 4169 | integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== 4170 | dependencies: 4171 | cliui "^4.0.0" 4172 | decamelize "^1.2.0" 4173 | find-up "^3.0.0" 4174 | get-caller-file "^1.0.1" 4175 | os-locale "^3.0.0" 4176 | require-directory "^2.1.1" 4177 | require-main-filename "^1.0.1" 4178 | set-blocking "^2.0.0" 4179 | string-width "^2.0.0" 4180 | which-module "^2.0.0" 4181 | y18n "^3.2.1 || ^4.0.0" 4182 | yargs-parser "^11.1.1" 4183 | --------------------------------------------------------------------------------