├── .github └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── assets ├── step1.png └── ual-screenshot.png └── example ├── app ├── README.md ├── default.env ├── package.json ├── public │ ├── favicon.ico │ ├── index.html │ └── manifest.json ├── src │ ├── App.js │ ├── index.js │ ├── logo.svg │ └── serviceWorker.js └── yarn.lock └── authenticator ├── .babelrc ├── README.md ├── package.json ├── src └── logo.js └── yarn.lock /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ## Change Description 5 | 6 | 7 | 8 | ## API Changes 9 | - [ ] API Changes 10 | 11 | 12 | 13 | 14 | ## Documentation Additions 15 | - [ ] Documentation Additions 16 | 17 | 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # editors 2 | # Intellij and idea based editors 3 | .idea 4 | 5 | # VS Code 6 | .vscode/* 7 | !.vscode/settings.json 8 | !.vscode/tasks.json 9 | !.vscode/launch.json 10 | !.vscode/extensions.json 11 | 12 | ## Sublime Text 13 | # Cache files for Sublime Text 14 | *.tmlanguage.cache 15 | *.tmPreferences.cache 16 | *.stTheme.cache 17 | 18 | # Workspace files are user-specific 19 | *.sublime-workspace 20 | 21 | # OS generated files # 22 | ###################### 23 | .DS_Store 24 | .DS_Store? 25 | ._* 26 | .Spotlight-V100 27 | .Trashes 28 | ehthumbs.db 29 | Thumbs.db 30 | 31 | # Logs 32 | logs 33 | *.log 34 | npm-debug.log* 35 | yarn-debug.log* 36 | yarn-error.log* 37 | *.out 38 | 39 | # Runtime data 40 | pids 41 | *.pid 42 | *.seed 43 | *.pid.lock 44 | 45 | # Dependency directories 46 | node_modules/ 47 | jspm_packages/ 48 | 49 | # Optional npm cache directory 50 | .npm 51 | 52 | # Optional eslint cache 53 | .eslintcache 54 | 55 | # Optional REPL history 56 | .node_repl_history 57 | 58 | # Output of 'npm pack' 59 | *.tgz 60 | 61 | # Yarn Integrity file 62 | .yarn-integrity 63 | 64 | # next.js build output 65 | .next 66 | 67 | # Typescript 68 | dist/ 69 | dist-web/ 70 | build/ 71 | 72 | # Testing 73 | /coverage 74 | 75 | # Misc 76 | .env.local 77 | .env.development.local 78 | .env.test.local 79 | .env.production.local 80 | 81 | *.orig 82 | package-lock.json -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to UAL Authenticator Walkthrough 2 | 3 | Interested in contributing? That's awesome! Here are some guidelines to get started quickly and easily: 4 | 5 | - [Reporting An Issue](#reporting-an-issue) 6 | - [Bug Reports](#bug-reports) 7 | - [Feature Requests](#feature-requests) 8 | - [Change Requests](#change-requests) 9 | - [Working on UAL Authenticator Walkthrough](#working-on-ual-authenticator-walkthrough) 10 | - [Feature Branches](#feature-branches) 11 | - [Submitting Pull Requests](#submitting-pull-requests) 12 | - [Testing and Quality Assurance](#testing-and-quality-assurance) 13 | - [Conduct](#conduct) 14 | - [Contributor License & Acknowledgments](#contributor-license--acknowledgments) 15 | - [References](#references) 16 | 17 | ## Reporting An Issue 18 | 19 | If you're about to raise an issue because you think you've found a problem with UAL Authenticator Walkthrough, or you'd like to make a request for a new feature in the codebase, or any other reason… please read this first. 20 | 21 | The GitHub issue tracker is the preferred channel for [bug reports](#bug-reports), [feature requests](#feature-requests), and [submitting pull requests](#submitting-pull-requests), but please respect the following restrictions: 22 | 23 | * Please **search for existing issues**. Help us keep duplicate issues to a minimum by checking to see if someone has already reported your problem or requested your idea. 24 | 25 | * Please **be civil**. Keep the discussion on topic and respect the opinions of others. See also our [Contributor Code of Conduct](#conduct). 26 | 27 | ### Bug Reports 28 | 29 | A bug is a _demonstrable problem_ that is caused by the code in the repository. Good bug reports are extremely helpful - thank you! 30 | 31 | Guidelines for bug reports: 32 | 33 | 1. **Use the GitHub issue search** — check if the issue has already been 34 | reported. 35 | 36 | 1. **Check if the issue has been fixed** — look for [closed issues in the 37 | current milestone](https://github.com/EOSIO/ual-authenticator-walkthrough/issues?q=is%3Aissue+is%3Aclosed) or try to reproduce it 38 | using the latest `develop` branch. 39 | 40 | A good bug report shouldn't leave others needing to chase you up for more information. Be sure to include the details of your environment and relevant tests that demonstrate the failure. 41 | 42 | [Report a bug](https://github.com/EOSIO/ual-authenticator-walkthrough/issues/new?title=Bug%3A) 43 | 44 | ### Feature Requests 45 | 46 | Feature requests are welcome. Before you submit one be sure to have: 47 | 48 | 1. **Use the GitHub search** and check the feature hasn't already been requested. 49 | 1. Take a moment to think about whether your idea fits with the scope and aims of the project. 50 | 1. Remember, it's up to *you* to make a strong case to convince the project's leaders of the merits of this feature. Please provide as much detail and context as possible, this means explaining the use case and why it is likely to be common. 51 | 52 | ### Change Requests 53 | 54 | Change requests cover both architectural and functional changes to how UAL Authenticator Walkthrough works. If you have an idea for a new or different dependency, a refactor, or an improvement to a feature, etc - please be sure to: 55 | 56 | 1. **Use the GitHub search** and check someone else didn't get there first 57 | 1. Take a moment to think about the best way to make a case for, and explain what you're thinking. Are you sure this shouldn't really be 58 | a [bug report](#bug-reports) or a [feature request](#feature-requests)? Is it really one idea or is it many? What's the context? What problem are you solving? Why is what you are suggesting better than what's already there? 59 | 60 | ## Working on UAL Authenticator Walkthrough 61 | 62 | Code contributions are welcome and encouraged! If you are looking for a good place to start, check out the [good first issue](https://github.com/EOSIO/ual-authenticator-walkthrough/labels/good%20first%20issue) label in GitHub issues. 63 | 64 | Also, please follow these guidelines when submitting code: 65 | 66 | ### Feature Branches 67 | 68 | To get it out of the way: 69 | 70 | - **[develop](https://github.com/EOSIO/ual-authenticator-walkthrough/tree/develop)** is the development branch. All work on the next release happens here so you should generally branch off `develop`. Do **NOT** use this branch for a production site. 71 | - **[master](https://github.com/EOSIO/ual-authenticator-walkthrough/tree/master)** contains the latest release of UAL Authenticator Walkthrough. This branch may be used in production. Do **NOT** use this branch to work on UAL Authenticator Walkthrough's source. 72 | 73 | ### Submitting Pull Requests 74 | 75 | Pull requests are awesome. If you're looking to raise a PR for something which doesn't have an open issue, please think carefully about [raising an issue](#reporting-an-issue) which your PR can close, especially if you're fixing a bug. This makes it more likely that there will be enough information available for your PR to be properly tested and merged. 76 | 77 | ### Testing and Quality Assurance 78 | 79 | Never underestimate just how useful quality assurance is. If you're looking to get involved with the code base and don't know where to start, checking out and testing a pull request is one of the most useful things you could do. 80 | 81 | Essentially, [check out the latest develop branch](#working-on-UAL Authenticator Walkthrough), take it for a spin, and if you find anything odd, please follow the [bug report guidelines](#bug-reports) and let us know! 82 | 83 | ## Conduct 84 | 85 | While contributing, please be respectful and constructive, so that participation in our project is a positive experience for everyone. 86 | 87 | Examples of behavior that contributes to creating a positive environment include: 88 | - Using welcoming and inclusive language 89 | - Being respectful of differing viewpoints and experiences 90 | - Gracefully accepting constructive criticism 91 | - Focusing on what is best for the community 92 | - Showing empathy towards other community members 93 | 94 | Examples of unacceptable behavior include: 95 | - The use of sexualized language or imagery and unwelcome sexual attention or advances 96 | - Trolling, insulting/derogatory comments, and personal or political attacks 97 | - Public or private harassment 98 | - Publishing others’ private information, such as a physical or electronic address, without explicit permission 99 | - Other conduct which could reasonably be considered inappropriate in a professional setting 100 | 101 | ## Contributor License & Acknowledgments 102 | 103 | Whenever you make a contribution to this project, you license your contribution under the same terms as set out in LICENSE, and you represent and warrant that you have the right to license your contribution under those terms. Whenever you make a contribution to this project, you also certify in the terms of the Developer’s Certificate of Origin set out below: 104 | 105 | ``` 106 | Developer Certificate of Origin 107 | Version 1.1 108 | 109 | Copyright (C) 2004, 2006 The Linux Foundation and its contributors. 110 | 1 Letterman Drive 111 | Suite D4700 112 | San Francisco, CA, 94129 113 | 114 | Everyone is permitted to copy and distribute verbatim copies of this 115 | license document, but changing it is not allowed. 116 | 117 | 118 | Developer's Certificate of Origin 1.1 119 | 120 | By making a contribution to this project, I certify that: 121 | 122 | (a) The contribution was created in whole or in part by me and I 123 | have the right to submit it under the open source license 124 | indicated in the file; or 125 | 126 | (b) The contribution is based upon previous work that, to the best 127 | of my knowledge, is covered under an appropriate open source 128 | license and I have the right under that license to submit that 129 | work with modifications, whether created in whole or in part 130 | by me, under the same open source license (unless I am 131 | permitted to submit under a different license), as indicated 132 | in the file; or 133 | 134 | (c) The contribution was provided directly to me by some other 135 | person who certified (a), (b) or (c) and I have not modified 136 | it. 137 | 138 | (d) I understand and agree that this project and the contribution 139 | are public and that a record of the contribution (including all 140 | personal information I submit with it, including my sign-off) is 141 | maintained indefinitely and may be redistributed consistent with 142 | this project or the open source license(s) involved. 143 | ``` 144 | 145 | ## References 146 | 147 | * Overall CONTRIB adapted from https://github.com/mathjax/MathJax/blob/master/CONTRIBUTING.md 148 | * Conduct section adapted from the Contributor Covenant, version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html 149 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2017-2019 block.one and its contributors. All rights reserved. 2 | 3 | The MIT License 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UAL New Authenticator Walkthrough 🔐 2 | 3 | This tutorial walks through the steps required to create a [UAL](https://github.com/EOSIO/universal-authenticator-library) for Ledger [Authenticator](https://github.com/EOSIO/universal-authenticator-library/blob/develop/src/Authenticator.ts). 4 | 5 | ![EOSIO Labs](https://img.shields.io/badge/EOSIO-Labs-5cb3ff.svg) 6 | 7 | # About EOSIO Labs 8 | 9 | EOSIO Labs repositories are experimental. Developers in the community are encouraged to use EOSIO Labs repositories as the basis for code and concepts to incorporate into their applications. Community members are also welcome to contribute and further develop these repositories. Since these repositories are not supported by Block.one, we may not provide responses to issue reports, pull requests, updates to functionality, or other requests from the community, and we encourage the community to take responsibility for these. 10 | 11 | ## Overview 12 | 13 | The Universal Authenticator Library creates a single universal API which allows app developers to integrate ***multiple*** signature providers with just a few lines of code. This is done through custom `Authenticators`. 14 | 15 | An `Authenticator` represents the bridge between [UAL](https://github.com/EOSIO/universal-authenticator-library) and a custom signing method. 16 | 17 | A developer that wishes to add support for their signature provider to UAL must create an `Authenticator` by implementing 2 classes. An `Authenticator` and a `User`. 18 | 19 | The `Authenticator` class represents the business logic behind the renderer, handles login/logout functionality and initializes the `User` class. 20 | 21 | Logging in returns 1 or more User objects. A `User` object provides the ability for an app developer to request the app `User` sign a transaction using whichever authenticator they selected when logging in. 22 | 23 | In this tutorial I'll walk through the steps of implementing a custom `UAL Authenticator`, we'll be creating a [ual-ledger](https://github.com/EOSIO/ual-ledger) Authenticator. I'll try to explain some of the implementation specific details for `ual-ledger` and show examples of other UAL Authenticators. 24 | 25 | Each step in this tutorial has a correlating branch on github labeled `step-1`, `step-2`, etc. Each step assumes you are starting at the correlating branch. 26 | 27 | At the end we'll test the custom Authenticator with an example app found in [example/app](./example/app). 28 | 29 | ## Getting Started 30 | 31 | ## **Step 1**: Project setup 32 | 33 | 34 | ```bash 35 | ~ git clone git@github.com:EOSIO/ual-authenticator-walkthrough.git 36 | ~ cd ual-authenticator-walkthrough/examples/authenticator 37 | ~ yarn 38 | ``` 39 | 40 | At this point you should have a basic folder structure that looks like this. 41 | 42 | screenshot 43 | 44 | 45 | ## **Step 2**: Creating the abstract `Authenticator` and `User` classes 46 | 47 | Create a new class `Ledger` in `src/Ledger.js` thats extends from the `Authenticator` class and add empty functions for all the abstract methods. 48 | 49 | Next we'll do the same thing for the `LedgerUser` in `src/LedgerUser.js` that extends from the `User` class. 50 | 51 | Export both files from `src/index.js` with the contents below. 52 | 53 | ```javascript 54 | export * from './Ledger' 55 | export * from './LedgerUser' 56 | ``` 57 | 58 | #### View the completed [Ledger.js](https://github.com/EOSIO/ual-authenticator-walkthrough/blob/step-2/example/authenticator/src/Ledger.js) 59 | #### View the completed [LedgerUser.js](https://github.com/EOSIO/ual-authenticator-walkthrough/blob/step-2/example/authenticator/src/LedgerUser.js) 60 | 61 | 62 | ## **Step 3**: Implementing the `Authenticator` class 63 | 64 | The internal business logic of each Authenticator method will depend on the signing method you are using. The only limitations are the input/return types must match the abstract method it is implementing. 65 | 66 | Although not all methods may be necessary for your `Authenticator`, you're required to implement ***all*** abstract methods from the base [Authenticator](https://github.com/EOSIO/universal-authenticator-library/blob/develop/src/Authenticator.ts) class. 67 | 68 | The key methods here are `init, getStyle, login, logout`. 69 | 70 | 1. **`init()`** - Should be used to handle any async operations required to initialize the authenticator. `isLoading()` should return true until all async operations in `init` are complete and the authenticator is ready to accept login/logout requests. 71 | 2. **`getStyle()`** - Gives you the ability to customize your `Authenticator` and how it is displayed to app users. 72 | ```javascript 73 | getStyle() { 74 | return { 75 | // An icon displayed to app users when selecting their authentication method 76 | icon: './custom-icon.png', 77 | // Name displayed to app users 78 | text: 'Ledger', 79 | // Background color displayed to app users who select your authenticator 80 | background: '#44bdbd', 81 | // Color of text used on top the `backgound` property above 82 | textColor: '#FFFFFF', 83 | } 84 | } 85 | ``` 86 | 3. **`login()`** - The implementation depends entirely on the signing method you are using, whether it supports multiple chains, and the communication protocol used. You'll need to create a new `User` class, verify the keys match the account provided, add the `User` to an array, and return the array of `User`'s. Otherwise throw an error with the appropriate messaging, this error will be displayed to the app user. 87 | 88 | **Here are variations of `login()` with a brief description of the different approaches.** 89 | 90 | * [ual-ledger](https://github.com/EOSIO/ual-ledger/blob/develop/src/Ledger.ts#L48) - Ledger requires an `accountName` and calls `requiresGetKeyConfirmation` to determine if the app user has already confirmed the public key from their ledger device, if so they won't need to give permission again. By calling `LedgerUser.isAccountValid()` the authenticator utilizes the [eosjs-ledger-signature-provider](https://github.com/EOSIO/eosjs-ledger-signature-provider) and communicates with the ledger device through the `U2F` protocol. 91 | ```javascript 92 | async login(accountName) { 93 | for (const chain of this.chains) { 94 | const user = new LedgerUser(chain, accountName, this.requiresGetKeyConfirmation(accountName)) 95 | await user.init() 96 | const isValid = await user.isAccountValid() 97 | if (!isValid) { 98 | const message = `Error logging into account "${accountName}"` 99 | const type = UALErrorType.Login 100 | const cause = null 101 | throw new UALLedgerError(message, type, cause) 102 | } 103 | this.users.push(user) 104 | } 105 | 106 | return this.users 107 | } 108 | ``` 109 | 110 | * [ual-scatter](https://github.com/EOSIO/ual-scatter/blob/develop/src/Scatter.ts#L91) - Scatter does not require an `accountName` parameter and uses the [Scatter-JS](https://github.com/GetScatter/scatter-js) library to communicate with [Scatter Desktop](https://get-scatter.com/). 111 | ```javascript 112 | async login() { 113 | try { 114 | for (const chain of this.chains) { 115 | const user = new ScatterUser(chain, this.scatter) 116 | await user.getKeys() 117 | this.users.push(user) 118 | } 119 | 120 | return this.users 121 | } catch (e) { 122 | throw new UALScatterError( 123 | 'Unable to login', 124 | UALErrorType.Login, 125 | e) 126 | } 127 | } 128 | ``` 129 | * [ual-lynx](https://github.com/EOSIO/ual-lynx/blob/develop/src/Lynx.ts#L102) - Lynx injects a `lynxMobile` object into the browsers global window object, by accessing `lynxMobile` we can call `requestSetAccount` and receive an object containing the account information of the account logged into the Lynx Wallet. 130 | 131 | ```javascript 132 | async login() { 133 | if (this.users.length === 0) { 134 | try { 135 | const account = await window.lynxMobile.requestSetAccount() 136 | this.users.push(new LynxUser(this.chains[0], account)) 137 | } catch (e) { 138 | throw new UALLynxError( 139 | 'Unable to get the current account during login', 140 | UALErrorType.Login, 141 | e) 142 | } 143 | } 144 | 145 | return this.users 146 | } 147 | ``` 148 | 149 | 4. **`logout()`** - Responsible for terminating connections to external signing methods, if any exist, and deleting user information that may have been cached in the `User` or `Authenticator` classes. 150 | 151 | **Variations of `logout()`** 152 | 153 | * [ual-ledger](https://github.com/EOSIO/ual-ledger/blob/develop/src/Ledger.ts#L65) - The [eosjs-ledger-signature-provider](https://github.com/EOSIO/eosjs-ledger-signature-provider) performs a simple caching of public keys that need to be cleared on logout. We accomplish this by calling `signatureProvider.clearCachedKeys()` and remove the logged in users by reassigning `this.users` to an empty array. 154 | 155 | ```javascript 156 | async logout() { 157 | try { 158 | for (const user of this.users) { 159 | user.signatureProvider.cleanUp() 160 | user.signatureProvider.clearCachedKeys() 161 | } 162 | this.users = [] 163 | } catch (e) { 164 | const message = CONSTANTS.logoutMessage 165 | const type = UALErrorType.Logout 166 | const cause = e 167 | throw new UALLedgerError(message, type, cause) 168 | } 169 | } 170 | ``` 171 | 172 | * [ual-scatter](https://github.com/EOSIO/ual-scatter/blob/develop/src/Scatter.ts#L108) - Calling `this.scatter.logout()` removes the `Identity` from scatter utilizing scatters built in method for logging out. 173 | ```javascript 174 | async logout() { 175 | try { 176 | this.scatter.logout() 177 | } catch (error) { 178 | throw new UALScatterError('Error occurred during logout', 179 | UALErrorType.Logout, 180 | error) 181 | } 182 | } 183 | ``` 184 | * [ual-lynx](https://github.com/EOSIO/ual-scatter/blob/develop/src/Scatter.ts#L108) - Since lynx does not provide a method of logging out we simple reassign `this.users` to an empty array. 185 | 186 | ```javascript 187 | async logout() { 188 | this.users = [] 189 | } 190 | ``` 191 | #### View the completed [Ledger.js](https://github.com/EOSIO/ual-authenticator-walkthrough/blob/step-4/example/authenticator/src/Ledger.js) 192 | 193 | 194 | ## **Step 4**: Implementing the `User` class 195 | 196 | You are required to implement all abstract methods from the base [User](https://github.com/EOSIO/universal-authenticator-library/blob/develop/src/User.ts) class. 197 | 198 | The main methods to be implemented here are `getKeys, signTransaction, signArbitrary`. 199 | 200 | 1. **`getKeys()`** - Calling this method should return an array of public keys 🔑. How the authenticator gets those keys depends on the signing method you are using and what protocol it uses. For example, `ual-ledger` uses the [eosjs-ledger-signature-provider](https://github.com/EOSIO/eosjs-ledger-signature-provider) to communicate with the Ledger device through the U2F protocol and `ual-scatter` simply returns the keys it has already received from the inital call to `scatter.getIdentity`. 201 | 202 | **Here are variations of `getKeys()`** 203 | * `ual-ledger` 204 | ```javascript 205 | async getKeys() { 206 | try { 207 | const keys = await this.signatureProvider.getAvailableKeys(this.requestPermission) 208 | return keys 209 | } catch (error) { 210 | const message = `Unable to getKeys for account ${this.accountName}. 211 | Please make sure your ledger device is connected and unlocked` 212 | const type = UALErrorType.DataRequest 213 | const cause = error 214 | throw new UALLedgerError(message, type, cause) 215 | } 216 | } 217 | ``` 218 | * `ual-scatter` 219 | ```javascript 220 | async getKeys() { 221 | if (!this.keys || this.keys.length === 0) { 222 | // `refreshIdentity` calls `scatter.getIdentity` then 223 | // sets the `keys` and `accountName` properties on the 224 | // `User` class 225 | await this.refreshIdentity() 226 | } 227 | 228 | return this.keys 229 | } 230 | ``` 231 | 232 | 2. **`signTransaction(transaction, config)`** - Exposes the same API as `Api.transact` in [eosjs](https://github.com/EOSIO/eosjs/blob/develop/src/eosjs-api.ts). 233 | 234 | 3. **`signArbitrary(publicKey, data, helpText)`** - A utility function to sign arbitrary data. If your authenticator does not support this type of signing you can simple return an error with the correct message. 235 | 236 | **Example of an authenticator that does not support `signArbitrary`** 237 | ```javascript 238 | // LedgerUser.js 239 | 240 | async signArbitrary() { 241 | throw new UALLedgerError( 242 | `${Name} does not currently support signArbitrary`, 243 | UALErrorType.Unsupported, 244 | null, 245 | ) 246 | } 247 | ``` 248 | 249 | #### View the completed [LedgerUser.js](https://github.com/EOSIO/ual-authenticator-walkthrough/blob/step-5/example/authenticator/src/LedgerUser.js) 250 | 251 | ## **Step 5**: Test your Authenticator 🔑🔓 252 | Now that we've implemented all the abstract methods on our `Ledger` and `LedgerUser` classes lets test them in the example react app provided in [examples](./examples/app). 253 | 254 | Go to [examples](./examples/app) and follow the instructions. 255 | 256 | ual screenshot 257 | 258 | *All product and company names are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.* 259 | 260 | ## Contribution 261 | Check out the [Contributing](./CONTRIBUTING.md) guide and please adhere to the [Code of Conduct](./CONTRIBUTING.md#Conduct) 262 | 263 | ## License 264 | [MIT licensed](./LICENSE) 265 | 266 | ## Important 267 | 268 | See LICENSE for copyright and license terms. Block.one makes its contribution on a voluntary basis as a member of the EOSIO community and is not responsible for ensuring the overall performance of the software or any related applications. We make no representation, warranty, guarantee or undertaking in respect of the software or any related documentation, whether expressed or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall we be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or documentation or the use or other dealings in the software or documentation. Any test results or performance figures are indicative and will not reflect performance under all conditions. Any reference to any third party or third-party product, service or other resource is not an endorsement or recommendation by Block.one. We are not responsible, and disclaim any and all responsibility and liability, for your use of or reliance on any of these resources. Third-party resources may be updated, changed or terminated at any time, so the information here may be out of date or inaccurate. Any person using or offering this software in connection with providing software, goods or services to third parties shall advise such third parties of these license terms, disclaimers and exclusions of liability. Block.one, EOSIO, EOSIO Labs, EOS, the heptahedron and associated logos are trademarks of Block.one. 269 | 270 | Wallets and related components are complex software that require the highest levels of security. If incorrectly built or used, they may compromise users’ private keys and digital assets. Wallet applications and related components should undergo thorough security evaluations before being used. Only experienced developers should work with this software. 271 | -------------------------------------------------------------------------------- /assets/step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EOSIO/ual-authenticator-walkthrough/1942ce58a80e40d5de391021dbcf72a9d79b1bb8/assets/step1.png -------------------------------------------------------------------------------- /assets/ual-screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EOSIO/ual-authenticator-walkthrough/1942ce58a80e40d5de391021dbcf72a9d79b1bb8/assets/ual-screenshot.png -------------------------------------------------------------------------------- /example/app/README.md: -------------------------------------------------------------------------------- 1 | # UAL Authenticator Walkthrough Example 2 | 3 | This example implements a basic react app that utilizes [The UAL React Renderer](https://github.com/EOSIO/ual-reactjs-renderer) and the Ledger authenticator created during the tutorial. It will install and use the `Authenticator` in `example/authenticator` by default. 4 | 5 | ### Setup 6 | 7 | The example uses an environment configuration for the Chain and RPC endpoints. Update the values in the .env file you create below to set the preferred Chain you wish your app to transact on. 8 | 9 | Create a `.env` file from the `default.env` 10 | ```bash 11 | ~ cp default.env .env 12 | ``` 13 | 14 | Follow the instructions [here](https://dashboard.ngrok.com/get-started) to install [ngrok](https://ngrok.com/) 15 | 16 | ### Running Frontend 17 | 18 | ```bash 19 | ~ yarn 20 | ~ yarn start 21 | ``` 22 | 23 | Lastly you will need to forward port 3000 with ngrok 24 | -------------------------------------------------------------------------------- /example/app/default.env: -------------------------------------------------------------------------------- 1 | REACT_APP_CHAIN_ID= 2 | REACT_APP_RPC_PROTOCOL= 3 | REACT_APP_RPC_HOST= 4 | REACT_APP_RPC_PORT= 5 | 6 | # Recipient of transfer action 7 | REACT_APP_TO -------------------------------------------------------------------------------- /example/app/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "example", 3 | "version": "0.1.1", 4 | "private": true, 5 | "license": "MIT", 6 | "author": { 7 | "name": "block.one", 8 | "url": "https://block.one/" 9 | }, 10 | "collaborators": [ 11 | "Randy Torres", 12 | "Mike Manfredi" 13 | ], 14 | "dependencies": { 15 | "ual-reactjs-renderer": "0.1.6", 16 | "authenticator": "file:../authenticator", 17 | "react": "16.8.3", 18 | "react-dom": "16.8.3" 19 | }, 20 | "devDependencies": { 21 | "react-scripts": "3.1.1" 22 | }, 23 | "scripts": { 24 | "start": "react-scripts start", 25 | "build": "react-scripts build", 26 | "test": "react-scripts test", 27 | "eject": "react-scripts eject" 28 | }, 29 | "eslintConfig": { 30 | "extends": "react-app" 31 | }, 32 | "browserslist": [ 33 | ">0.2%", 34 | "not dead", 35 | "not ie <= 11", 36 | "not op_mini all" 37 | ] 38 | } 39 | -------------------------------------------------------------------------------- /example/app/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EOSIO/ual-authenticator-walkthrough/1942ce58a80e40d5de391021dbcf72a9d79b1bb8/example/app/public/favicon.ico -------------------------------------------------------------------------------- /example/app/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 10 | 11 | 15 | 16 | 25 | React App 26 | 27 | 28 | 29 |
30 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /example/app/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | } 10 | ], 11 | "start_url": ".", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /example/app/src/App.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react' 2 | import PropTypes from 'prop-types' 3 | import { Ledger } from 'authenticator' 4 | import { UALProvider, withUAL } from 'ual-reactjs-renderer' 5 | 6 | const receiver = process.env.REACT_APP_TO 7 | const getTransaction = (account) => ({ 8 | actions: [{ 9 | account: 'eosio.token', 10 | name: 'transfer', 11 | authorization: [{ actor: account, permission: 'active' }], 12 | data: { from: account, to: receiver, quantity: '0.0001 EOS', memo: '' }, 13 | }], 14 | }) 15 | 16 | class TestApp extends Component { 17 | static propTypes = { 18 | ual: PropTypes.shape({ 19 | activeUser: PropTypes.object, 20 | activeAuthenticator: PropTypes.object, 21 | logout: PropTypes.func, 22 | showModal: PropTypes.func, 23 | }).isRequired, 24 | } 25 | 26 | state = { message: '' } 27 | 28 | transfer = async () => { 29 | const { ual: { activeUser } } = this.props 30 | try { 31 | const accountName = await activeUser.getAccountName() 32 | const demoTransaction = getTransaction(accountName) 33 | const result = await activeUser.signTransaction(demoTransaction, { expireSeconds: 60, blocksBehind: 3 }) 34 | this.setState({ message: `Transfer Successful!` }, () => { 35 | setTimeout(this.resetMessage, 5000) 36 | }) 37 | console.info('SUCCESS:', result) 38 | } catch (e) { 39 | console.error('ERROR:', e) 40 | } 41 | } 42 | 43 | resetMessage = () => this.setState({ message: '' }) 44 | 45 | renderLoggedInView = () => ( 46 | <> 47 | {!!this.state.message 48 | && ( 49 |
50 |

{this.state.message}

51 |
52 | ) 53 | } 54 | 57 | 60 | 61 | ) 62 | 63 | renderLoginButton = () => ( 64 | 67 | ) 68 | 69 | render() { 70 | const { ual: { activeAuthenticator } } = this.props 71 | return ( 72 |
73 | {activeAuthenticator ? this.renderLoggedInView() : this.renderLoginButton()} 74 |
75 | ) 76 | } 77 | } 78 | 79 | const styles = { 80 | container: { 81 | display: 'flex', 82 | backgroundColor: '#fff', 83 | alignItems: 'center', 84 | justifyContent: 'center', 85 | height: '100vh', 86 | flexDirection: 'column', 87 | }, 88 | button: { 89 | padding: '10px 60px', 90 | backgroundColor: '#EA2E2E', 91 | textAlign: 'center', 92 | borderRadius: 5, 93 | color: '#FFFFFF', 94 | fontSize: 18, 95 | fontWeight: 'bold', 96 | }, 97 | logout: { 98 | marginTop: 20, 99 | }, 100 | baseText: { 101 | color: '#fff', 102 | fontSize: 18, 103 | }, 104 | blueBG: { 105 | backgroundColor: '#447DD8', 106 | }, 107 | announcementBar: { 108 | width: '100%', 109 | padding: '10px 50px 10px 20px', 110 | textAlign: 'center', 111 | backgroundColor: '#3de13d', 112 | top: 0, 113 | position: 'absolute', 114 | alignItems: 'center', 115 | }, 116 | } 117 | 118 | const chainId = process.env.REACT_APP_CHAIN_ID 119 | const rpcEndpoints = [{ 120 | protocol: process.env.REACT_APP_PROTOCOL, 121 | host: process.env.REACT_APP_HOST, 122 | port: process.env.REACT_APP_PORT, 123 | }] 124 | const exampleNet = { chainId, rpcEndpoints } 125 | const TestAppConsumer = withUAL(TestApp) 126 | const ledger = new Ledger([exampleNet]) 127 | 128 | const App = () => ( 129 | 130 | 131 | 132 | ) 133 | 134 | export default App -------------------------------------------------------------------------------- /example/app/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import ReactDOM from 'react-dom' 3 | import App from './App' 4 | import * as serviceWorker from './serviceWorker' 5 | 6 | ReactDOM.render(, document.getElementById('root')) 7 | 8 | // If you want your app to work offline and load faster, you can change 9 | // unregister() to register() below. Note this comes with some pitfalls. 10 | // Learn more about service workers: http://bit.ly/CRA-PWA 11 | serviceWorker.unregister() -------------------------------------------------------------------------------- /example/app/src/logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /example/app/src/serviceWorker.js: -------------------------------------------------------------------------------- 1 | // This optional code is used to register a service worker. 2 | // register() is not called by default. 3 | 4 | // This lets the app load faster on subsequent visits in production, and gives 5 | // it offline capabilities. However, it also means that developers (and users) 6 | // will only see deployed updates on subsequent visits to a page, after all the 7 | // existing tabs open on the page have been closed, since previously cached 8 | // resources are updated in the background. 9 | 10 | // To learn more about the benefits of this model and instructions on how to 11 | // opt-in, read http://bit.ly/CRA-PWA 12 | 13 | const isLocalhost = Boolean( 14 | window.location.hostname === 'localhost' || 15 | // [::1] is the IPv6 localhost address. 16 | window.location.hostname === '[::1]' || 17 | // 127.0.0.1/8 is considered localhost for IPv4. 18 | window.location.hostname.match( 19 | /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ 20 | ) 21 | ); 22 | 23 | export function register(config) { 24 | if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { 25 | // The URL constructor is available in all browsers that support SW. 26 | const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); 27 | if (publicUrl.origin !== window.location.origin) { 28 | // Our service worker won't work if PUBLIC_URL is on a different origin 29 | // from what our page is served on. This might happen if a CDN is used to 30 | // serve assets; see https://github.com/facebook/create-react-app/issues/2374 31 | return; 32 | } 33 | 34 | window.addEventListener('load', () => { 35 | const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; 36 | 37 | if (isLocalhost) { 38 | // This is running on localhost. Let's check if a service worker still exists or not. 39 | checkValidServiceWorker(swUrl, config); 40 | 41 | // Add some additional logging to localhost, pointing developers to the 42 | // service worker/PWA documentation. 43 | navigator.serviceWorker.ready.then(() => { 44 | console.log( 45 | 'This web app is being served cache-first by a service ' + 46 | 'worker. To learn more, visit http://bit.ly/CRA-PWA' 47 | ); 48 | }); 49 | } else { 50 | // Is not localhost. Just register service worker 51 | registerValidSW(swUrl, config); 52 | } 53 | }); 54 | } 55 | } 56 | 57 | function registerValidSW(swUrl, config) { 58 | navigator.serviceWorker 59 | .register(swUrl) 60 | .then(registration => { 61 | registration.onupdatefound = () => { 62 | const installingWorker = registration.installing; 63 | if (installingWorker == null) { 64 | return; 65 | } 66 | installingWorker.onstatechange = () => { 67 | if (installingWorker.state === 'installed') { 68 | if (navigator.serviceWorker.controller) { 69 | // At this point, the updated precached content has been fetched, 70 | // but the previous service worker will still serve the older 71 | // content until all client tabs are closed. 72 | console.log( 73 | 'New content is available and will be used when all ' + 74 | 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' 75 | ); 76 | 77 | // Execute callback 78 | if (config && config.onUpdate) { 79 | config.onUpdate(registration); 80 | } 81 | } else { 82 | // At this point, everything has been precached. 83 | // It's the perfect time to display a 84 | // "Content is cached for offline use." message. 85 | console.log('Content is cached for offline use.'); 86 | 87 | // Execute callback 88 | if (config && config.onSuccess) { 89 | config.onSuccess(registration); 90 | } 91 | } 92 | } 93 | }; 94 | }; 95 | }) 96 | .catch(error => { 97 | console.error('Error during service worker registration:', error); 98 | }); 99 | } 100 | 101 | function checkValidServiceWorker(swUrl, config) { 102 | // Check if the service worker can be found. If it can't reload the page. 103 | fetch(swUrl) 104 | .then(response => { 105 | // Ensure service worker exists, and that we really are getting a JS file. 106 | const contentType = response.headers.get('content-type'); 107 | if ( 108 | response.status === 404 || 109 | (contentType != null && contentType.indexOf('javascript') === -1) 110 | ) { 111 | // No service worker found. Probably a different app. Reload the page. 112 | navigator.serviceWorker.ready.then(registration => { 113 | registration.unregister().then(() => { 114 | window.location.reload(); 115 | }); 116 | }); 117 | } else { 118 | // Service worker found. Proceed as normal. 119 | registerValidSW(swUrl, config); 120 | } 121 | }) 122 | .catch(() => { 123 | console.log( 124 | 'No internet connection found. App is running in offline mode.' 125 | ); 126 | }); 127 | } 128 | 129 | export function unregister() { 130 | if ('serviceWorker' in navigator) { 131 | navigator.serviceWorker.ready.then(registration => { 132 | registration.unregister(); 133 | }); 134 | } 135 | } 136 | -------------------------------------------------------------------------------- /example/authenticator/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env"], 3 | "plugins": ["@babel/plugin-proposal-class-properties"] 4 | } -------------------------------------------------------------------------------- /example/authenticator/README.md: -------------------------------------------------------------------------------- 1 | # UAL Authenticator Walkthrough Example 2 | 3 | This Authenticator gets installed from the example app in `example/app`. 4 | 5 | ## Basic Setup 6 | ```bash 7 | ~ yarn 8 | ~ yarn build 9 | ``` -------------------------------------------------------------------------------- /example/authenticator/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "authenticator", 3 | "version": "1.0.1", 4 | "description": "", 5 | "main": "dist/index.js", 6 | "scripts": { 7 | "build": "babel src -d dist", 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "license": "MIT", 11 | "author": { 12 | "name": "block.one", 13 | "url": "https://block.one/" 14 | }, 15 | "collaborators": [ 16 | "Randy Torres", 17 | "Mike Manfredi" 18 | ], 19 | "dependencies": { 20 | "universal-authenticator-library": "0.1.4", 21 | "eosjs": "20.0.0", 22 | "text-encoding": "0.7.0" 23 | }, 24 | "devDependencies": { 25 | "@babel/cli": "^7.6.0", 26 | "@babel/core": "^7.3.4", 27 | "@babel/plugin-proposal-class-properties": "^7.3.4", 28 | "@babel/preset-env": "^7.3.4" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /example/authenticator/src/logo.js: -------------------------------------------------------------------------------- 1 | 2 | export const Logo = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAHyElEQVR4nOzd 3 | e3BU5R2H8b3vZneZKblYJ1y9NelUGYWp1pqg1VAqMIN4LWgBkVSbltFRe3MyeKMZvI1WCqSJBUIdJWCtMZ2pdlqDIaGEgKUtKEylSCDjZjdZTbKhM 4 | dlLp9MZm6G4xs35nt2Nz+fvnN/7zuwze/bsHg6ORCJhAYxmS/cGMD4RFiQICxKEBQnCggRhQYKwIEFYkCAsSBAWJAgLEoQFCcKCBGFBgrAgQViQIC 5 | xIEBYkCAsShAUJwoIEYUGCsCBBWJAgLEgQFiQICxKOdG/gdNFoLBKJDA5+FI3FEvF4kr+0Wq2TJxemvFBvb19fX3/Kh2cIq9Vqt9vdbrff73O5nOn 6 | ezv9kRFjd3eGW1rb2/QfefvvIyc7AKJ9T4nI5dzf/LuVF63c01Dz3fMqHZ6CCgrziovNnzZxRcsVl06dNSe9m0hlWPB5/s/nPL73c2L7vQDzOQ2/G 7 | KhTqCYV6drW0PfNsbXHReddfN3/etWUejzstm0lbWE07WzZUbzn23ol0bWB8O3zkaNVjz1bXbl2xbPGNNyxwOMx+odPw4T0QCP7g7p/+8CePUpVaO 8 | Pzhk09vvHVpxcFDh01e2uywmnftuXVpxZ62t0xe9/Ps6D+P3/Hde+u21pu5qKlhba7bdt+PHurN/muxrBOLxdZt2FT54Nrh4WFzVjQvrHXrf7V+42 9 | aeTJlGr73edP+PHx4ypS2Twtq0+cW6X283Zy0k0bq7vXL1WhOuwc0Iq2ln68aaOhMWwmi80dTyy9qt6lXkYb0f6Hp4zVOcATPKpi0v7m3XXj/Jw1p 10 | T9UwkMqBeBZ9JIpF45GdPnzr1L90S2rDeaGpp28s3C5koEAhuqdummy8MKx6Pb6jeopuPMXqh/rc9PR+IhgvD2vnm7veO89165hoc/Gj7Sw2i4cKw 11 | fvNy6rcewBwNja/HYsnuTUqZKqzu7nD7/gOi4TDKf16mfX9RTFaFtau1jTthskLTzlbFWFVY+/bxdpUd2jWvlCqsQ+8cEU2GsTpOdA4MnDJ8rCSsa 12 | CzW2RlQTIbCiZOdhs+UhBXpH+A3nCwSDHYbPlMS1uDgoGIsRPr6I4bPVJ0KFWMhEo1GDZ8pCYvzIPiX0JAgLEgQFiQICxKEBQnCggRhQYKwIEFYkJ 13 | A83cZqtbhdLsXkkZyZ9AA7nEYS1uRJha3NjYrJyBacCiFBWJAgLEgQFiQICxKEBQnCggRhQYKwIEFYkCAsSBAWJAgLEoQFCcKCBGFBgrAgQViQICx 14 | ISO557+3rr9/+imLySHa7/Y7bl6hXQWokYfX19dc897xi8kgul5OwMhanQkgQFiQICxKEBQnCggRhQYKwIEFYkCAsSBAWJAgLEoQFCcKCBGFBgrAg 15 | QViQICxIEBYkCAsShAUJwoIEYUGCsCBBWJAgLEgQFiQICxKEBQnCggRhQYKwIEFYkJA8eM3jcZeWXKaYPJLDMabNT5062YRNZoWzv3iW4TOtiUTC8 16 | KEAp0JIEBYkCAsShAUJwoIEYUGCsCBBWJAgLEgQFiQICxKEBQnCggRhQYKwIEFYkCAsSBAWJAgLEpJ/TNEV7H6gskoxeSSn01G9/vGUD29ofO3Vxj 17 | 8YuqMzmHHRl+9eVZ7y4WsfX/ePd48ZuqMzWLb05tklXzN2piSsoaGhv/7tkGLySC6XcyyHd3WFTNjkhAm+sRz+7tFjJmwyHP7A8JmcCiFBWJAgLEg 18 | QFiQICxKEBQnCggRhQYKwICEJy6oYiqwiCctutyvGQsRmMz4DSVhut1sxFiIT/H7DZ0rC8vu9irEQyc+faPhMSVgul6sgP1cxGQqTJhUaPlN1VVhc 19 | fIFoMoyVn5+XO/ELho9VhTXrkhmiyTDWrJkXKcaqwirhSddZYnbp5YqxqrCmT5tSVHSeaDiM4vN5r8yusCwWy6KF83TDYYhvzrnK45F8NyQMa8H8O 20 | bm5xn8qhFFsNuuSby9SDRfNtVgsHrd7xbLFuvkYo2vnXnPO9Kmi4dofoW+8YcG550yTLoHU+Hze71fcrpuvDcvhcKyuvJefDjPQPavKzyrI182X3z 21 | Zz4VeKv3fnMvUq+EzKrilddJ320sqM+7GWL71l7pyrTFgIo/GlC859sPI+9Som3ej30Or7S75+qTlrIYnp06b84udVOTk56oVMCsvpdD7x2Oqyq0v 22 | NWQ5nVFx0fs3GJ3Jzjb+X4f+Zd2uy0+msWvPAnSu/o7itDJ+q7OrS2uonzalK9VCQT2Kz2cpX3nbxJRc+8uhT7weCZi79eebzee9ZVa7+tH6aNLx5 23 | fHXWxfUv1KxYvlj0YwI+ZrPZ5s8r27Gt1uSqzH7H+pjXm1Nx1/JbblpYv6PhlVd/Hw5/mJZtjGM5Hs+35n5jyeLrdd+tJ5eesP4rL29ixV3Ly1fetn 24 | fvW8279rTvP9DR0ZnG/YwDBfl5M2fOKL3i0tmll3u98ku/JDLrf7GPRAaOd5wMBkO9vf1Dw0OxaDzJH9vttptvWpjyWn8/+M7Bg4dTPnyUCgvPvnJ2 25 | 6vel/PFPzaFQT5I/sNlsLpfT7/cVFORNnTLJtM/mnyqzwsK4wZU/JAgLEoQFCcKCBGFBgrAgQViQICxIEBYkCAsShAUJwoIEYUGCsCBBWJAgLEgQFi 26 | QICxKEBQnCggRhQYKwIEFYkCAsSBAWJAgLEv8OAAD//5XHzA/3RunzAAAAAElFTkSuQmCC` -------------------------------------------------------------------------------- /example/authenticator/yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/cli@^7.6.1": 6 | version "7.6.0" 7 | resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.6.0.tgz#1470a04394eaf37862989ea4912adf440fa6ff8d" 8 | integrity sha512-1CTDyGUjQqW3Mz4gfKZ04KGOckyyaNmKneAMlABPS+ZyuxWv3FrVEVz7Ag08kNIztVx8VaJ8YgvYLSNlMKAT5Q== 9 | dependencies: 10 | commander "^2.8.1" 11 | convert-source-map "^1.1.0" 12 | fs-readdir-recursive "^1.1.0" 13 | glob "^7.0.0" 14 | lodash "^4.17.13" 15 | mkdirp "^0.5.1" 16 | output-file-sync "^2.0.0" 17 | slash "^2.0.0" 18 | source-map "^0.5.0" 19 | optionalDependencies: 20 | chokidar "^2.1.8" 21 | 22 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": 23 | version "7.5.5" 24 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 25 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 26 | dependencies: 27 | "@babel/highlight" "^7.0.0" 28 | 29 | "@babel/core@^7.3.4": 30 | version "7.6.0" 31 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.0.tgz#9b00f73554edd67bebc86df8303ef678be3d7b48" 32 | integrity sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw== 33 | dependencies: 34 | "@babel/code-frame" "^7.5.5" 35 | "@babel/generator" "^7.6.0" 36 | "@babel/helpers" "^7.6.0" 37 | "@babel/parser" "^7.6.0" 38 | "@babel/template" "^7.6.0" 39 | "@babel/traverse" "^7.6.0" 40 | "@babel/types" "^7.6.0" 41 | convert-source-map "^1.1.0" 42 | debug "^4.1.0" 43 | json5 "^2.1.0" 44 | lodash "^4.17.13" 45 | resolve "^1.3.2" 46 | semver "^5.4.1" 47 | source-map "^0.5.0" 48 | 49 | "@babel/generator@^7.6.0": 50 | version "7.6.0" 51 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.0.tgz#e2c21efbfd3293ad819a2359b448f002bfdfda56" 52 | integrity sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA== 53 | dependencies: 54 | "@babel/types" "^7.6.0" 55 | jsesc "^2.5.1" 56 | lodash "^4.17.13" 57 | source-map "^0.5.0" 58 | trim-right "^1.0.1" 59 | 60 | "@babel/helper-annotate-as-pure@^7.0.0": 61 | version "7.0.0" 62 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" 63 | integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== 64 | dependencies: 65 | "@babel/types" "^7.0.0" 66 | 67 | "@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": 68 | version "7.1.0" 69 | resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" 70 | integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== 71 | dependencies: 72 | "@babel/helper-explode-assignable-expression" "^7.1.0" 73 | "@babel/types" "^7.0.0" 74 | 75 | "@babel/helper-call-delegate@^7.4.4": 76 | version "7.4.4" 77 | resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz#87c1f8ca19ad552a736a7a27b1c1fcf8b1ff1f43" 78 | integrity sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ== 79 | dependencies: 80 | "@babel/helper-hoist-variables" "^7.4.4" 81 | "@babel/traverse" "^7.4.4" 82 | "@babel/types" "^7.4.4" 83 | 84 | "@babel/helper-create-class-features-plugin@^7.5.5": 85 | version "7.6.0" 86 | resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.6.0.tgz#769711acca889be371e9bc2eb68641d55218021f" 87 | integrity sha512-O1QWBko4fzGju6VoVvrZg0RROCVifcLxiApnGP3OWfWzvxRZFCoBD81K5ur5e3bVY2Vf/5rIJm8cqPKn8HUJng== 88 | dependencies: 89 | "@babel/helper-function-name" "^7.1.0" 90 | "@babel/helper-member-expression-to-functions" "^7.5.5" 91 | "@babel/helper-optimise-call-expression" "^7.0.0" 92 | "@babel/helper-plugin-utils" "^7.0.0" 93 | "@babel/helper-replace-supers" "^7.5.5" 94 | "@babel/helper-split-export-declaration" "^7.4.4" 95 | 96 | "@babel/helper-define-map@^7.5.5": 97 | version "7.5.5" 98 | resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz#3dec32c2046f37e09b28c93eb0b103fd2a25d369" 99 | integrity sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg== 100 | dependencies: 101 | "@babel/helper-function-name" "^7.1.0" 102 | "@babel/types" "^7.5.5" 103 | lodash "^4.17.13" 104 | 105 | "@babel/helper-explode-assignable-expression@^7.1.0": 106 | version "7.1.0" 107 | resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" 108 | integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== 109 | dependencies: 110 | "@babel/traverse" "^7.1.0" 111 | "@babel/types" "^7.0.0" 112 | 113 | "@babel/helper-function-name@^7.1.0": 114 | version "7.1.0" 115 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" 116 | integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== 117 | dependencies: 118 | "@babel/helper-get-function-arity" "^7.0.0" 119 | "@babel/template" "^7.1.0" 120 | "@babel/types" "^7.0.0" 121 | 122 | "@babel/helper-get-function-arity@^7.0.0": 123 | version "7.0.0" 124 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" 125 | integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== 126 | dependencies: 127 | "@babel/types" "^7.0.0" 128 | 129 | "@babel/helper-hoist-variables@^7.4.4": 130 | version "7.4.4" 131 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz#0298b5f25c8c09c53102d52ac4a98f773eb2850a" 132 | integrity sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w== 133 | dependencies: 134 | "@babel/types" "^7.4.4" 135 | 136 | "@babel/helper-member-expression-to-functions@^7.5.5": 137 | version "7.5.5" 138 | resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz#1fb5b8ec4453a93c439ee9fe3aeea4a84b76b590" 139 | integrity sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA== 140 | dependencies: 141 | "@babel/types" "^7.5.5" 142 | 143 | "@babel/helper-module-imports@^7.0.0": 144 | version "7.0.0" 145 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" 146 | integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== 147 | dependencies: 148 | "@babel/types" "^7.0.0" 149 | 150 | "@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.4.4": 151 | version "7.5.5" 152 | resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz#f84ff8a09038dcbca1fd4355661a500937165b4a" 153 | integrity sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw== 154 | dependencies: 155 | "@babel/helper-module-imports" "^7.0.0" 156 | "@babel/helper-simple-access" "^7.1.0" 157 | "@babel/helper-split-export-declaration" "^7.4.4" 158 | "@babel/template" "^7.4.4" 159 | "@babel/types" "^7.5.5" 160 | lodash "^4.17.13" 161 | 162 | "@babel/helper-optimise-call-expression@^7.0.0": 163 | version "7.0.0" 164 | resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" 165 | integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== 166 | dependencies: 167 | "@babel/types" "^7.0.0" 168 | 169 | "@babel/helper-plugin-utils@^7.0.0": 170 | version "7.0.0" 171 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" 172 | integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== 173 | 174 | "@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4": 175 | version "7.5.5" 176 | resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.5.5.tgz#0aa6824f7100a2e0e89c1527c23936c152cab351" 177 | integrity sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw== 178 | dependencies: 179 | lodash "^4.17.13" 180 | 181 | "@babel/helper-remap-async-to-generator@^7.1.0": 182 | version "7.1.0" 183 | resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" 184 | integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== 185 | dependencies: 186 | "@babel/helper-annotate-as-pure" "^7.0.0" 187 | "@babel/helper-wrap-function" "^7.1.0" 188 | "@babel/template" "^7.1.0" 189 | "@babel/traverse" "^7.1.0" 190 | "@babel/types" "^7.0.0" 191 | 192 | "@babel/helper-replace-supers@^7.5.5": 193 | version "7.5.5" 194 | resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz#f84ce43df031222d2bad068d2626cb5799c34bc2" 195 | integrity sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg== 196 | dependencies: 197 | "@babel/helper-member-expression-to-functions" "^7.5.5" 198 | "@babel/helper-optimise-call-expression" "^7.0.0" 199 | "@babel/traverse" "^7.5.5" 200 | "@babel/types" "^7.5.5" 201 | 202 | "@babel/helper-simple-access@^7.1.0": 203 | version "7.1.0" 204 | resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" 205 | integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== 206 | dependencies: 207 | "@babel/template" "^7.1.0" 208 | "@babel/types" "^7.0.0" 209 | 210 | "@babel/helper-split-export-declaration@^7.4.4": 211 | version "7.4.4" 212 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" 213 | integrity sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q== 214 | dependencies: 215 | "@babel/types" "^7.4.4" 216 | 217 | "@babel/helper-wrap-function@^7.1.0": 218 | version "7.2.0" 219 | resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz#c4e0012445769e2815b55296ead43a958549f6fa" 220 | integrity sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ== 221 | dependencies: 222 | "@babel/helper-function-name" "^7.1.0" 223 | "@babel/template" "^7.1.0" 224 | "@babel/traverse" "^7.1.0" 225 | "@babel/types" "^7.2.0" 226 | 227 | "@babel/helpers@^7.6.0": 228 | version "7.6.0" 229 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.6.0.tgz#21961d16c6a3c3ab597325c34c465c0887d31c6e" 230 | integrity sha512-W9kao7OBleOjfXtFGgArGRX6eCP0UEcA2ZWEWNkJdRZnHhW4eEbeswbG3EwaRsnQUAEGWYgMq1HsIXuNNNy2eQ== 231 | dependencies: 232 | "@babel/template" "^7.6.0" 233 | "@babel/traverse" "^7.6.0" 234 | "@babel/types" "^7.6.0" 235 | 236 | "@babel/highlight@^7.0.0": 237 | version "7.5.0" 238 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" 239 | integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== 240 | dependencies: 241 | chalk "^2.0.0" 242 | esutils "^2.0.2" 243 | js-tokens "^4.0.0" 244 | 245 | "@babel/parser@^7.6.0": 246 | version "7.6.0" 247 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.0.tgz#3e05d0647432a8326cb28d0de03895ae5a57f39b" 248 | integrity sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ== 249 | 250 | "@babel/plugin-proposal-async-generator-functions@^7.2.0": 251 | version "7.2.0" 252 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e" 253 | integrity sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ== 254 | dependencies: 255 | "@babel/helper-plugin-utils" "^7.0.0" 256 | "@babel/helper-remap-async-to-generator" "^7.1.0" 257 | "@babel/plugin-syntax-async-generators" "^7.2.0" 258 | 259 | "@babel/plugin-proposal-class-properties@^7.3.4": 260 | version "7.5.5" 261 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz#a974cfae1e37c3110e71f3c6a2e48b8e71958cd4" 262 | integrity sha512-AF79FsnWFxjlaosgdi421vmYG6/jg79bVD0dpD44QdgobzHKuLZ6S3vl8la9qIeSwGi8i1fS0O1mfuDAAdo1/A== 263 | dependencies: 264 | "@babel/helper-create-class-features-plugin" "^7.5.5" 265 | "@babel/helper-plugin-utils" "^7.0.0" 266 | 267 | "@babel/plugin-proposal-dynamic-import@^7.5.0": 268 | version "7.5.0" 269 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz#e532202db4838723691b10a67b8ce509e397c506" 270 | integrity sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw== 271 | dependencies: 272 | "@babel/helper-plugin-utils" "^7.0.0" 273 | "@babel/plugin-syntax-dynamic-import" "^7.2.0" 274 | 275 | "@babel/plugin-proposal-json-strings@^7.2.0": 276 | version "7.2.0" 277 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" 278 | integrity sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg== 279 | dependencies: 280 | "@babel/helper-plugin-utils" "^7.0.0" 281 | "@babel/plugin-syntax-json-strings" "^7.2.0" 282 | 283 | "@babel/plugin-proposal-object-rest-spread@^7.5.5": 284 | version "7.5.5" 285 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" 286 | integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== 287 | dependencies: 288 | "@babel/helper-plugin-utils" "^7.0.0" 289 | "@babel/plugin-syntax-object-rest-spread" "^7.2.0" 290 | 291 | "@babel/plugin-proposal-optional-catch-binding@^7.2.0": 292 | version "7.2.0" 293 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5" 294 | integrity sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g== 295 | dependencies: 296 | "@babel/helper-plugin-utils" "^7.0.0" 297 | "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" 298 | 299 | "@babel/plugin-proposal-unicode-property-regex@^7.4.4": 300 | version "7.4.4" 301 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz#501ffd9826c0b91da22690720722ac7cb1ca9c78" 302 | integrity sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA== 303 | dependencies: 304 | "@babel/helper-plugin-utils" "^7.0.0" 305 | "@babel/helper-regex" "^7.4.4" 306 | regexpu-core "^4.5.4" 307 | 308 | "@babel/plugin-syntax-async-generators@^7.2.0": 309 | version "7.2.0" 310 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" 311 | integrity sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg== 312 | dependencies: 313 | "@babel/helper-plugin-utils" "^7.0.0" 314 | 315 | "@babel/plugin-syntax-dynamic-import@^7.2.0": 316 | version "7.2.0" 317 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz#69c159ffaf4998122161ad8ebc5e6d1f55df8612" 318 | integrity sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w== 319 | dependencies: 320 | "@babel/helper-plugin-utils" "^7.0.0" 321 | 322 | "@babel/plugin-syntax-json-strings@^7.2.0": 323 | version "7.2.0" 324 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" 325 | integrity sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg== 326 | dependencies: 327 | "@babel/helper-plugin-utils" "^7.0.0" 328 | 329 | "@babel/plugin-syntax-object-rest-spread@^7.2.0": 330 | version "7.2.0" 331 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" 332 | integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA== 333 | dependencies: 334 | "@babel/helper-plugin-utils" "^7.0.0" 335 | 336 | "@babel/plugin-syntax-optional-catch-binding@^7.2.0": 337 | version "7.2.0" 338 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" 339 | integrity sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w== 340 | dependencies: 341 | "@babel/helper-plugin-utils" "^7.0.0" 342 | 343 | "@babel/plugin-transform-arrow-functions@^7.2.0": 344 | version "7.2.0" 345 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" 346 | integrity sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg== 347 | dependencies: 348 | "@babel/helper-plugin-utils" "^7.0.0" 349 | 350 | "@babel/plugin-transform-async-to-generator@^7.5.0": 351 | version "7.5.0" 352 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" 353 | integrity sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg== 354 | dependencies: 355 | "@babel/helper-module-imports" "^7.0.0" 356 | "@babel/helper-plugin-utils" "^7.0.0" 357 | "@babel/helper-remap-async-to-generator" "^7.1.0" 358 | 359 | "@babel/plugin-transform-block-scoped-functions@^7.2.0": 360 | version "7.2.0" 361 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" 362 | integrity sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w== 363 | dependencies: 364 | "@babel/helper-plugin-utils" "^7.0.0" 365 | 366 | "@babel/plugin-transform-block-scoping@^7.6.0": 367 | version "7.6.0" 368 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.0.tgz#c49e21228c4bbd4068a35667e6d951c75439b1dc" 369 | integrity sha512-tIt4E23+kw6TgL/edACZwP1OUKrjOTyMrFMLoT5IOFrfMRabCgekjqFd5o6PaAMildBu46oFkekIdMuGkkPEpA== 370 | dependencies: 371 | "@babel/helper-plugin-utils" "^7.0.0" 372 | lodash "^4.17.13" 373 | 374 | "@babel/plugin-transform-classes@^7.5.5": 375 | version "7.5.5" 376 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz#d094299d9bd680a14a2a0edae38305ad60fb4de9" 377 | integrity sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg== 378 | dependencies: 379 | "@babel/helper-annotate-as-pure" "^7.0.0" 380 | "@babel/helper-define-map" "^7.5.5" 381 | "@babel/helper-function-name" "^7.1.0" 382 | "@babel/helper-optimise-call-expression" "^7.0.0" 383 | "@babel/helper-plugin-utils" "^7.0.0" 384 | "@babel/helper-replace-supers" "^7.5.5" 385 | "@babel/helper-split-export-declaration" "^7.4.4" 386 | globals "^11.1.0" 387 | 388 | "@babel/plugin-transform-computed-properties@^7.2.0": 389 | version "7.2.0" 390 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" 391 | integrity sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA== 392 | dependencies: 393 | "@babel/helper-plugin-utils" "^7.0.0" 394 | 395 | "@babel/plugin-transform-destructuring@^7.6.0": 396 | version "7.6.0" 397 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz#44bbe08b57f4480094d57d9ffbcd96d309075ba6" 398 | integrity sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ== 399 | dependencies: 400 | "@babel/helper-plugin-utils" "^7.0.0" 401 | 402 | "@babel/plugin-transform-dotall-regex@^7.4.4": 403 | version "7.4.4" 404 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz#361a148bc951444312c69446d76ed1ea8e4450c3" 405 | integrity sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg== 406 | dependencies: 407 | "@babel/helper-plugin-utils" "^7.0.0" 408 | "@babel/helper-regex" "^7.4.4" 409 | regexpu-core "^4.5.4" 410 | 411 | "@babel/plugin-transform-duplicate-keys@^7.5.0": 412 | version "7.5.0" 413 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" 414 | integrity sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ== 415 | dependencies: 416 | "@babel/helper-plugin-utils" "^7.0.0" 417 | 418 | "@babel/plugin-transform-exponentiation-operator@^7.2.0": 419 | version "7.2.0" 420 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" 421 | integrity sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A== 422 | dependencies: 423 | "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" 424 | "@babel/helper-plugin-utils" "^7.0.0" 425 | 426 | "@babel/plugin-transform-for-of@^7.4.4": 427 | version "7.4.4" 428 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz#0267fc735e24c808ba173866c6c4d1440fc3c556" 429 | integrity sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ== 430 | dependencies: 431 | "@babel/helper-plugin-utils" "^7.0.0" 432 | 433 | "@babel/plugin-transform-function-name@^7.4.4": 434 | version "7.4.4" 435 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz#e1436116abb0610c2259094848754ac5230922ad" 436 | integrity sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA== 437 | dependencies: 438 | "@babel/helper-function-name" "^7.1.0" 439 | "@babel/helper-plugin-utils" "^7.0.0" 440 | 441 | "@babel/plugin-transform-literals@^7.2.0": 442 | version "7.2.0" 443 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" 444 | integrity sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg== 445 | dependencies: 446 | "@babel/helper-plugin-utils" "^7.0.0" 447 | 448 | "@babel/plugin-transform-member-expression-literals@^7.2.0": 449 | version "7.2.0" 450 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d" 451 | integrity sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA== 452 | dependencies: 453 | "@babel/helper-plugin-utils" "^7.0.0" 454 | 455 | "@babel/plugin-transform-modules-amd@^7.5.0": 456 | version "7.5.0" 457 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" 458 | integrity sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg== 459 | dependencies: 460 | "@babel/helper-module-transforms" "^7.1.0" 461 | "@babel/helper-plugin-utils" "^7.0.0" 462 | babel-plugin-dynamic-import-node "^2.3.0" 463 | 464 | "@babel/plugin-transform-modules-commonjs@^7.6.0": 465 | version "7.6.0" 466 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz#39dfe957de4420445f1fcf88b68a2e4aa4515486" 467 | integrity sha512-Ma93Ix95PNSEngqomy5LSBMAQvYKVe3dy+JlVJSHEXZR5ASL9lQBedMiCyVtmTLraIDVRE3ZjTZvmXXD2Ozw3g== 468 | dependencies: 469 | "@babel/helper-module-transforms" "^7.4.4" 470 | "@babel/helper-plugin-utils" "^7.0.0" 471 | "@babel/helper-simple-access" "^7.1.0" 472 | babel-plugin-dynamic-import-node "^2.3.0" 473 | 474 | "@babel/plugin-transform-modules-systemjs@^7.5.0": 475 | version "7.5.0" 476 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz#e75266a13ef94202db2a0620977756f51d52d249" 477 | integrity sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg== 478 | dependencies: 479 | "@babel/helper-hoist-variables" "^7.4.4" 480 | "@babel/helper-plugin-utils" "^7.0.0" 481 | babel-plugin-dynamic-import-node "^2.3.0" 482 | 483 | "@babel/plugin-transform-modules-umd@^7.2.0": 484 | version "7.2.0" 485 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz#7678ce75169f0877b8eb2235538c074268dd01ae" 486 | integrity sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw== 487 | dependencies: 488 | "@babel/helper-module-transforms" "^7.1.0" 489 | "@babel/helper-plugin-utils" "^7.0.0" 490 | 491 | "@babel/plugin-transform-named-capturing-groups-regex@^7.6.0": 492 | version "7.6.0" 493 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.0.tgz#1e6e663097813bb4f53d42df0750cf28ad3bb3f1" 494 | integrity sha512-jem7uytlmrRl3iCAuQyw8BpB4c4LWvSpvIeXKpMb+7j84lkx4m4mYr5ErAcmN5KM7B6BqrAvRGjBIbbzqCczew== 495 | dependencies: 496 | regexp-tree "^0.1.13" 497 | 498 | "@babel/plugin-transform-new-target@^7.4.4": 499 | version "7.4.4" 500 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5" 501 | integrity sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA== 502 | dependencies: 503 | "@babel/helper-plugin-utils" "^7.0.0" 504 | 505 | "@babel/plugin-transform-object-super@^7.5.5": 506 | version "7.5.5" 507 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" 508 | integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ== 509 | dependencies: 510 | "@babel/helper-plugin-utils" "^7.0.0" 511 | "@babel/helper-replace-supers" "^7.5.5" 512 | 513 | "@babel/plugin-transform-parameters@^7.4.4": 514 | version "7.4.4" 515 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16" 516 | integrity sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw== 517 | dependencies: 518 | "@babel/helper-call-delegate" "^7.4.4" 519 | "@babel/helper-get-function-arity" "^7.0.0" 520 | "@babel/helper-plugin-utils" "^7.0.0" 521 | 522 | "@babel/plugin-transform-property-literals@^7.2.0": 523 | version "7.2.0" 524 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905" 525 | integrity sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ== 526 | dependencies: 527 | "@babel/helper-plugin-utils" "^7.0.0" 528 | 529 | "@babel/plugin-transform-regenerator@^7.4.5": 530 | version "7.4.5" 531 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz#629dc82512c55cee01341fb27bdfcb210354680f" 532 | integrity sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA== 533 | dependencies: 534 | regenerator-transform "^0.14.0" 535 | 536 | "@babel/plugin-transform-reserved-words@^7.2.0": 537 | version "7.2.0" 538 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634" 539 | integrity sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw== 540 | dependencies: 541 | "@babel/helper-plugin-utils" "^7.0.0" 542 | 543 | "@babel/plugin-transform-shorthand-properties@^7.2.0": 544 | version "7.2.0" 545 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" 546 | integrity sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg== 547 | dependencies: 548 | "@babel/helper-plugin-utils" "^7.0.0" 549 | 550 | "@babel/plugin-transform-spread@^7.2.0": 551 | version "7.2.2" 552 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz#3103a9abe22f742b6d406ecd3cd49b774919b406" 553 | integrity sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w== 554 | dependencies: 555 | "@babel/helper-plugin-utils" "^7.0.0" 556 | 557 | "@babel/plugin-transform-sticky-regex@^7.2.0": 558 | version "7.2.0" 559 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" 560 | integrity sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw== 561 | dependencies: 562 | "@babel/helper-plugin-utils" "^7.0.0" 563 | "@babel/helper-regex" "^7.0.0" 564 | 565 | "@babel/plugin-transform-template-literals@^7.4.4": 566 | version "7.4.4" 567 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0" 568 | integrity sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g== 569 | dependencies: 570 | "@babel/helper-annotate-as-pure" "^7.0.0" 571 | "@babel/helper-plugin-utils" "^7.0.0" 572 | 573 | "@babel/plugin-transform-typeof-symbol@^7.2.0": 574 | version "7.2.0" 575 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" 576 | integrity sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw== 577 | dependencies: 578 | "@babel/helper-plugin-utils" "^7.0.0" 579 | 580 | "@babel/plugin-transform-unicode-regex@^7.4.4": 581 | version "7.4.4" 582 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz#ab4634bb4f14d36728bf5978322b35587787970f" 583 | integrity sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA== 584 | dependencies: 585 | "@babel/helper-plugin-utils" "^7.0.0" 586 | "@babel/helper-regex" "^7.4.4" 587 | regexpu-core "^4.5.4" 588 | 589 | "@babel/preset-env@^7.3.4": 590 | version "7.6.0" 591 | resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.0.tgz#aae4141c506100bb2bfaa4ac2a5c12b395619e50" 592 | integrity sha512-1efzxFv/TcPsNXlRhMzRnkBFMeIqBBgzwmZwlFDw5Ubj0AGLeufxugirwZmkkX/ayi3owsSqoQ4fw8LkfK9SYg== 593 | dependencies: 594 | "@babel/helper-module-imports" "^7.0.0" 595 | "@babel/helper-plugin-utils" "^7.0.0" 596 | "@babel/plugin-proposal-async-generator-functions" "^7.2.0" 597 | "@babel/plugin-proposal-dynamic-import" "^7.5.0" 598 | "@babel/plugin-proposal-json-strings" "^7.2.0" 599 | "@babel/plugin-proposal-object-rest-spread" "^7.5.5" 600 | "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" 601 | "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" 602 | "@babel/plugin-syntax-async-generators" "^7.2.0" 603 | "@babel/plugin-syntax-dynamic-import" "^7.2.0" 604 | "@babel/plugin-syntax-json-strings" "^7.2.0" 605 | "@babel/plugin-syntax-object-rest-spread" "^7.2.0" 606 | "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" 607 | "@babel/plugin-transform-arrow-functions" "^7.2.0" 608 | "@babel/plugin-transform-async-to-generator" "^7.5.0" 609 | "@babel/plugin-transform-block-scoped-functions" "^7.2.0" 610 | "@babel/plugin-transform-block-scoping" "^7.6.0" 611 | "@babel/plugin-transform-classes" "^7.5.5" 612 | "@babel/plugin-transform-computed-properties" "^7.2.0" 613 | "@babel/plugin-transform-destructuring" "^7.6.0" 614 | "@babel/plugin-transform-dotall-regex" "^7.4.4" 615 | "@babel/plugin-transform-duplicate-keys" "^7.5.0" 616 | "@babel/plugin-transform-exponentiation-operator" "^7.2.0" 617 | "@babel/plugin-transform-for-of" "^7.4.4" 618 | "@babel/plugin-transform-function-name" "^7.4.4" 619 | "@babel/plugin-transform-literals" "^7.2.0" 620 | "@babel/plugin-transform-member-expression-literals" "^7.2.0" 621 | "@babel/plugin-transform-modules-amd" "^7.5.0" 622 | "@babel/plugin-transform-modules-commonjs" "^7.6.0" 623 | "@babel/plugin-transform-modules-systemjs" "^7.5.0" 624 | "@babel/plugin-transform-modules-umd" "^7.2.0" 625 | "@babel/plugin-transform-named-capturing-groups-regex" "^7.6.0" 626 | "@babel/plugin-transform-new-target" "^7.4.4" 627 | "@babel/plugin-transform-object-super" "^7.5.5" 628 | "@babel/plugin-transform-parameters" "^7.4.4" 629 | "@babel/plugin-transform-property-literals" "^7.2.0" 630 | "@babel/plugin-transform-regenerator" "^7.4.5" 631 | "@babel/plugin-transform-reserved-words" "^7.2.0" 632 | "@babel/plugin-transform-shorthand-properties" "^7.2.0" 633 | "@babel/plugin-transform-spread" "^7.2.0" 634 | "@babel/plugin-transform-sticky-regex" "^7.2.0" 635 | "@babel/plugin-transform-template-literals" "^7.4.4" 636 | "@babel/plugin-transform-typeof-symbol" "^7.2.0" 637 | "@babel/plugin-transform-unicode-regex" "^7.4.4" 638 | "@babel/types" "^7.6.0" 639 | browserslist "^4.6.0" 640 | core-js-compat "^3.1.1" 641 | invariant "^2.2.2" 642 | js-levenshtein "^1.1.3" 643 | semver "^5.5.0" 644 | 645 | "@babel/template@^7.1.0", "@babel/template@^7.4.4", "@babel/template@^7.6.0": 646 | version "7.6.0" 647 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6" 648 | integrity sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ== 649 | dependencies: 650 | "@babel/code-frame" "^7.0.0" 651 | "@babel/parser" "^7.6.0" 652 | "@babel/types" "^7.6.0" 653 | 654 | "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.5", "@babel/traverse@^7.6.0": 655 | version "7.6.0" 656 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.0.tgz#389391d510f79be7ce2ddd6717be66d3fed4b516" 657 | integrity sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ== 658 | dependencies: 659 | "@babel/code-frame" "^7.5.5" 660 | "@babel/generator" "^7.6.0" 661 | "@babel/helper-function-name" "^7.1.0" 662 | "@babel/helper-split-export-declaration" "^7.4.4" 663 | "@babel/parser" "^7.6.0" 664 | "@babel/types" "^7.6.0" 665 | debug "^4.1.0" 666 | globals "^11.1.0" 667 | lodash "^4.17.13" 668 | 669 | "@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.4.4", "@babel/types@^7.5.5", "@babel/types@^7.6.0": 670 | version "7.6.1" 671 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.6.1.tgz#53abf3308add3ac2a2884d539151c57c4b3ac648" 672 | integrity sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g== 673 | dependencies: 674 | esutils "^2.0.2" 675 | lodash "^4.17.13" 676 | to-fast-properties "^2.0.0" 677 | 678 | abbrev@1: 679 | version "1.1.1" 680 | resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" 681 | integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== 682 | 683 | ansi-regex@^2.0.0: 684 | version "2.1.1" 685 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 686 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 687 | 688 | ansi-regex@^3.0.0: 689 | version "3.0.0" 690 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 691 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 692 | 693 | ansi-styles@^3.2.1: 694 | version "3.2.1" 695 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 696 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 697 | dependencies: 698 | color-convert "^1.9.0" 699 | 700 | anymatch@^2.0.0: 701 | version "2.0.0" 702 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" 703 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== 704 | dependencies: 705 | micromatch "^3.1.4" 706 | normalize-path "^2.1.1" 707 | 708 | aproba@^1.0.3: 709 | version "1.2.0" 710 | resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" 711 | integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== 712 | 713 | are-we-there-yet@~1.1.2: 714 | version "1.1.5" 715 | resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" 716 | integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== 717 | dependencies: 718 | delegates "^1.0.0" 719 | readable-stream "^2.0.6" 720 | 721 | arr-diff@^4.0.0: 722 | version "4.0.0" 723 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" 724 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= 725 | 726 | arr-flatten@^1.1.0: 727 | version "1.1.0" 728 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 729 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 730 | 731 | arr-union@^3.1.0: 732 | version "3.1.0" 733 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" 734 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= 735 | 736 | array-unique@^0.3.2: 737 | version "0.3.2" 738 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" 739 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= 740 | 741 | assign-symbols@^1.0.0: 742 | version "1.0.0" 743 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" 744 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= 745 | 746 | async-each@^1.0.1: 747 | version "1.0.3" 748 | resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" 749 | integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== 750 | 751 | atob@^2.1.1: 752 | version "2.1.2" 753 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" 754 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== 755 | 756 | babel-plugin-dynamic-import-node@^2.3.0: 757 | version "2.3.0" 758 | resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" 759 | integrity sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ== 760 | dependencies: 761 | object.assign "^4.1.0" 762 | 763 | babel-runtime@6.26.0: 764 | version "6.26.0" 765 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" 766 | integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 767 | dependencies: 768 | core-js "^2.4.0" 769 | regenerator-runtime "^0.11.0" 770 | 771 | balanced-match@^1.0.0: 772 | version "1.0.0" 773 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 774 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 775 | 776 | base-x@^3.0.2: 777 | version "3.0.7" 778 | resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.7.tgz#1c5a7fafe8f66b4114063e8da102799d4e7c408f" 779 | integrity sha512-zAKJGuQPihXW22fkrfOclUUZXM2g92z5GzlSMHxhO6r6Qj+Nm0ccaGNBzDZojzwOMkpjAv4J0fOv1U4go+a4iw== 780 | dependencies: 781 | safe-buffer "^5.0.1" 782 | 783 | base@^0.11.1: 784 | version "0.11.2" 785 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" 786 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== 787 | dependencies: 788 | cache-base "^1.0.1" 789 | class-utils "^0.3.5" 790 | component-emitter "^1.2.1" 791 | define-property "^1.0.0" 792 | isobject "^3.0.1" 793 | mixin-deep "^1.2.0" 794 | pascalcase "^0.1.1" 795 | 796 | bigi@^1.1.0, bigi@^1.4.2: 797 | version "1.4.2" 798 | resolved "https://registry.yarnpkg.com/bigi/-/bigi-1.4.2.tgz#9c665a95f88b8b08fc05cfd731f561859d725825" 799 | integrity sha1-nGZalfiLiwj8Bc/XMfVhhZ1yWCU= 800 | 801 | binary-extensions@^1.0.0: 802 | version "1.13.1" 803 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" 804 | integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== 805 | 806 | brace-expansion@^1.1.7: 807 | version "1.1.11" 808 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 809 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 810 | dependencies: 811 | balanced-match "^1.0.0" 812 | concat-map "0.0.1" 813 | 814 | braces@^2.3.1, braces@^2.3.2: 815 | version "2.3.2" 816 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" 817 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== 818 | dependencies: 819 | arr-flatten "^1.1.0" 820 | array-unique "^0.3.2" 821 | extend-shallow "^2.0.1" 822 | fill-range "^4.0.0" 823 | isobject "^3.0.1" 824 | repeat-element "^1.1.2" 825 | snapdragon "^0.8.1" 826 | snapdragon-node "^2.0.1" 827 | split-string "^3.0.2" 828 | to-regex "^3.0.1" 829 | 830 | browserify-aes@^1.0.6: 831 | version "1.2.0" 832 | resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" 833 | integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== 834 | dependencies: 835 | buffer-xor "^1.0.3" 836 | cipher-base "^1.0.0" 837 | create-hash "^1.1.0" 838 | evp_bytestokey "^1.0.3" 839 | inherits "^2.0.1" 840 | safe-buffer "^5.0.1" 841 | 842 | browserslist@^4.6.0, browserslist@^4.6.6: 843 | version "4.7.0" 844 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz#9ee89225ffc07db03409f2fee524dc8227458a17" 845 | integrity sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA== 846 | dependencies: 847 | caniuse-lite "^1.0.30000989" 848 | electron-to-chromium "^1.3.247" 849 | node-releases "^1.1.29" 850 | 851 | bs58@^4.0.1: 852 | version "4.0.1" 853 | resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" 854 | integrity sha1-vhYedsNU9veIrkBx9j806MTwpCo= 855 | dependencies: 856 | base-x "^3.0.2" 857 | 858 | buffer-xor@^1.0.3: 859 | version "1.0.3" 860 | resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" 861 | integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= 862 | 863 | bytebuffer@^5.0.1: 864 | version "5.0.1" 865 | resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" 866 | integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= 867 | dependencies: 868 | long "~3" 869 | 870 | cache-base@^1.0.1: 871 | version "1.0.1" 872 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" 873 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== 874 | dependencies: 875 | collection-visit "^1.0.0" 876 | component-emitter "^1.2.1" 877 | get-value "^2.0.6" 878 | has-value "^1.0.0" 879 | isobject "^3.0.1" 880 | set-value "^2.0.0" 881 | to-object-path "^0.3.0" 882 | union-value "^1.0.0" 883 | unset-value "^1.0.0" 884 | 885 | caniuse-lite@^1.0.30000989: 886 | version "1.0.30000989" 887 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz#b9193e293ccf7e4426c5245134b8f2a56c0ac4b9" 888 | integrity sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw== 889 | 890 | chalk@^2.0.0: 891 | version "2.4.2" 892 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 893 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 894 | dependencies: 895 | ansi-styles "^3.2.1" 896 | escape-string-regexp "^1.0.5" 897 | supports-color "^5.3.0" 898 | 899 | chokidar@^2.1.8: 900 | version "2.1.8" 901 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" 902 | integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== 903 | dependencies: 904 | anymatch "^2.0.0" 905 | async-each "^1.0.1" 906 | braces "^2.3.2" 907 | glob-parent "^3.1.0" 908 | inherits "^2.0.3" 909 | is-binary-path "^1.0.0" 910 | is-glob "^4.0.0" 911 | normalize-path "^3.0.0" 912 | path-is-absolute "^1.0.0" 913 | readdirp "^2.2.1" 914 | upath "^1.1.1" 915 | optionalDependencies: 916 | fsevents "^1.2.7" 917 | 918 | chownr@^1.1.1: 919 | version "1.1.2" 920 | resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" 921 | integrity sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A== 922 | 923 | cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: 924 | version "1.0.4" 925 | resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" 926 | integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== 927 | dependencies: 928 | inherits "^2.0.1" 929 | safe-buffer "^5.0.1" 930 | 931 | class-utils@^0.3.5: 932 | version "0.3.6" 933 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" 934 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== 935 | dependencies: 936 | arr-union "^3.1.0" 937 | define-property "^0.2.5" 938 | isobject "^3.0.0" 939 | static-extend "^0.1.1" 940 | 941 | code-point-at@^1.0.0: 942 | version "1.1.0" 943 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 944 | integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= 945 | 946 | collection-visit@^1.0.0: 947 | version "1.0.0" 948 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" 949 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= 950 | dependencies: 951 | map-visit "^1.0.0" 952 | object-visit "^1.0.0" 953 | 954 | color-convert@^1.9.0: 955 | version "1.9.3" 956 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 957 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 958 | dependencies: 959 | color-name "1.1.3" 960 | 961 | color-name@1.1.3: 962 | version "1.1.3" 963 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 964 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 965 | 966 | commander@^2.8.1: 967 | version "2.20.0" 968 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" 969 | integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== 970 | 971 | component-emitter@^1.2.1: 972 | version "1.3.0" 973 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" 974 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== 975 | 976 | concat-map@0.0.1: 977 | version "0.0.1" 978 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 979 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 980 | 981 | console-control-strings@^1.0.0, console-control-strings@~1.1.0: 982 | version "1.1.0" 983 | resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" 984 | integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= 985 | 986 | convert-source-map@^1.1.0: 987 | version "1.6.0" 988 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" 989 | integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== 990 | dependencies: 991 | safe-buffer "~5.1.1" 992 | 993 | copy-descriptor@^0.1.0: 994 | version "0.1.1" 995 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" 996 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= 997 | 998 | core-js-compat@^3.1.1: 999 | version "3.2.1" 1000 | resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.2.1.tgz#0cbdbc2e386e8e00d3b85dc81c848effec5b8150" 1001 | integrity sha512-MwPZle5CF9dEaMYdDeWm73ao/IflDH+FjeJCWEADcEgFSE9TLimFKwJsfmkwzI8eC0Aj0mgvMDjeQjrElkz4/A== 1002 | dependencies: 1003 | browserslist "^4.6.6" 1004 | semver "^6.3.0" 1005 | 1006 | core-js@^2.4.0: 1007 | version "2.6.9" 1008 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" 1009 | integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== 1010 | 1011 | core-util-is@~1.0.0: 1012 | version "1.0.2" 1013 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 1014 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 1015 | 1016 | create-hash@^1.1.0, create-hash@^1.1.3: 1017 | version "1.2.0" 1018 | resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" 1019 | integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== 1020 | dependencies: 1021 | cipher-base "^1.0.1" 1022 | inherits "^2.0.1" 1023 | md5.js "^1.3.4" 1024 | ripemd160 "^2.0.1" 1025 | sha.js "^2.4.0" 1026 | 1027 | create-hmac@^1.1.6: 1028 | version "1.1.7" 1029 | resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" 1030 | integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== 1031 | dependencies: 1032 | cipher-base "^1.0.3" 1033 | create-hash "^1.1.0" 1034 | inherits "^2.0.1" 1035 | ripemd160 "^2.0.0" 1036 | safe-buffer "^5.0.1" 1037 | sha.js "^2.4.8" 1038 | 1039 | debug@^2.2.0, debug@^2.3.3: 1040 | version "2.6.9" 1041 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 1042 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 1043 | dependencies: 1044 | ms "2.0.0" 1045 | 1046 | debug@^3.2.6: 1047 | version "3.2.6" 1048 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" 1049 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== 1050 | dependencies: 1051 | ms "^2.1.1" 1052 | 1053 | debug@^4.1.0: 1054 | version "4.1.1" 1055 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 1056 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 1057 | dependencies: 1058 | ms "^2.1.1" 1059 | 1060 | decode-uri-component@^0.2.0: 1061 | version "0.2.0" 1062 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" 1063 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 1064 | 1065 | deep-extend@^0.6.0: 1066 | version "0.6.0" 1067 | resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" 1068 | integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== 1069 | 1070 | define-properties@^1.1.2: 1071 | version "1.1.3" 1072 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 1073 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 1074 | dependencies: 1075 | object-keys "^1.0.12" 1076 | 1077 | define-property@^0.2.5: 1078 | version "0.2.5" 1079 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" 1080 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= 1081 | dependencies: 1082 | is-descriptor "^0.1.0" 1083 | 1084 | define-property@^1.0.0: 1085 | version "1.0.0" 1086 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" 1087 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= 1088 | dependencies: 1089 | is-descriptor "^1.0.0" 1090 | 1091 | define-property@^2.0.2: 1092 | version "2.0.2" 1093 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" 1094 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== 1095 | dependencies: 1096 | is-descriptor "^1.0.2" 1097 | isobject "^3.0.1" 1098 | 1099 | delegates@^1.0.0: 1100 | version "1.0.0" 1101 | resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" 1102 | integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= 1103 | 1104 | detect-libc@^1.0.2: 1105 | version "1.0.3" 1106 | resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" 1107 | integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= 1108 | 1109 | ecurve@^1.0.5: 1110 | version "1.0.6" 1111 | resolved "https://registry.yarnpkg.com/ecurve/-/ecurve-1.0.6.tgz#dfdabbb7149f8d8b78816be5a7d5b83fcf6de797" 1112 | integrity sha512-/BzEjNfiSuB7jIWKcS/z8FK9jNjmEWvUV2YZ4RLSmcDtP7Lq0m6FvDuSnJpBlDpGRpfRQeTLGLBI8H+kEv0r+w== 1113 | dependencies: 1114 | bigi "^1.1.0" 1115 | safe-buffer "^5.0.1" 1116 | 1117 | electron-to-chromium@^1.3.247: 1118 | version "1.3.257" 1119 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.257.tgz#35da0ad5833b27184c8298804c498a4d2f4ed27d" 1120 | integrity sha512-EcKVmUeHCZelPA0wnIaSmpAN8karKhKBwFb+xLUjSVZ8sGRE1l3fst1zQZ7KJUkyJ7H5edPd4RP94pzC9sG00A== 1121 | 1122 | eosjs-ecc@4.0.4: 1123 | version "4.0.4" 1124 | resolved "https://registry.yarnpkg.com/eosjs-ecc/-/eosjs-ecc-4.0.4.tgz#431450f30a6f73088ff5d7ba1ebdfe967a5ca4ab" 1125 | integrity sha512-9wAYefts4TidHOu+eN9nAisZdWpUzlUimZrB63oP7+/s4xRNJEn2Vvep2ICRODpxpidbshM1L7WaSYW9oiV5gA== 1126 | dependencies: 1127 | bigi "^1.4.2" 1128 | browserify-aes "^1.0.6" 1129 | bs58 "^4.0.1" 1130 | bytebuffer "^5.0.1" 1131 | create-hash "^1.1.3" 1132 | create-hmac "^1.1.6" 1133 | ecurve "^1.0.5" 1134 | randombytes "^2.0.5" 1135 | 1136 | eosjs@20.0.0: 1137 | version "20.0.0" 1138 | resolved "https://registry.yarnpkg.com/eosjs/-/eosjs-20.0.0.tgz#43940abfe15cd191ce4027d60294036e914613e9" 1139 | integrity sha512-Ak9CPtZgCFayUmq43X3Nsn4v67lkLfSzEdTUfMk1XAWA5s4HRn7lBTeTeDCzJ/rggi+dZ170VeJwc5T3gPk4HQ== 1140 | dependencies: 1141 | babel-runtime "6.26.0" 1142 | eosjs-ecc "4.0.4" 1143 | text-encoding "0.7.0" 1144 | 1145 | escape-string-regexp@^1.0.5: 1146 | version "1.0.5" 1147 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 1148 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 1149 | 1150 | esutils@^2.0.2: 1151 | version "2.0.3" 1152 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 1153 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 1154 | 1155 | evp_bytestokey@^1.0.3: 1156 | version "1.0.3" 1157 | resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" 1158 | integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== 1159 | dependencies: 1160 | md5.js "^1.3.4" 1161 | safe-buffer "^5.1.1" 1162 | 1163 | expand-brackets@^2.1.4: 1164 | version "2.1.4" 1165 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" 1166 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= 1167 | dependencies: 1168 | debug "^2.3.3" 1169 | define-property "^0.2.5" 1170 | extend-shallow "^2.0.1" 1171 | posix-character-classes "^0.1.0" 1172 | regex-not "^1.0.0" 1173 | snapdragon "^0.8.1" 1174 | to-regex "^3.0.1" 1175 | 1176 | extend-shallow@^2.0.1: 1177 | version "2.0.1" 1178 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" 1179 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= 1180 | dependencies: 1181 | is-extendable "^0.1.0" 1182 | 1183 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 1184 | version "3.0.2" 1185 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" 1186 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= 1187 | dependencies: 1188 | assign-symbols "^1.0.0" 1189 | is-extendable "^1.0.1" 1190 | 1191 | extglob@^2.0.4: 1192 | version "2.0.4" 1193 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" 1194 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== 1195 | dependencies: 1196 | array-unique "^0.3.2" 1197 | define-property "^1.0.0" 1198 | expand-brackets "^2.1.4" 1199 | extend-shallow "^2.0.1" 1200 | fragment-cache "^0.2.1" 1201 | regex-not "^1.0.0" 1202 | snapdragon "^0.8.1" 1203 | to-regex "^3.0.1" 1204 | 1205 | fill-range@^4.0.0: 1206 | version "4.0.0" 1207 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" 1208 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= 1209 | dependencies: 1210 | extend-shallow "^2.0.1" 1211 | is-number "^3.0.0" 1212 | repeat-string "^1.6.1" 1213 | to-regex-range "^2.1.0" 1214 | 1215 | for-in@^1.0.2: 1216 | version "1.0.2" 1217 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 1218 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1219 | 1220 | fragment-cache@^0.2.1: 1221 | version "0.2.1" 1222 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" 1223 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= 1224 | dependencies: 1225 | map-cache "^0.2.2" 1226 | 1227 | fs-minipass@^1.2.5: 1228 | version "1.2.6" 1229 | resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" 1230 | integrity sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ== 1231 | dependencies: 1232 | minipass "^2.2.1" 1233 | 1234 | fs-readdir-recursive@^1.1.0: 1235 | version "1.1.0" 1236 | resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" 1237 | integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== 1238 | 1239 | fs.realpath@^1.0.0: 1240 | version "1.0.0" 1241 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1242 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1243 | 1244 | fsevents@^1.2.7: 1245 | version "1.2.9" 1246 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz#3f5ed66583ccd6f400b5a00db6f7e861363e388f" 1247 | integrity sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw== 1248 | dependencies: 1249 | nan "^2.12.1" 1250 | node-pre-gyp "^0.12.0" 1251 | 1252 | function-bind@^1.1.1: 1253 | version "1.1.1" 1254 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 1255 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 1256 | 1257 | gauge@~2.7.3: 1258 | version "2.7.4" 1259 | resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" 1260 | integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= 1261 | dependencies: 1262 | aproba "^1.0.3" 1263 | console-control-strings "^1.0.0" 1264 | has-unicode "^2.0.0" 1265 | object-assign "^4.1.0" 1266 | signal-exit "^3.0.0" 1267 | string-width "^1.0.1" 1268 | strip-ansi "^3.0.1" 1269 | wide-align "^1.1.0" 1270 | 1271 | get-value@^2.0.3, get-value@^2.0.6: 1272 | version "2.0.6" 1273 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" 1274 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= 1275 | 1276 | glob-parent@^3.1.0: 1277 | version "3.1.0" 1278 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" 1279 | integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= 1280 | dependencies: 1281 | is-glob "^3.1.0" 1282 | path-dirname "^1.0.0" 1283 | 1284 | glob@^7.0.0, glob@^7.1.3: 1285 | version "7.1.4" 1286 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" 1287 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== 1288 | dependencies: 1289 | fs.realpath "^1.0.0" 1290 | inflight "^1.0.4" 1291 | inherits "2" 1292 | minimatch "^3.0.4" 1293 | once "^1.3.0" 1294 | path-is-absolute "^1.0.0" 1295 | 1296 | globals@^11.1.0: 1297 | version "11.12.0" 1298 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1299 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1300 | 1301 | graceful-fs@^4.1.11: 1302 | version "4.2.2" 1303 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" 1304 | integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== 1305 | 1306 | has-flag@^3.0.0: 1307 | version "3.0.0" 1308 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1309 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1310 | 1311 | has-symbols@^1.0.0: 1312 | version "1.0.0" 1313 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 1314 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 1315 | 1316 | has-unicode@^2.0.0: 1317 | version "2.0.1" 1318 | resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" 1319 | integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= 1320 | 1321 | has-value@^0.3.1: 1322 | version "0.3.1" 1323 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" 1324 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= 1325 | dependencies: 1326 | get-value "^2.0.3" 1327 | has-values "^0.1.4" 1328 | isobject "^2.0.0" 1329 | 1330 | has-value@^1.0.0: 1331 | version "1.0.0" 1332 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" 1333 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= 1334 | dependencies: 1335 | get-value "^2.0.6" 1336 | has-values "^1.0.0" 1337 | isobject "^3.0.0" 1338 | 1339 | has-values@^0.1.4: 1340 | version "0.1.4" 1341 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" 1342 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= 1343 | 1344 | has-values@^1.0.0: 1345 | version "1.0.0" 1346 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" 1347 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= 1348 | dependencies: 1349 | is-number "^3.0.0" 1350 | kind-of "^4.0.0" 1351 | 1352 | hash-base@^3.0.0: 1353 | version "3.0.4" 1354 | resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" 1355 | integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= 1356 | dependencies: 1357 | inherits "^2.0.1" 1358 | safe-buffer "^5.0.1" 1359 | 1360 | iconv-lite@^0.4.4: 1361 | version "0.4.24" 1362 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 1363 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1364 | dependencies: 1365 | safer-buffer ">= 2.1.2 < 3" 1366 | 1367 | ignore-walk@^3.0.1: 1368 | version "3.0.2" 1369 | resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.2.tgz#99d83a246c196ea5c93ef9315ad7b0819c35069b" 1370 | integrity sha512-EXyErtpHbn75ZTsOADsfx6J/FPo6/5cjev46PXrcTpd8z3BoRkXgYu9/JVqrI7tusjmwCZutGeRJeU0Wo1e4Cw== 1371 | dependencies: 1372 | minimatch "^3.0.4" 1373 | 1374 | inflight@^1.0.4: 1375 | version "1.0.6" 1376 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1377 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1378 | dependencies: 1379 | once "^1.3.0" 1380 | wrappy "1" 1381 | 1382 | inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: 1383 | version "2.0.4" 1384 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1385 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1386 | 1387 | ini@~1.3.0: 1388 | version "1.3.5" 1389 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" 1390 | integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== 1391 | 1392 | invariant@^2.2.2: 1393 | version "2.2.4" 1394 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" 1395 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 1396 | dependencies: 1397 | loose-envify "^1.0.0" 1398 | 1399 | is-accessor-descriptor@^0.1.6: 1400 | version "0.1.6" 1401 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" 1402 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= 1403 | dependencies: 1404 | kind-of "^3.0.2" 1405 | 1406 | is-accessor-descriptor@^1.0.0: 1407 | version "1.0.0" 1408 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" 1409 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== 1410 | dependencies: 1411 | kind-of "^6.0.0" 1412 | 1413 | is-binary-path@^1.0.0: 1414 | version "1.0.1" 1415 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" 1416 | integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= 1417 | dependencies: 1418 | binary-extensions "^1.0.0" 1419 | 1420 | is-buffer@^1.1.5: 1421 | version "1.1.6" 1422 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" 1423 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 1424 | 1425 | is-data-descriptor@^0.1.4: 1426 | version "0.1.4" 1427 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" 1428 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= 1429 | dependencies: 1430 | kind-of "^3.0.2" 1431 | 1432 | is-data-descriptor@^1.0.0: 1433 | version "1.0.0" 1434 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" 1435 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== 1436 | dependencies: 1437 | kind-of "^6.0.0" 1438 | 1439 | is-descriptor@^0.1.0: 1440 | version "0.1.6" 1441 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" 1442 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== 1443 | dependencies: 1444 | is-accessor-descriptor "^0.1.6" 1445 | is-data-descriptor "^0.1.4" 1446 | kind-of "^5.0.0" 1447 | 1448 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1449 | version "1.0.2" 1450 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" 1451 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== 1452 | dependencies: 1453 | is-accessor-descriptor "^1.0.0" 1454 | is-data-descriptor "^1.0.0" 1455 | kind-of "^6.0.2" 1456 | 1457 | is-extendable@^0.1.0, is-extendable@^0.1.1: 1458 | version "0.1.1" 1459 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 1460 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 1461 | 1462 | is-extendable@^1.0.1: 1463 | version "1.0.1" 1464 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" 1465 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== 1466 | dependencies: 1467 | is-plain-object "^2.0.4" 1468 | 1469 | is-extglob@^2.1.0, is-extglob@^2.1.1: 1470 | version "2.1.1" 1471 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 1472 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 1473 | 1474 | is-fullwidth-code-point@^1.0.0: 1475 | version "1.0.0" 1476 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 1477 | integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= 1478 | dependencies: 1479 | number-is-nan "^1.0.0" 1480 | 1481 | is-fullwidth-code-point@^2.0.0: 1482 | version "2.0.0" 1483 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1484 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1485 | 1486 | is-glob@^3.1.0: 1487 | version "3.1.0" 1488 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" 1489 | integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= 1490 | dependencies: 1491 | is-extglob "^2.1.0" 1492 | 1493 | is-glob@^4.0.0: 1494 | version "4.0.1" 1495 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 1496 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 1497 | dependencies: 1498 | is-extglob "^2.1.1" 1499 | 1500 | is-number@^3.0.0: 1501 | version "3.0.0" 1502 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 1503 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 1504 | dependencies: 1505 | kind-of "^3.0.2" 1506 | 1507 | is-plain-obj@^1.1.0: 1508 | version "1.1.0" 1509 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" 1510 | integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= 1511 | 1512 | is-plain-object@^2.0.3, is-plain-object@^2.0.4: 1513 | version "2.0.4" 1514 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" 1515 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 1516 | dependencies: 1517 | isobject "^3.0.1" 1518 | 1519 | is-windows@^1.0.2: 1520 | version "1.0.2" 1521 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 1522 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1523 | 1524 | isarray@1.0.0, isarray@~1.0.0: 1525 | version "1.0.0" 1526 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1527 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 1528 | 1529 | isobject@^2.0.0: 1530 | version "2.1.0" 1531 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1532 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 1533 | dependencies: 1534 | isarray "1.0.0" 1535 | 1536 | isobject@^3.0.0, isobject@^3.0.1: 1537 | version "3.0.1" 1538 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" 1539 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 1540 | 1541 | js-levenshtein@^1.1.3: 1542 | version "1.1.6" 1543 | resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" 1544 | integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g== 1545 | 1546 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 1547 | version "4.0.0" 1548 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 1549 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 1550 | 1551 | jsesc@^2.5.1: 1552 | version "2.5.2" 1553 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 1554 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 1555 | 1556 | jsesc@~0.5.0: 1557 | version "0.5.0" 1558 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" 1559 | integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= 1560 | 1561 | json5@^2.1.0: 1562 | version "2.1.0" 1563 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" 1564 | integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== 1565 | dependencies: 1566 | minimist "^1.2.0" 1567 | 1568 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 1569 | version "3.2.2" 1570 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 1571 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 1572 | dependencies: 1573 | is-buffer "^1.1.5" 1574 | 1575 | kind-of@^4.0.0: 1576 | version "4.0.0" 1577 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 1578 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 1579 | dependencies: 1580 | is-buffer "^1.1.5" 1581 | 1582 | kind-of@^5.0.0: 1583 | version "5.1.0" 1584 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" 1585 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== 1586 | 1587 | kind-of@^6.0.0, kind-of@^6.0.2: 1588 | version "6.0.2" 1589 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" 1590 | integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== 1591 | 1592 | lodash@^4.17.13: 1593 | version "4.17.15" 1594 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" 1595 | integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== 1596 | 1597 | long@~3: 1598 | version "3.2.0" 1599 | resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" 1600 | integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= 1601 | 1602 | loose-envify@^1.0.0: 1603 | version "1.4.0" 1604 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 1605 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 1606 | dependencies: 1607 | js-tokens "^3.0.0 || ^4.0.0" 1608 | 1609 | map-cache@^0.2.2: 1610 | version "0.2.2" 1611 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 1612 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= 1613 | 1614 | map-visit@^1.0.0: 1615 | version "1.0.0" 1616 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" 1617 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= 1618 | dependencies: 1619 | object-visit "^1.0.0" 1620 | 1621 | md5.js@^1.3.4: 1622 | version "1.3.5" 1623 | resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" 1624 | integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== 1625 | dependencies: 1626 | hash-base "^3.0.0" 1627 | inherits "^2.0.1" 1628 | safe-buffer "^5.1.2" 1629 | 1630 | micromatch@^3.1.10, micromatch@^3.1.4: 1631 | version "3.1.10" 1632 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" 1633 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 1634 | dependencies: 1635 | arr-diff "^4.0.0" 1636 | array-unique "^0.3.2" 1637 | braces "^2.3.1" 1638 | define-property "^2.0.2" 1639 | extend-shallow "^3.0.2" 1640 | extglob "^2.0.4" 1641 | fragment-cache "^0.2.1" 1642 | kind-of "^6.0.2" 1643 | nanomatch "^1.2.9" 1644 | object.pick "^1.3.0" 1645 | regex-not "^1.0.0" 1646 | snapdragon "^0.8.1" 1647 | to-regex "^3.0.2" 1648 | 1649 | minimatch@^3.0.4: 1650 | version "3.0.4" 1651 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 1652 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 1653 | dependencies: 1654 | brace-expansion "^1.1.7" 1655 | 1656 | minimist@0.0.8: 1657 | version "0.0.8" 1658 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 1659 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 1660 | 1661 | minimist@^1.2.0: 1662 | version "1.2.0" 1663 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 1664 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 1665 | 1666 | minipass@^2.2.1, minipass@^2.3.5: 1667 | version "2.5.1" 1668 | resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.5.1.tgz#cf435a9bf9408796ca3a3525a8b851464279c9b8" 1669 | integrity sha512-dmpSnLJtNQioZFI5HfQ55Ad0DzzsMAb+HfokwRTNXwEQjepbTkl5mtIlSVxGIkOkxlpX7wIn5ET/oAd9fZ/Y/Q== 1670 | dependencies: 1671 | safe-buffer "^5.1.2" 1672 | yallist "^3.0.0" 1673 | 1674 | minizlib@^1.2.1: 1675 | version "1.2.2" 1676 | resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.2.tgz#6f0ccc82fa53e1bf2ff145f220d2da9fa6e3a166" 1677 | integrity sha512-hR3At21uSrsjjDTWrbu0IMLTpnkpv8IIMFDFaoz43Tmu4LkmAXfH44vNNzpTnf+OAQQCHrb91y/wc2J4x5XgSQ== 1678 | dependencies: 1679 | minipass "^2.2.1" 1680 | 1681 | mixin-deep@^1.2.0: 1682 | version "1.3.2" 1683 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" 1684 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== 1685 | dependencies: 1686 | for-in "^1.0.2" 1687 | is-extendable "^1.0.1" 1688 | 1689 | mkdirp@^0.5.0, mkdirp@^0.5.1: 1690 | version "0.5.1" 1691 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 1692 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 1693 | dependencies: 1694 | minimist "0.0.8" 1695 | 1696 | ms@2.0.0: 1697 | version "2.0.0" 1698 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1699 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1700 | 1701 | ms@^2.1.1: 1702 | version "2.1.2" 1703 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 1704 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1705 | 1706 | nan@^2.12.1: 1707 | version "2.14.0" 1708 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" 1709 | integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 1710 | 1711 | nanomatch@^1.2.9: 1712 | version "1.2.13" 1713 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" 1714 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== 1715 | dependencies: 1716 | arr-diff "^4.0.0" 1717 | array-unique "^0.3.2" 1718 | define-property "^2.0.2" 1719 | extend-shallow "^3.0.2" 1720 | fragment-cache "^0.2.1" 1721 | is-windows "^1.0.2" 1722 | kind-of "^6.0.2" 1723 | object.pick "^1.3.0" 1724 | regex-not "^1.0.0" 1725 | snapdragon "^0.8.1" 1726 | to-regex "^3.0.1" 1727 | 1728 | needle@^2.2.1: 1729 | version "2.4.0" 1730 | resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" 1731 | integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== 1732 | dependencies: 1733 | debug "^3.2.6" 1734 | iconv-lite "^0.4.4" 1735 | sax "^1.2.4" 1736 | 1737 | node-pre-gyp@^0.12.0: 1738 | version "0.12.0" 1739 | resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz#39ba4bb1439da030295f899e3b520b7785766149" 1740 | integrity sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A== 1741 | dependencies: 1742 | detect-libc "^1.0.2" 1743 | mkdirp "^0.5.1" 1744 | needle "^2.2.1" 1745 | nopt "^4.0.1" 1746 | npm-packlist "^1.1.6" 1747 | npmlog "^4.0.2" 1748 | rc "^1.2.7" 1749 | rimraf "^2.6.1" 1750 | semver "^5.3.0" 1751 | tar "^4" 1752 | 1753 | node-releases@^1.1.29: 1754 | version "1.1.30" 1755 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.30.tgz#35eebf129c63baeb6d8ddeda3c35b05abfd37f7f" 1756 | integrity sha512-BHcr1g6NeUH12IL+X3Flvs4IOnl1TL0JczUhEZjDE+FXXPQcVCNr8NEPb01zqGxzhTpdyJL5GXemaCW7aw6Khw== 1757 | dependencies: 1758 | semver "^5.3.0" 1759 | 1760 | nopt@^4.0.1: 1761 | version "4.0.1" 1762 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" 1763 | integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= 1764 | dependencies: 1765 | abbrev "1" 1766 | osenv "^0.1.4" 1767 | 1768 | normalize-path@^2.1.1: 1769 | version "2.1.1" 1770 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" 1771 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 1772 | dependencies: 1773 | remove-trailing-separator "^1.0.1" 1774 | 1775 | normalize-path@^3.0.0: 1776 | version "3.0.0" 1777 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 1778 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1779 | 1780 | npm-bundled@^1.0.1: 1781 | version "1.0.6" 1782 | resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd" 1783 | integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== 1784 | 1785 | npm-packlist@^1.1.6: 1786 | version "1.4.4" 1787 | resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" 1788 | integrity sha512-zTLo8UcVYtDU3gdeaFu2Xu0n0EvelfHDGuqtNIn5RO7yQj4H1TqNdBc/yZjxnWA0PVB8D3Woyp0i5B43JwQ6Vw== 1789 | dependencies: 1790 | ignore-walk "^3.0.1" 1791 | npm-bundled "^1.0.1" 1792 | 1793 | npmlog@^4.0.2: 1794 | version "4.1.2" 1795 | resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" 1796 | integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== 1797 | dependencies: 1798 | are-we-there-yet "~1.1.2" 1799 | console-control-strings "~1.1.0" 1800 | gauge "~2.7.3" 1801 | set-blocking "~2.0.0" 1802 | 1803 | number-is-nan@^1.0.0: 1804 | version "1.0.1" 1805 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 1806 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 1807 | 1808 | object-assign@^4.1.0: 1809 | version "4.1.1" 1810 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1811 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1812 | 1813 | object-copy@^0.1.0: 1814 | version "0.1.0" 1815 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" 1816 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= 1817 | dependencies: 1818 | copy-descriptor "^0.1.0" 1819 | define-property "^0.2.5" 1820 | kind-of "^3.0.3" 1821 | 1822 | object-keys@^1.0.11, object-keys@^1.0.12: 1823 | version "1.1.1" 1824 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 1825 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 1826 | 1827 | object-visit@^1.0.0: 1828 | version "1.0.1" 1829 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" 1830 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= 1831 | dependencies: 1832 | isobject "^3.0.0" 1833 | 1834 | object.assign@^4.1.0: 1835 | version "4.1.0" 1836 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 1837 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 1838 | dependencies: 1839 | define-properties "^1.1.2" 1840 | function-bind "^1.1.1" 1841 | has-symbols "^1.0.0" 1842 | object-keys "^1.0.11" 1843 | 1844 | object.pick@^1.3.0: 1845 | version "1.3.0" 1846 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" 1847 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= 1848 | dependencies: 1849 | isobject "^3.0.1" 1850 | 1851 | once@^1.3.0: 1852 | version "1.4.0" 1853 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1854 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1855 | dependencies: 1856 | wrappy "1" 1857 | 1858 | os-homedir@^1.0.0: 1859 | version "1.0.2" 1860 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 1861 | integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= 1862 | 1863 | os-tmpdir@^1.0.0: 1864 | version "1.0.2" 1865 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 1866 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 1867 | 1868 | osenv@^0.1.4: 1869 | version "0.1.5" 1870 | resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" 1871 | integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== 1872 | dependencies: 1873 | os-homedir "^1.0.0" 1874 | os-tmpdir "^1.0.0" 1875 | 1876 | output-file-sync@^2.0.0: 1877 | version "2.0.1" 1878 | resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-2.0.1.tgz#f53118282f5f553c2799541792b723a4c71430c0" 1879 | integrity sha512-mDho4qm7WgIXIGf4eYU1RHN2UU5tPfVYVSRwDJw0uTmj35DQUt/eNp19N7v6T3SrR0ESTEf2up2CGO73qI35zQ== 1880 | dependencies: 1881 | graceful-fs "^4.1.11" 1882 | is-plain-obj "^1.1.0" 1883 | mkdirp "^0.5.1" 1884 | 1885 | pascalcase@^0.1.1: 1886 | version "0.1.1" 1887 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" 1888 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= 1889 | 1890 | path-dirname@^1.0.0: 1891 | version "1.0.2" 1892 | resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" 1893 | integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= 1894 | 1895 | path-is-absolute@^1.0.0: 1896 | version "1.0.1" 1897 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1898 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1899 | 1900 | path-parse@^1.0.6: 1901 | version "1.0.6" 1902 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 1903 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 1904 | 1905 | posix-character-classes@^0.1.0: 1906 | version "0.1.1" 1907 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" 1908 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= 1909 | 1910 | private@^0.1.6: 1911 | version "0.1.8" 1912 | resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" 1913 | integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== 1914 | 1915 | process-nextick-args@~2.0.0: 1916 | version "2.0.1" 1917 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" 1918 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== 1919 | 1920 | randombytes@^2.0.5: 1921 | version "2.1.0" 1922 | resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" 1923 | integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== 1924 | dependencies: 1925 | safe-buffer "^5.1.0" 1926 | 1927 | rc@^1.2.7: 1928 | version "1.2.8" 1929 | resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" 1930 | integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== 1931 | dependencies: 1932 | deep-extend "^0.6.0" 1933 | ini "~1.3.0" 1934 | minimist "^1.2.0" 1935 | strip-json-comments "~2.0.1" 1936 | 1937 | readable-stream@^2.0.2, readable-stream@^2.0.6: 1938 | version "2.3.6" 1939 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" 1940 | integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== 1941 | dependencies: 1942 | core-util-is "~1.0.0" 1943 | inherits "~2.0.3" 1944 | isarray "~1.0.0" 1945 | process-nextick-args "~2.0.0" 1946 | safe-buffer "~5.1.1" 1947 | string_decoder "~1.1.1" 1948 | util-deprecate "~1.0.1" 1949 | 1950 | readdirp@^2.2.1: 1951 | version "2.2.1" 1952 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" 1953 | integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== 1954 | dependencies: 1955 | graceful-fs "^4.1.11" 1956 | micromatch "^3.1.10" 1957 | readable-stream "^2.0.2" 1958 | 1959 | regenerate-unicode-properties@^8.1.0: 1960 | version "8.1.0" 1961 | resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" 1962 | integrity sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA== 1963 | dependencies: 1964 | regenerate "^1.4.0" 1965 | 1966 | regenerate@^1.4.0: 1967 | version "1.4.0" 1968 | resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" 1969 | integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== 1970 | 1971 | regenerator-runtime@^0.11.0: 1972 | version "0.11.1" 1973 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" 1974 | integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== 1975 | 1976 | regenerator-transform@^0.14.0: 1977 | version "0.14.1" 1978 | resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" 1979 | integrity sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ== 1980 | dependencies: 1981 | private "^0.1.6" 1982 | 1983 | regex-not@^1.0.0, regex-not@^1.0.2: 1984 | version "1.0.2" 1985 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" 1986 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== 1987 | dependencies: 1988 | extend-shallow "^3.0.2" 1989 | safe-regex "^1.1.0" 1990 | 1991 | regexp-tree@^0.1.13: 1992 | version "0.1.13" 1993 | resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.13.tgz#5b19ab9377edc68bc3679256840bb29afc158d7f" 1994 | integrity sha512-hwdV/GQY5F8ReLZWO+W1SRoN5YfpOKY6852+tBFcma72DKBIcHjPRIlIvQN35bCOljuAfP2G2iB0FC/w236mUw== 1995 | 1996 | regexpu-core@^4.5.4: 1997 | version "4.5.5" 1998 | resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.5.tgz#aaffe61c2af58269b3e516b61a73790376326411" 1999 | integrity sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ== 2000 | dependencies: 2001 | regenerate "^1.4.0" 2002 | regenerate-unicode-properties "^8.1.0" 2003 | regjsgen "^0.5.0" 2004 | regjsparser "^0.6.0" 2005 | unicode-match-property-ecmascript "^1.0.4" 2006 | unicode-match-property-value-ecmascript "^1.1.0" 2007 | 2008 | regjsgen@^0.5.0: 2009 | version "0.5.0" 2010 | resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd" 2011 | integrity sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA== 2012 | 2013 | regjsparser@^0.6.0: 2014 | version "0.6.0" 2015 | resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c" 2016 | integrity sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ== 2017 | dependencies: 2018 | jsesc "~0.5.0" 2019 | 2020 | remove-trailing-separator@^1.0.1: 2021 | version "1.1.0" 2022 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 2023 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= 2024 | 2025 | repeat-element@^1.1.2: 2026 | version "1.1.3" 2027 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" 2028 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 2029 | 2030 | repeat-string@^1.6.1: 2031 | version "1.6.1" 2032 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 2033 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= 2034 | 2035 | resolve-url@^0.2.1: 2036 | version "0.2.1" 2037 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 2038 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= 2039 | 2040 | resolve@^1.3.2: 2041 | version "1.12.0" 2042 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" 2043 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== 2044 | dependencies: 2045 | path-parse "^1.0.6" 2046 | 2047 | ret@~0.1.10: 2048 | version "0.1.15" 2049 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" 2050 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== 2051 | 2052 | rimraf@^2.6.1: 2053 | version "2.7.1" 2054 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" 2055 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 2056 | dependencies: 2057 | glob "^7.1.3" 2058 | 2059 | ripemd160@^2.0.0, ripemd160@^2.0.1: 2060 | version "2.0.2" 2061 | resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" 2062 | integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== 2063 | dependencies: 2064 | hash-base "^3.0.0" 2065 | inherits "^2.0.1" 2066 | 2067 | safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2: 2068 | version "5.2.0" 2069 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" 2070 | integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== 2071 | 2072 | safe-buffer@~5.1.0, safe-buffer@~5.1.1: 2073 | version "5.1.2" 2074 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 2075 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 2076 | 2077 | safe-regex@^1.1.0: 2078 | version "1.1.0" 2079 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" 2080 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= 2081 | dependencies: 2082 | ret "~0.1.10" 2083 | 2084 | "safer-buffer@>= 2.1.2 < 3": 2085 | version "2.1.2" 2086 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 2087 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 2088 | 2089 | sax@^1.2.4: 2090 | version "1.2.4" 2091 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" 2092 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 2093 | 2094 | semver@^5.3.0, semver@^5.4.1, semver@^5.5.0: 2095 | version "5.7.1" 2096 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 2097 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 2098 | 2099 | semver@^6.3.0: 2100 | version "6.3.0" 2101 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 2102 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 2103 | 2104 | set-blocking@~2.0.0: 2105 | version "2.0.0" 2106 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 2107 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 2108 | 2109 | set-value@^2.0.0, set-value@^2.0.1: 2110 | version "2.0.1" 2111 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" 2112 | integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== 2113 | dependencies: 2114 | extend-shallow "^2.0.1" 2115 | is-extendable "^0.1.1" 2116 | is-plain-object "^2.0.3" 2117 | split-string "^3.0.1" 2118 | 2119 | sha.js@^2.4.0, sha.js@^2.4.8: 2120 | version "2.4.11" 2121 | resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" 2122 | integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== 2123 | dependencies: 2124 | inherits "^2.0.1" 2125 | safe-buffer "^5.0.1" 2126 | 2127 | signal-exit@^3.0.0: 2128 | version "3.0.2" 2129 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 2130 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 2131 | 2132 | slash@^2.0.0: 2133 | version "2.0.0" 2134 | resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" 2135 | integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== 2136 | 2137 | snapdragon-node@^2.0.1: 2138 | version "2.1.1" 2139 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" 2140 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== 2141 | dependencies: 2142 | define-property "^1.0.0" 2143 | isobject "^3.0.0" 2144 | snapdragon-util "^3.0.1" 2145 | 2146 | snapdragon-util@^3.0.1: 2147 | version "3.0.1" 2148 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" 2149 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== 2150 | dependencies: 2151 | kind-of "^3.2.0" 2152 | 2153 | snapdragon@^0.8.1: 2154 | version "0.8.2" 2155 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" 2156 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== 2157 | dependencies: 2158 | base "^0.11.1" 2159 | debug "^2.2.0" 2160 | define-property "^0.2.5" 2161 | extend-shallow "^2.0.1" 2162 | map-cache "^0.2.2" 2163 | source-map "^0.5.6" 2164 | source-map-resolve "^0.5.0" 2165 | use "^3.1.0" 2166 | 2167 | source-map-resolve@^0.5.0: 2168 | version "0.5.2" 2169 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" 2170 | integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== 2171 | dependencies: 2172 | atob "^2.1.1" 2173 | decode-uri-component "^0.2.0" 2174 | resolve-url "^0.2.1" 2175 | source-map-url "^0.4.0" 2176 | urix "^0.1.0" 2177 | 2178 | source-map-url@^0.4.0: 2179 | version "0.4.0" 2180 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" 2181 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= 2182 | 2183 | source-map@^0.5.0, source-map@^0.5.6: 2184 | version "0.5.7" 2185 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 2186 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 2187 | 2188 | split-string@^3.0.1, split-string@^3.0.2: 2189 | version "3.1.0" 2190 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" 2191 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== 2192 | dependencies: 2193 | extend-shallow "^3.0.0" 2194 | 2195 | static-extend@^0.1.1: 2196 | version "0.1.2" 2197 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" 2198 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= 2199 | dependencies: 2200 | define-property "^0.2.5" 2201 | object-copy "^0.1.0" 2202 | 2203 | string-width@^1.0.1: 2204 | version "1.0.2" 2205 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 2206 | integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= 2207 | dependencies: 2208 | code-point-at "^1.0.0" 2209 | is-fullwidth-code-point "^1.0.0" 2210 | strip-ansi "^3.0.0" 2211 | 2212 | "string-width@^1.0.2 || 2": 2213 | version "2.1.1" 2214 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 2215 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 2216 | dependencies: 2217 | is-fullwidth-code-point "^2.0.0" 2218 | strip-ansi "^4.0.0" 2219 | 2220 | string_decoder@~1.1.1: 2221 | version "1.1.1" 2222 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 2223 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 2224 | dependencies: 2225 | safe-buffer "~5.1.0" 2226 | 2227 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 2228 | version "3.0.1" 2229 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 2230 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 2231 | dependencies: 2232 | ansi-regex "^2.0.0" 2233 | 2234 | strip-ansi@^4.0.0: 2235 | version "4.0.0" 2236 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 2237 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 2238 | dependencies: 2239 | ansi-regex "^3.0.0" 2240 | 2241 | strip-json-comments@~2.0.1: 2242 | version "2.0.1" 2243 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 2244 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 2245 | 2246 | supports-color@^5.3.0: 2247 | version "5.5.0" 2248 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 2249 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2250 | dependencies: 2251 | has-flag "^3.0.0" 2252 | 2253 | tar@^4: 2254 | version "4.4.10" 2255 | resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.10.tgz#946b2810b9a5e0b26140cf78bea6b0b0d689eba1" 2256 | integrity sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA== 2257 | dependencies: 2258 | chownr "^1.1.1" 2259 | fs-minipass "^1.2.5" 2260 | minipass "^2.3.5" 2261 | minizlib "^1.2.1" 2262 | mkdirp "^0.5.0" 2263 | safe-buffer "^5.1.2" 2264 | yallist "^3.0.3" 2265 | 2266 | text-encoding@0.7.0: 2267 | version "0.7.0" 2268 | resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.7.0.tgz#f895e836e45990624086601798ea98e8f36ee643" 2269 | integrity sha512-oJQ3f1hrOnbRLOcwKz0Liq2IcrvDeZRHXhd9RgLrsT+DjWY/nty1Hi7v3dtkaEYbPYe0mUoOfzRrMwfXXwgPUA== 2270 | 2271 | to-fast-properties@^2.0.0: 2272 | version "2.0.0" 2273 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 2274 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 2275 | 2276 | to-object-path@^0.3.0: 2277 | version "0.3.0" 2278 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" 2279 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= 2280 | dependencies: 2281 | kind-of "^3.0.2" 2282 | 2283 | to-regex-range@^2.1.0: 2284 | version "2.1.1" 2285 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" 2286 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= 2287 | dependencies: 2288 | is-number "^3.0.0" 2289 | repeat-string "^1.6.1" 2290 | 2291 | to-regex@^3.0.1, to-regex@^3.0.2: 2292 | version "3.0.2" 2293 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" 2294 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== 2295 | dependencies: 2296 | define-property "^2.0.2" 2297 | extend-shallow "^3.0.2" 2298 | regex-not "^1.0.2" 2299 | safe-regex "^1.1.0" 2300 | 2301 | trim-right@^1.0.1: 2302 | version "1.0.1" 2303 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" 2304 | integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= 2305 | 2306 | unicode-canonical-property-names-ecmascript@^1.0.4: 2307 | version "1.0.4" 2308 | resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" 2309 | integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== 2310 | 2311 | unicode-match-property-ecmascript@^1.0.4: 2312 | version "1.0.4" 2313 | resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" 2314 | integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== 2315 | dependencies: 2316 | unicode-canonical-property-names-ecmascript "^1.0.4" 2317 | unicode-property-aliases-ecmascript "^1.0.4" 2318 | 2319 | unicode-match-property-value-ecmascript@^1.1.0: 2320 | version "1.1.0" 2321 | resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz#5b4b426e08d13a80365e0d657ac7a6c1ec46a277" 2322 | integrity sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g== 2323 | 2324 | unicode-property-aliases-ecmascript@^1.0.4: 2325 | version "1.0.5" 2326 | resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz#a9cc6cc7ce63a0a3023fc99e341b94431d405a57" 2327 | integrity sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw== 2328 | 2329 | union-value@^1.0.0: 2330 | version "1.0.1" 2331 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" 2332 | integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== 2333 | dependencies: 2334 | arr-union "^3.1.0" 2335 | get-value "^2.0.6" 2336 | is-extendable "^0.1.1" 2337 | set-value "^2.0.1" 2338 | 2339 | universal-authenticator-library@0.1.4: 2340 | version "0.1.4" 2341 | resolved "https://registry.yarnpkg.com/universal-authenticator-library/-/universal-authenticator-library-0.1.4.tgz#e3f31d743780077184475089a8a9b57300316161" 2342 | integrity sha512-1nU8W7yAc+ZQ+MlJA1gGKnGylSNyyaA2wC4Zy1RqtJo+asDYcNTc4gAySYp19TYhfdF0WwQXeve7SVuodbMHJA== 2343 | 2344 | unset-value@^1.0.0: 2345 | version "1.0.0" 2346 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" 2347 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= 2348 | dependencies: 2349 | has-value "^0.3.1" 2350 | isobject "^3.0.0" 2351 | 2352 | upath@^1.1.1: 2353 | version "1.2.0" 2354 | resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" 2355 | integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== 2356 | 2357 | urix@^0.1.0: 2358 | version "0.1.0" 2359 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 2360 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= 2361 | 2362 | use@^3.1.0: 2363 | version "3.1.1" 2364 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" 2365 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== 2366 | 2367 | util-deprecate@~1.0.1: 2368 | version "1.0.2" 2369 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2370 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 2371 | 2372 | wide-align@^1.1.0: 2373 | version "1.1.3" 2374 | resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" 2375 | integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== 2376 | dependencies: 2377 | string-width "^1.0.2 || 2" 2378 | 2379 | wrappy@1: 2380 | version "1.0.2" 2381 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2382 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 2383 | 2384 | yallist@^3.0.0, yallist@^3.0.3: 2385 | version "3.0.3" 2386 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" 2387 | integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== 2388 | --------------------------------------------------------------------------------