├── .editorconfig ├── .gitattributes ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── index.js ├── package.json ├── renovate.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = tab 5 | end_of_line = lf 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | insert_final_newline = true 9 | 10 | [{package.json,*.yml}] 11 | indent_style = space 12 | indent_size = 2 -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | npm-debug.log -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 'node' -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Tiaan du Plessis 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 | # react-native-websocket 2 | 3 | [![Greenkeeper badge](https://badges.greenkeeper.io/tiaanduplessis/react-native-websocket.svg)](https://greenkeeper.io/) [![Package version](https://img.shields.io/npm/v/react-native-websocket.svg?style=flat-square)](https://npmjs.org/package/react-native-websocket) [![Standard](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/feross/standard) [![Travis Build](https://img.shields.io/travis/tiaanduplessis/react-native-websocket.svg?style=flat-square)](https://travis-ci.org/tiaanduplessis/react-native-websocket) [![GitHub version](https://badge.fury.io/gh/tiaanduplessis%2Freact-native-websocket.svg?style=flat-square)](https://badge.fury.io/gh/tiaanduplessis%2Freact-native-websocket) [![Dependency CI](https://dependencyci.com/github/tiaanduplessis/react-native-websocket/badge?style=flat-square)](https://dependencyci.com/github/tiaanduplessis/react-native-websocket) [![License](https://img.shields.io/npm/l/react-native-websocket.svg?style=flat-square)](https://github.com/tiaanduplessis/react-native-websocket/blob/master/LICENSE) 4 | 5 | 6 | 7 | > WebSocket API wrapped as a component for React Native 8 | 9 | ## Table of Contents 10 | 11 | - [About](#about) 12 | - [Install](#install) 13 | - [Usage](#usage) 14 | - [Contribute](#contribute) 15 | - [License](#license) 16 | 17 | ## About 18 | 19 | If you're interested in using websockets in React Native generally here is a slightly abbreviated version of the source of this component: 20 | 21 | ```jsx 22 | class WS extends Component { 23 | //... 24 | send = (data) => this.state.ws.send(data) 25 | componentDidMount () { 26 | this.reconnect = !!this.props.reconnect 27 | this._handleWebSocketSetup() 28 | } 29 | componentWillUnmount () { 30 | this.reconnect = false 31 | this.state.ws.close() 32 | } 33 | _handleWebSocketSetup = () => { 34 | const ws = new WebSocket(this.props.url) 35 | ws.onopen = () => { 36 | this.props.onOpen && this.props.onOpen() 37 | } 38 | ws.onmessage = (event) => { this.props.onMessage && this.props.onMessage(event) } 39 | ws.onerror = (error) => { this.props.onError && this.props.onError(error) } 40 | ws.onclose = () => this.reconnect ? this._handleWebSocketSetup() : (this.props.onClose && this.props.onClose()) 41 | this.setState({ws}) 42 | } 43 | } 44 | ``` 45 | 46 | As you can see the component simply wraps the native websocket api. It's also recommended that you implement your own [exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff) reconnect logic if you plan on using this component in production. 47 | 48 | ## Install 49 | 50 | ```sh 51 | $ npm install --save react-native-websocket 52 | # OR 53 | $ yarn add react-native-websocket 54 | ``` 55 | 56 | ## Usage 57 | 58 | ```jsx 59 | 60 | import React, { Component } from 'react' 61 | import { AppRegistry, View } from 'react-native' 62 | import WS from 'react-native-websocket' 63 | 64 | export default class Example extends Component { 65 | 66 | render () { 67 | return ( 68 | 69 | {this.ws = ref}} 71 | url="wss://echo.websocket.org/" 72 | onOpen={() => { 73 | console.log('Open!') 74 | this.ws.send('Hello') 75 | }} 76 | onMessage={console.log} 77 | onError={console.log} 78 | onClose={console.log} 79 | reconnect // Will try to reconnect onClose 80 | /> 81 | 82 | ) 83 | } 84 | } 85 | 86 | ``` 87 | 88 | ## Contribute 89 | 90 | Contributions are welcome. Please open up an issue or create PR if you would like to help out. 91 | 92 | ## License 93 | 94 | Licensed under the MIT License. 95 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | /* global WebSocket */ 2 | /* eslint no-unused-vars: "off" */ 3 | import React, {Component} from 'react' 4 | import PropTypes from 'prop-types' 5 | 6 | class WS extends Component { 7 | state = { 8 | ws: null 9 | } 10 | 11 | static defaultProps = { 12 | reconnect: false 13 | } 14 | 15 | static propTypes = { 16 | url: PropTypes.string.isRequired, 17 | reconnect: PropTypes.bool, 18 | onOpen: PropTypes.func, 19 | onMessage: PropTypes.func, 20 | onError: PropTypes.func, 21 | onClose: PropTypes.func 22 | } 23 | 24 | send = (data) => this.state.ws.send(data) 25 | 26 | componentDidMount () { 27 | this.reconnect = !!this.props.reconnect 28 | this._handleWebSocketSetup() 29 | } 30 | 31 | componentWillUnmount () { 32 | this.reconnect = false 33 | this.state.ws.close() 34 | } 35 | 36 | render () { 37 | return null 38 | } 39 | 40 | _handleWebSocketSetup = () => { 41 | const ws = new WebSocket(this.props.url) 42 | ws.onopen = () => { 43 | this.props.onOpen && this.props.onOpen() 44 | } 45 | ws.onmessage = (event) => { this.props.onMessage && this.props.onMessage(event) } 46 | ws.onerror = (error) => { this.props.onError && this.props.onError(error) } 47 | ws.onclose = () => this.reconnect ? this._handleWebSocketSetup() : (this.props.onClose && this.props.onClose()) 48 | this.setState({ws}) 49 | } 50 | } 51 | 52 | export default WS 53 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-native-websocket", 3 | "version": "1.0.2", 4 | "description": "WebSocket API wrapped as a component for React Native", 5 | "license": "MIT", 6 | "main": "index.js", 7 | "repository": { 8 | "type": "git", 9 | "url": "https://github.com/tiaanduplessis/react-native-websocket.git" 10 | }, 11 | "homepage": "https://github.com/tiaanduplessis/react-native-websocket", 12 | "bugs": "https://github.com/tiaanduplessis/react-native-websocket/issues", 13 | "author": { 14 | "name": "Tiaan", 15 | "email": "tiaanduplessis@hotmail.com" 16 | }, 17 | "scripts": { 18 | "test": "npm run lint", 19 | "lint": "standard --parser babel-eslint --verbose", 20 | "lint:fix": "standard --parser babel-eslint --fix --verbose", 21 | "precommit": "npm test" 22 | }, 23 | "keywords": [ 24 | "react", 25 | "react-native", 26 | "websocket", 27 | "ws", 28 | "component", 29 | "react-native-websocket" 30 | ], 31 | "dependencies": { 32 | "prop-types": "^15.6.1" 33 | }, 34 | "devDependencies": { 35 | "husky": "1.0.0", 36 | "babel-eslint": "9.0.0", 37 | "standard": "12.0.1" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "config:base" 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": 6 | version "7.5.5" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 8 | dependencies: 9 | "@babel/highlight" "^7.0.0" 10 | 11 | "@babel/generator@^7.5.5": 12 | version "7.5.5" 13 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" 14 | dependencies: 15 | "@babel/types" "^7.5.5" 16 | jsesc "^2.5.1" 17 | lodash "^4.17.13" 18 | source-map "^0.5.0" 19 | trim-right "^1.0.1" 20 | 21 | "@babel/helper-function-name@^7.1.0": 22 | version "7.1.0" 23 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" 24 | dependencies: 25 | "@babel/helper-get-function-arity" "^7.0.0" 26 | "@babel/template" "^7.1.0" 27 | "@babel/types" "^7.0.0" 28 | 29 | "@babel/helper-get-function-arity@^7.0.0": 30 | version "7.0.0" 31 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" 32 | dependencies: 33 | "@babel/types" "^7.0.0" 34 | 35 | "@babel/helper-split-export-declaration@^7.4.4": 36 | version "7.4.4" 37 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" 38 | dependencies: 39 | "@babel/types" "^7.4.4" 40 | 41 | "@babel/highlight@^7.0.0": 42 | version "7.5.0" 43 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" 44 | dependencies: 45 | chalk "^2.0.0" 46 | esutils "^2.0.2" 47 | js-tokens "^4.0.0" 48 | 49 | "@babel/parser@^7.0.0", "@babel/parser@^7.4.4", "@babel/parser@^7.5.5": 50 | version "7.5.5" 51 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" 52 | 53 | "@babel/template@^7.1.0": 54 | version "7.4.4" 55 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" 56 | dependencies: 57 | "@babel/code-frame" "^7.0.0" 58 | "@babel/parser" "^7.4.4" 59 | "@babel/types" "^7.4.4" 60 | 61 | "@babel/traverse@^7.0.0": 62 | version "7.5.5" 63 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.5.5.tgz#f664f8f368ed32988cd648da9f72d5ca70f165bb" 64 | dependencies: 65 | "@babel/code-frame" "^7.5.5" 66 | "@babel/generator" "^7.5.5" 67 | "@babel/helper-function-name" "^7.1.0" 68 | "@babel/helper-split-export-declaration" "^7.4.4" 69 | "@babel/parser" "^7.5.5" 70 | "@babel/types" "^7.5.5" 71 | debug "^4.1.0" 72 | globals "^11.1.0" 73 | lodash "^4.17.13" 74 | 75 | "@babel/types@^7.0.0", "@babel/types@^7.4.4", "@babel/types@^7.5.5": 76 | version "7.5.5" 77 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.5.5.tgz#97b9f728e182785909aa4ab56264f090a028d18a" 78 | dependencies: 79 | esutils "^2.0.2" 80 | lodash "^4.17.13" 81 | to-fast-properties "^2.0.0" 82 | 83 | acorn-jsx@^5.0.0: 84 | version "5.0.1" 85 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" 86 | 87 | acorn@^6.0.2: 88 | version "6.2.1" 89 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.1.tgz#3ed8422d6dec09e6121cc7a843ca86a330a86b51" 90 | 91 | ajv-keywords@^3.0.0: 92 | version "3.4.1" 93 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" 94 | 95 | ajv@^6.0.1, ajv@^6.5.0: 96 | version "6.10.2" 97 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" 98 | dependencies: 99 | fast-deep-equal "^2.0.1" 100 | fast-json-stable-stringify "^2.0.0" 101 | json-schema-traverse "^0.4.1" 102 | uri-js "^4.2.2" 103 | 104 | ansi-escapes@^3.0.0: 105 | version "3.1.0" 106 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" 107 | 108 | ansi-regex@^2.0.0: 109 | version "2.1.1" 110 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 111 | 112 | ansi-regex@^3.0.0: 113 | version "3.0.0" 114 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 115 | 116 | ansi-styles@^2.2.1: 117 | version "2.2.1" 118 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 119 | 120 | ansi-styles@^3.2.1: 121 | version "3.2.1" 122 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 123 | dependencies: 124 | color-convert "^1.9.0" 125 | 126 | argparse@^1.0.7: 127 | version "1.0.9" 128 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" 129 | dependencies: 130 | sprintf-js "~1.0.2" 131 | 132 | array-includes@^3.0.3: 133 | version "3.0.3" 134 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" 135 | dependencies: 136 | define-properties "^1.1.2" 137 | es-abstract "^1.7.0" 138 | 139 | array-union@^1.0.1: 140 | version "1.0.2" 141 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" 142 | dependencies: 143 | array-uniq "^1.0.1" 144 | 145 | array-uniq@^1.0.1: 146 | version "1.0.3" 147 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" 148 | 149 | arrify@^1.0.0: 150 | version "1.0.1" 151 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 152 | 153 | babel-code-frame@^6.26.0: 154 | version "6.26.0" 155 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" 156 | dependencies: 157 | chalk "^1.1.3" 158 | esutils "^2.0.2" 159 | js-tokens "^3.0.2" 160 | 161 | babel-eslint@9.0.0: 162 | version "9.0.0" 163 | resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-9.0.0.tgz#7d9445f81ed9f60aff38115f838970df9f2b6220" 164 | dependencies: 165 | "@babel/code-frame" "^7.0.0" 166 | "@babel/parser" "^7.0.0" 167 | "@babel/traverse" "^7.0.0" 168 | "@babel/types" "^7.0.0" 169 | eslint-scope "3.7.1" 170 | eslint-visitor-keys "^1.0.0" 171 | 172 | balanced-match@^0.4.1: 173 | version "0.4.2" 174 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" 175 | 176 | balanced-match@^1.0.0: 177 | version "1.0.0" 178 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 179 | 180 | brace-expansion@^1.0.0: 181 | version "1.1.7" 182 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" 183 | dependencies: 184 | balanced-match "^0.4.1" 185 | concat-map "0.0.1" 186 | 187 | brace-expansion@^1.1.7: 188 | version "1.1.11" 189 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 190 | dependencies: 191 | balanced-match "^1.0.0" 192 | concat-map "0.0.1" 193 | 194 | builtin-modules@^1.0.0: 195 | version "1.1.1" 196 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 197 | 198 | caller-path@^0.1.0: 199 | version "0.1.0" 200 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" 201 | dependencies: 202 | callsites "^0.2.0" 203 | 204 | callsites@^0.2.0: 205 | version "0.2.0" 206 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" 207 | 208 | chalk@^1.1.3: 209 | version "1.1.3" 210 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 211 | dependencies: 212 | ansi-styles "^2.2.1" 213 | escape-string-regexp "^1.0.2" 214 | has-ansi "^2.0.0" 215 | strip-ansi "^3.0.0" 216 | supports-color "^2.0.0" 217 | 218 | chalk@^2.0.0, chalk@^2.1.0: 219 | version "2.4.1" 220 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" 221 | dependencies: 222 | ansi-styles "^3.2.1" 223 | escape-string-regexp "^1.0.5" 224 | supports-color "^5.3.0" 225 | 226 | chardet@^0.4.0: 227 | version "0.4.2" 228 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" 229 | 230 | ci-info@^1.5.0: 231 | version "1.6.0" 232 | resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" 233 | 234 | circular-json@^0.3.1: 235 | version "0.3.1" 236 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" 237 | 238 | cli-cursor@^2.1.0: 239 | version "2.1.0" 240 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 241 | dependencies: 242 | restore-cursor "^2.0.0" 243 | 244 | cli-width@^2.0.0: 245 | version "2.1.0" 246 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" 247 | 248 | color-convert@^1.9.0: 249 | version "1.9.3" 250 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 251 | dependencies: 252 | color-name "1.1.3" 253 | 254 | color-name@1.1.3: 255 | version "1.1.3" 256 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 257 | 258 | concat-map@0.0.1: 259 | version "0.0.1" 260 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 261 | 262 | contains-path@^0.1.0: 263 | version "0.1.0" 264 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 265 | 266 | cosmiconfig@^5.0.6: 267 | version "5.0.6" 268 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" 269 | dependencies: 270 | is-directory "^0.3.1" 271 | js-yaml "^3.9.0" 272 | parse-json "^4.0.0" 273 | 274 | cross-spawn@^5.0.1: 275 | version "5.1.0" 276 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" 277 | dependencies: 278 | lru-cache "^4.0.1" 279 | shebang-command "^1.2.0" 280 | which "^1.2.9" 281 | 282 | cross-spawn@^6.0.5: 283 | version "6.0.5" 284 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 285 | dependencies: 286 | nice-try "^1.0.4" 287 | path-key "^2.0.1" 288 | semver "^5.5.0" 289 | shebang-command "^1.2.0" 290 | which "^1.2.9" 291 | 292 | debug-log@^1.0.0: 293 | version "1.0.1" 294 | resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f" 295 | 296 | debug@^2.6.8, debug@^2.6.9: 297 | version "2.6.9" 298 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 299 | dependencies: 300 | ms "2.0.0" 301 | 302 | debug@^3.1.0: 303 | version "3.2.5" 304 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.5.tgz#c2418fbfd7a29f4d4f70ff4cea604d4b64c46407" 305 | dependencies: 306 | ms "^2.1.1" 307 | 308 | debug@^4.1.0: 309 | version "4.1.1" 310 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 311 | dependencies: 312 | ms "^2.1.1" 313 | 314 | deep-is@~0.1.3: 315 | version "0.1.3" 316 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 317 | 318 | define-properties@^1.1.2: 319 | version "1.1.2" 320 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" 321 | dependencies: 322 | foreach "^2.0.5" 323 | object-keys "^1.0.8" 324 | 325 | deglob@^2.1.0: 326 | version "2.1.0" 327 | resolved "https://registry.yarnpkg.com/deglob/-/deglob-2.1.0.tgz#4d44abe16ef32c779b4972bd141a80325029a14a" 328 | dependencies: 329 | find-root "^1.0.0" 330 | glob "^7.0.5" 331 | ignore "^3.0.9" 332 | pkg-config "^1.1.0" 333 | run-parallel "^1.1.2" 334 | uniq "^1.0.1" 335 | 336 | del@^2.0.2: 337 | version "2.2.2" 338 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" 339 | dependencies: 340 | globby "^5.0.0" 341 | is-path-cwd "^1.0.0" 342 | is-path-in-cwd "^1.0.0" 343 | object-assign "^4.0.1" 344 | pify "^2.0.0" 345 | pinkie-promise "^2.0.0" 346 | rimraf "^2.2.8" 347 | 348 | doctrine@1.5.0: 349 | version "1.5.0" 350 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 351 | dependencies: 352 | esutils "^2.0.2" 353 | isarray "^1.0.0" 354 | 355 | doctrine@^2.1.0: 356 | version "2.1.0" 357 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" 358 | dependencies: 359 | esutils "^2.0.2" 360 | 361 | error-ex@^1.2.0: 362 | version "1.3.1" 363 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" 364 | dependencies: 365 | is-arrayish "^0.2.1" 366 | 367 | error-ex@^1.3.1: 368 | version "1.3.2" 369 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 370 | dependencies: 371 | is-arrayish "^0.2.1" 372 | 373 | es-abstract@^1.7.0: 374 | version "1.7.0" 375 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" 376 | dependencies: 377 | es-to-primitive "^1.1.1" 378 | function-bind "^1.1.0" 379 | is-callable "^1.1.3" 380 | is-regex "^1.0.3" 381 | 382 | es-to-primitive@^1.1.1: 383 | version "1.1.1" 384 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" 385 | dependencies: 386 | is-callable "^1.1.1" 387 | is-date-object "^1.0.1" 388 | is-symbol "^1.0.1" 389 | 390 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 391 | version "1.0.5" 392 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 393 | 394 | eslint-config-standard-jsx@6.0.2: 395 | version "6.0.2" 396 | resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-6.0.2.tgz#90c9aa16ac2c4f8970c13fc7efc608bacd02da70" 397 | 398 | eslint-config-standard@12.0.0: 399 | version "12.0.0" 400 | resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz#638b4c65db0bd5a41319f96bba1f15ddad2107d9" 401 | 402 | eslint-import-resolver-node@^0.3.1: 403 | version "0.3.2" 404 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" 405 | dependencies: 406 | debug "^2.6.9" 407 | resolve "^1.5.0" 408 | 409 | eslint-module-utils@^2.2.0: 410 | version "2.4.1" 411 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" 412 | dependencies: 413 | debug "^2.6.8" 414 | pkg-dir "^2.0.0" 415 | 416 | eslint-plugin-es@^1.3.1: 417 | version "1.4.0" 418 | resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" 419 | dependencies: 420 | eslint-utils "^1.3.0" 421 | regexpp "^2.0.1" 422 | 423 | eslint-plugin-import@~2.14.0: 424 | version "2.14.0" 425 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8" 426 | dependencies: 427 | contains-path "^0.1.0" 428 | debug "^2.6.8" 429 | doctrine "1.5.0" 430 | eslint-import-resolver-node "^0.3.1" 431 | eslint-module-utils "^2.2.0" 432 | has "^1.0.1" 433 | lodash "^4.17.4" 434 | minimatch "^3.0.3" 435 | read-pkg-up "^2.0.0" 436 | resolve "^1.6.0" 437 | 438 | eslint-plugin-node@~7.0.1: 439 | version "7.0.1" 440 | resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-7.0.1.tgz#a6e054e50199b2edd85518b89b4e7b323c9f36db" 441 | dependencies: 442 | eslint-plugin-es "^1.3.1" 443 | eslint-utils "^1.3.1" 444 | ignore "^4.0.2" 445 | minimatch "^3.0.4" 446 | resolve "^1.8.1" 447 | semver "^5.5.0" 448 | 449 | eslint-plugin-promise@~4.0.0: 450 | version "4.0.1" 451 | resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz#2d074b653f35a23d1ba89d8e976a985117d1c6a2" 452 | 453 | eslint-plugin-react@~7.11.1: 454 | version "7.11.1" 455 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz#c01a7af6f17519457d6116aa94fc6d2ccad5443c" 456 | dependencies: 457 | array-includes "^3.0.3" 458 | doctrine "^2.1.0" 459 | has "^1.0.3" 460 | jsx-ast-utils "^2.0.1" 461 | prop-types "^15.6.2" 462 | 463 | eslint-plugin-standard@~4.0.0: 464 | version "4.0.0" 465 | resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz#f845b45109c99cd90e77796940a344546c8f6b5c" 466 | 467 | eslint-scope@3.7.1: 468 | version "3.7.1" 469 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" 470 | dependencies: 471 | esrecurse "^4.1.0" 472 | estraverse "^4.1.1" 473 | 474 | eslint-scope@^4.0.0: 475 | version "4.0.3" 476 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" 477 | dependencies: 478 | esrecurse "^4.1.0" 479 | estraverse "^4.1.1" 480 | 481 | eslint-utils@^1.3.0, eslint-utils@^1.3.1: 482 | version "1.4.0" 483 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.0.tgz#e2c3c8dba768425f897cf0f9e51fe2e241485d4c" 484 | dependencies: 485 | eslint-visitor-keys "^1.0.0" 486 | 487 | eslint-visitor-keys@^1.0.0: 488 | version "1.0.0" 489 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" 490 | 491 | eslint@~5.4.0: 492 | version "5.4.0" 493 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.4.0.tgz#d068ec03006bb9e06b429dc85f7e46c1b69fac62" 494 | dependencies: 495 | ajv "^6.5.0" 496 | babel-code-frame "^6.26.0" 497 | chalk "^2.1.0" 498 | cross-spawn "^6.0.5" 499 | debug "^3.1.0" 500 | doctrine "^2.1.0" 501 | eslint-scope "^4.0.0" 502 | eslint-utils "^1.3.1" 503 | eslint-visitor-keys "^1.0.0" 504 | espree "^4.0.0" 505 | esquery "^1.0.1" 506 | esutils "^2.0.2" 507 | file-entry-cache "^2.0.0" 508 | functional-red-black-tree "^1.0.1" 509 | glob "^7.1.2" 510 | globals "^11.7.0" 511 | ignore "^4.0.2" 512 | imurmurhash "^0.1.4" 513 | inquirer "^5.2.0" 514 | is-resolvable "^1.1.0" 515 | js-yaml "^3.11.0" 516 | json-stable-stringify-without-jsonify "^1.0.1" 517 | levn "^0.3.0" 518 | lodash "^4.17.5" 519 | minimatch "^3.0.4" 520 | mkdirp "^0.5.1" 521 | natural-compare "^1.4.0" 522 | optionator "^0.8.2" 523 | path-is-inside "^1.0.2" 524 | pluralize "^7.0.0" 525 | progress "^2.0.0" 526 | regexpp "^2.0.0" 527 | require-uncached "^1.0.3" 528 | semver "^5.5.0" 529 | strip-ansi "^4.0.0" 530 | strip-json-comments "^2.0.1" 531 | table "^4.0.3" 532 | text-table "^0.2.0" 533 | 534 | espree@^4.0.0: 535 | version "4.1.0" 536 | resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f" 537 | dependencies: 538 | acorn "^6.0.2" 539 | acorn-jsx "^5.0.0" 540 | eslint-visitor-keys "^1.0.0" 541 | 542 | esprima@^4.0.0: 543 | version "4.0.1" 544 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 545 | 546 | esquery@^1.0.1: 547 | version "1.0.1" 548 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" 549 | dependencies: 550 | estraverse "^4.0.0" 551 | 552 | esrecurse@^4.1.0: 553 | version "4.1.0" 554 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" 555 | dependencies: 556 | estraverse "~4.1.0" 557 | object-assign "^4.0.1" 558 | 559 | estraverse@^4.0.0, estraverse@^4.1.1: 560 | version "4.2.0" 561 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 562 | 563 | estraverse@~4.1.0: 564 | version "4.1.1" 565 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2" 566 | 567 | esutils@^2.0.2: 568 | version "2.0.2" 569 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 570 | 571 | execa@^0.9.0: 572 | version "0.9.0" 573 | resolved "https://registry.yarnpkg.com/execa/-/execa-0.9.0.tgz#adb7ce62cf985071f60580deb4a88b9e34712d01" 574 | dependencies: 575 | cross-spawn "^5.0.1" 576 | get-stream "^3.0.0" 577 | is-stream "^1.1.0" 578 | npm-run-path "^2.0.0" 579 | p-finally "^1.0.0" 580 | signal-exit "^3.0.0" 581 | strip-eof "^1.0.0" 582 | 583 | external-editor@^2.1.0: 584 | version "2.2.0" 585 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" 586 | dependencies: 587 | chardet "^0.4.0" 588 | iconv-lite "^0.4.17" 589 | tmp "^0.0.33" 590 | 591 | fast-deep-equal@^2.0.1: 592 | version "2.0.1" 593 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" 594 | 595 | fast-json-stable-stringify@^2.0.0: 596 | version "2.0.0" 597 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 598 | 599 | fast-levenshtein@~2.0.4: 600 | version "2.0.6" 601 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 602 | 603 | figures@^2.0.0: 604 | version "2.0.0" 605 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 606 | dependencies: 607 | escape-string-regexp "^1.0.5" 608 | 609 | file-entry-cache@^2.0.0: 610 | version "2.0.0" 611 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" 612 | dependencies: 613 | flat-cache "^1.2.1" 614 | object-assign "^4.0.1" 615 | 616 | find-root@^1.0.0: 617 | version "1.0.0" 618 | resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.0.0.tgz#962ff211aab25c6520feeeb8d6287f8f6e95807a" 619 | 620 | find-up@^2.0.0, find-up@^2.1.0: 621 | version "2.1.0" 622 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 623 | dependencies: 624 | locate-path "^2.0.0" 625 | 626 | find-up@^3.0.0: 627 | version "3.0.0" 628 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 629 | dependencies: 630 | locate-path "^3.0.0" 631 | 632 | flat-cache@^1.2.1: 633 | version "1.2.2" 634 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" 635 | dependencies: 636 | circular-json "^0.3.1" 637 | del "^2.0.2" 638 | graceful-fs "^4.1.2" 639 | write "^0.2.1" 640 | 641 | foreach@^2.0.5: 642 | version "2.0.5" 643 | resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" 644 | 645 | fs.realpath@^1.0.0: 646 | version "1.0.0" 647 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 648 | 649 | function-bind@^1.0.2, function-bind@^1.1.0: 650 | version "1.1.0" 651 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" 652 | 653 | function-bind@^1.1.1: 654 | version "1.1.1" 655 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 656 | 657 | functional-red-black-tree@^1.0.1: 658 | version "1.0.1" 659 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 660 | 661 | get-stdin@^6.0.0: 662 | version "6.0.0" 663 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" 664 | 665 | get-stream@^3.0.0: 666 | version "3.0.0" 667 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" 668 | 669 | glob@^7.0.3, glob@^7.0.5: 670 | version "7.1.1" 671 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" 672 | dependencies: 673 | fs.realpath "^1.0.0" 674 | inflight "^1.0.4" 675 | inherits "2" 676 | minimatch "^3.0.2" 677 | once "^1.3.0" 678 | path-is-absolute "^1.0.0" 679 | 680 | glob@^7.1.2: 681 | version "7.1.3" 682 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" 683 | dependencies: 684 | fs.realpath "^1.0.0" 685 | inflight "^1.0.4" 686 | inherits "2" 687 | minimatch "^3.0.4" 688 | once "^1.3.0" 689 | path-is-absolute "^1.0.0" 690 | 691 | globals@^11.1.0: 692 | version "11.7.0" 693 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" 694 | 695 | globals@^11.7.0: 696 | version "11.12.0" 697 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 698 | 699 | globby@^5.0.0: 700 | version "5.0.0" 701 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" 702 | dependencies: 703 | array-union "^1.0.1" 704 | arrify "^1.0.0" 705 | glob "^7.0.3" 706 | object-assign "^4.0.1" 707 | pify "^2.0.0" 708 | pinkie-promise "^2.0.0" 709 | 710 | graceful-fs@^4.1.2: 711 | version "4.1.11" 712 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 713 | 714 | has-ansi@^2.0.0: 715 | version "2.0.0" 716 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 717 | dependencies: 718 | ansi-regex "^2.0.0" 719 | 720 | has-flag@^3.0.0: 721 | version "3.0.0" 722 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 723 | 724 | has@^1.0.1: 725 | version "1.0.1" 726 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" 727 | dependencies: 728 | function-bind "^1.0.2" 729 | 730 | has@^1.0.3: 731 | version "1.0.3" 732 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 733 | dependencies: 734 | function-bind "^1.1.1" 735 | 736 | hosted-git-info@^2.1.4: 737 | version "2.7.1" 738 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" 739 | 740 | husky@1.0.0: 741 | version "1.0.0" 742 | resolved "https://registry.yarnpkg.com/husky/-/husky-1.0.0.tgz#308980544f20edb1b3e80680b29ae02f87dfa94c" 743 | dependencies: 744 | cosmiconfig "^5.0.6" 745 | execa "^0.9.0" 746 | find-up "^3.0.0" 747 | get-stdin "^6.0.0" 748 | is-ci "^1.2.1" 749 | pkg-dir "^3.0.0" 750 | please-upgrade-node "^3.1.1" 751 | read-pkg "^4.0.1" 752 | run-node "^1.0.0" 753 | slash "^2.0.0" 754 | 755 | iconv-lite@^0.4.17: 756 | version "0.4.24" 757 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 758 | dependencies: 759 | safer-buffer ">= 2.1.2 < 3" 760 | 761 | ignore@^3.0.9: 762 | version "3.2.7" 763 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.7.tgz#4810ca5f1d8eca5595213a34b94f2eb4ed926bbd" 764 | 765 | ignore@^4.0.2: 766 | version "4.0.6" 767 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 768 | 769 | imurmurhash@^0.1.4: 770 | version "0.1.4" 771 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 772 | 773 | inflight@^1.0.4: 774 | version "1.0.6" 775 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 776 | dependencies: 777 | once "^1.3.0" 778 | wrappy "1" 779 | 780 | inherits@2: 781 | version "2.0.3" 782 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 783 | 784 | inquirer@^5.2.0: 785 | version "5.2.0" 786 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-5.2.0.tgz#db350c2b73daca77ff1243962e9f22f099685726" 787 | dependencies: 788 | ansi-escapes "^3.0.0" 789 | chalk "^2.0.0" 790 | cli-cursor "^2.1.0" 791 | cli-width "^2.0.0" 792 | external-editor "^2.1.0" 793 | figures "^2.0.0" 794 | lodash "^4.3.0" 795 | mute-stream "0.0.7" 796 | run-async "^2.2.0" 797 | rxjs "^5.5.2" 798 | string-width "^2.1.0" 799 | strip-ansi "^4.0.0" 800 | through "^2.3.6" 801 | 802 | is-arrayish@^0.2.1: 803 | version "0.2.1" 804 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 805 | 806 | is-builtin-module@^1.0.0: 807 | version "1.0.0" 808 | resolved "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 809 | dependencies: 810 | builtin-modules "^1.0.0" 811 | 812 | is-callable@^1.1.1, is-callable@^1.1.3: 813 | version "1.1.3" 814 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" 815 | 816 | is-ci@^1.2.1: 817 | version "1.2.1" 818 | resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" 819 | dependencies: 820 | ci-info "^1.5.0" 821 | 822 | is-date-object@^1.0.1: 823 | version "1.0.1" 824 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 825 | 826 | is-directory@^0.3.1: 827 | version "0.3.1" 828 | resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" 829 | 830 | is-fullwidth-code-point@^2.0.0: 831 | version "2.0.0" 832 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 833 | 834 | is-path-cwd@^1.0.0: 835 | version "1.0.0" 836 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" 837 | 838 | is-path-in-cwd@^1.0.0: 839 | version "1.0.0" 840 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" 841 | dependencies: 842 | is-path-inside "^1.0.0" 843 | 844 | is-path-inside@^1.0.0: 845 | version "1.0.0" 846 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" 847 | dependencies: 848 | path-is-inside "^1.0.1" 849 | 850 | is-promise@^2.1.0: 851 | version "2.1.0" 852 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 853 | 854 | is-regex@^1.0.3: 855 | version "1.0.4" 856 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 857 | dependencies: 858 | has "^1.0.1" 859 | 860 | is-resolvable@^1.1.0: 861 | version "1.1.0" 862 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" 863 | 864 | is-stream@^1.1.0: 865 | version "1.1.0" 866 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 867 | 868 | is-symbol@^1.0.1: 869 | version "1.0.1" 870 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" 871 | 872 | isarray@^1.0.0: 873 | version "1.0.0" 874 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 875 | 876 | isexe@^2.0.0: 877 | version "2.0.0" 878 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 879 | 880 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 881 | version "4.0.0" 882 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 883 | 884 | js-tokens@^3.0.2: 885 | version "3.0.2" 886 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" 887 | 888 | js-yaml@^3.11.0: 889 | version "3.13.1" 890 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 891 | dependencies: 892 | argparse "^1.0.7" 893 | esprima "^4.0.0" 894 | 895 | js-yaml@^3.9.0: 896 | version "3.12.0" 897 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" 898 | dependencies: 899 | argparse "^1.0.7" 900 | esprima "^4.0.0" 901 | 902 | jsesc@^2.5.1: 903 | version "2.5.1" 904 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" 905 | 906 | json-parse-better-errors@^1.0.1: 907 | version "1.0.2" 908 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 909 | 910 | json-schema-traverse@^0.4.1: 911 | version "0.4.1" 912 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 913 | 914 | json-stable-stringify-without-jsonify@^1.0.1: 915 | version "1.0.1" 916 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 917 | 918 | jsx-ast-utils@^2.0.1: 919 | version "2.0.1" 920 | resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" 921 | dependencies: 922 | array-includes "^3.0.3" 923 | 924 | levn@^0.3.0, levn@~0.3.0: 925 | version "0.3.0" 926 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 927 | dependencies: 928 | prelude-ls "~1.1.2" 929 | type-check "~0.3.2" 930 | 931 | load-json-file@^2.0.0: 932 | version "2.0.0" 933 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 934 | dependencies: 935 | graceful-fs "^4.1.2" 936 | parse-json "^2.2.0" 937 | pify "^2.0.0" 938 | strip-bom "^3.0.0" 939 | 940 | locate-path@^2.0.0: 941 | version "2.0.0" 942 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 943 | dependencies: 944 | p-locate "^2.0.0" 945 | path-exists "^3.0.0" 946 | 947 | locate-path@^3.0.0: 948 | version "3.0.0" 949 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 950 | dependencies: 951 | p-locate "^3.0.0" 952 | path-exists "^3.0.0" 953 | 954 | lodash@^4.17.13, lodash@^4.17.5: 955 | version "4.17.15" 956 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" 957 | 958 | lodash@^4.17.4: 959 | version "4.17.11" 960 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" 961 | 962 | lodash@^4.3.0: 963 | version "4.17.4" 964 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" 965 | 966 | loose-envify@^1.3.1, loose-envify@^1.4.0: 967 | version "1.4.0" 968 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 969 | dependencies: 970 | js-tokens "^3.0.0 || ^4.0.0" 971 | 972 | lru-cache@^4.0.1: 973 | version "4.1.3" 974 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" 975 | dependencies: 976 | pseudomap "^1.0.2" 977 | yallist "^2.1.2" 978 | 979 | mimic-fn@^1.0.0: 980 | version "1.2.0" 981 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" 982 | 983 | minimatch@^3.0.2, minimatch@^3.0.3: 984 | version "3.0.3" 985 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" 986 | dependencies: 987 | brace-expansion "^1.0.0" 988 | 989 | minimatch@^3.0.4: 990 | version "3.0.4" 991 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 992 | dependencies: 993 | brace-expansion "^1.1.7" 994 | 995 | minimist@0.0.8: 996 | version "0.0.8" 997 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 998 | 999 | minimist@^1.1.0: 1000 | version "1.2.0" 1001 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 1002 | 1003 | mkdirp@^0.5.1: 1004 | version "0.5.1" 1005 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 1006 | dependencies: 1007 | minimist "0.0.8" 1008 | 1009 | ms@2.0.0: 1010 | version "2.0.0" 1011 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1012 | 1013 | ms@^2.1.1: 1014 | version "2.1.1" 1015 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 1016 | 1017 | mute-stream@0.0.7: 1018 | version "0.0.7" 1019 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 1020 | 1021 | natural-compare@^1.4.0: 1022 | version "1.4.0" 1023 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 1024 | 1025 | nice-try@^1.0.4: 1026 | version "1.0.5" 1027 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 1028 | 1029 | normalize-package-data@^2.3.2: 1030 | version "2.4.0" 1031 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" 1032 | dependencies: 1033 | hosted-git-info "^2.1.4" 1034 | is-builtin-module "^1.0.0" 1035 | semver "2 || 3 || 4 || 5" 1036 | validate-npm-package-license "^3.0.1" 1037 | 1038 | npm-run-path@^2.0.0: 1039 | version "2.0.2" 1040 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 1041 | dependencies: 1042 | path-key "^2.0.0" 1043 | 1044 | object-assign@^4.0.1, object-assign@^4.1.1: 1045 | version "4.1.1" 1046 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1047 | 1048 | object-keys@^1.0.8: 1049 | version "1.0.11" 1050 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" 1051 | 1052 | once@^1.3.0: 1053 | version "1.4.0" 1054 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1055 | dependencies: 1056 | wrappy "1" 1057 | 1058 | onetime@^2.0.0: 1059 | version "2.0.1" 1060 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 1061 | dependencies: 1062 | mimic-fn "^1.0.0" 1063 | 1064 | optionator@^0.8.2: 1065 | version "0.8.2" 1066 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 1067 | dependencies: 1068 | deep-is "~0.1.3" 1069 | fast-levenshtein "~2.0.4" 1070 | levn "~0.3.0" 1071 | prelude-ls "~1.1.2" 1072 | type-check "~0.3.2" 1073 | wordwrap "~1.0.0" 1074 | 1075 | os-tmpdir@~1.0.2: 1076 | version "1.0.2" 1077 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 1078 | 1079 | p-finally@^1.0.0: 1080 | version "1.0.0" 1081 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 1082 | 1083 | p-limit@^1.1.0: 1084 | version "1.1.0" 1085 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" 1086 | 1087 | p-limit@^2.0.0: 1088 | version "2.0.0" 1089 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" 1090 | dependencies: 1091 | p-try "^2.0.0" 1092 | 1093 | p-locate@^2.0.0: 1094 | version "2.0.0" 1095 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 1096 | dependencies: 1097 | p-limit "^1.1.0" 1098 | 1099 | p-locate@^3.0.0: 1100 | version "3.0.0" 1101 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 1102 | dependencies: 1103 | p-limit "^2.0.0" 1104 | 1105 | p-try@^2.0.0: 1106 | version "2.0.0" 1107 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" 1108 | 1109 | parse-json@^2.2.0: 1110 | version "2.2.0" 1111 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 1112 | dependencies: 1113 | error-ex "^1.2.0" 1114 | 1115 | parse-json@^4.0.0: 1116 | version "4.0.0" 1117 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 1118 | dependencies: 1119 | error-ex "^1.3.1" 1120 | json-parse-better-errors "^1.0.1" 1121 | 1122 | path-exists@^3.0.0: 1123 | version "3.0.0" 1124 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 1125 | 1126 | path-is-absolute@^1.0.0: 1127 | version "1.0.1" 1128 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1129 | 1130 | path-is-inside@^1.0.1, path-is-inside@^1.0.2: 1131 | version "1.0.2" 1132 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 1133 | 1134 | path-key@^2.0.0, path-key@^2.0.1: 1135 | version "2.0.1" 1136 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 1137 | 1138 | path-parse@^1.0.5: 1139 | version "1.0.5" 1140 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" 1141 | 1142 | path-parse@^1.0.6: 1143 | version "1.0.6" 1144 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 1145 | 1146 | path-type@^2.0.0: 1147 | version "2.0.0" 1148 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 1149 | dependencies: 1150 | pify "^2.0.0" 1151 | 1152 | pify@^2.0.0: 1153 | version "2.3.0" 1154 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 1155 | 1156 | pify@^3.0.0: 1157 | version "3.0.0" 1158 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" 1159 | 1160 | pinkie-promise@^2.0.0: 1161 | version "2.0.1" 1162 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 1163 | dependencies: 1164 | pinkie "^2.0.0" 1165 | 1166 | pinkie@^2.0.0: 1167 | version "2.0.4" 1168 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 1169 | 1170 | pkg-conf@^2.0.0: 1171 | version "2.0.0" 1172 | resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.0.0.tgz#071c87650403bccfb9c627f58751bfe47c067279" 1173 | dependencies: 1174 | find-up "^2.0.0" 1175 | load-json-file "^2.0.0" 1176 | 1177 | pkg-config@^1.1.0: 1178 | version "1.1.1" 1179 | resolved "https://registry.yarnpkg.com/pkg-config/-/pkg-config-1.1.1.tgz#557ef22d73da3c8837107766c52eadabde298fe4" 1180 | dependencies: 1181 | debug-log "^1.0.0" 1182 | find-root "^1.0.0" 1183 | xtend "^4.0.1" 1184 | 1185 | pkg-dir@^2.0.0: 1186 | version "2.0.0" 1187 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" 1188 | dependencies: 1189 | find-up "^2.1.0" 1190 | 1191 | pkg-dir@^3.0.0: 1192 | version "3.0.0" 1193 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" 1194 | dependencies: 1195 | find-up "^3.0.0" 1196 | 1197 | please-upgrade-node@^3.1.1: 1198 | version "3.1.1" 1199 | resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" 1200 | dependencies: 1201 | semver-compare "^1.0.0" 1202 | 1203 | pluralize@^7.0.0: 1204 | version "7.0.0" 1205 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" 1206 | 1207 | prelude-ls@~1.1.2: 1208 | version "1.1.2" 1209 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 1210 | 1211 | progress@^2.0.0: 1212 | version "2.0.0" 1213 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" 1214 | 1215 | prop-types@^15.6.1: 1216 | version "15.6.2" 1217 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" 1218 | dependencies: 1219 | loose-envify "^1.3.1" 1220 | object-assign "^4.1.1" 1221 | 1222 | prop-types@^15.6.2: 1223 | version "15.7.2" 1224 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" 1225 | dependencies: 1226 | loose-envify "^1.4.0" 1227 | object-assign "^4.1.1" 1228 | react-is "^16.8.1" 1229 | 1230 | pseudomap@^1.0.2: 1231 | version "1.0.2" 1232 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 1233 | 1234 | punycode@^2.1.0: 1235 | version "2.1.1" 1236 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1237 | 1238 | react-is@^16.8.1: 1239 | version "16.8.6" 1240 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" 1241 | 1242 | read-pkg-up@^2.0.0: 1243 | version "2.0.0" 1244 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 1245 | dependencies: 1246 | find-up "^2.0.0" 1247 | read-pkg "^2.0.0" 1248 | 1249 | read-pkg@^2.0.0: 1250 | version "2.0.0" 1251 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 1252 | dependencies: 1253 | load-json-file "^2.0.0" 1254 | normalize-package-data "^2.3.2" 1255 | path-type "^2.0.0" 1256 | 1257 | read-pkg@^4.0.1: 1258 | version "4.0.1" 1259 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" 1260 | dependencies: 1261 | normalize-package-data "^2.3.2" 1262 | parse-json "^4.0.0" 1263 | pify "^3.0.0" 1264 | 1265 | regexpp@^2.0.0, regexpp@^2.0.1: 1266 | version "2.0.1" 1267 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" 1268 | 1269 | require-uncached@^1.0.3: 1270 | version "1.0.3" 1271 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" 1272 | dependencies: 1273 | caller-path "^0.1.0" 1274 | resolve-from "^1.0.0" 1275 | 1276 | resolve-from@^1.0.0: 1277 | version "1.0.1" 1278 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" 1279 | 1280 | resolve@^1.5.0: 1281 | version "1.8.1" 1282 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" 1283 | dependencies: 1284 | path-parse "^1.0.5" 1285 | 1286 | resolve@^1.6.0, resolve@^1.8.1: 1287 | version "1.11.1" 1288 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" 1289 | dependencies: 1290 | path-parse "^1.0.6" 1291 | 1292 | restore-cursor@^2.0.0: 1293 | version "2.0.0" 1294 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 1295 | dependencies: 1296 | onetime "^2.0.0" 1297 | signal-exit "^3.0.2" 1298 | 1299 | rimraf@^2.2.8: 1300 | version "2.6.1" 1301 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" 1302 | dependencies: 1303 | glob "^7.0.5" 1304 | 1305 | run-async@^2.2.0: 1306 | version "2.3.0" 1307 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 1308 | dependencies: 1309 | is-promise "^2.1.0" 1310 | 1311 | run-node@^1.0.0: 1312 | version "1.0.0" 1313 | resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" 1314 | 1315 | run-parallel@^1.1.2: 1316 | version "1.1.6" 1317 | resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.6.tgz#29003c9a2163e01e2d2dfc90575f2c6c1d61a039" 1318 | 1319 | rxjs@^5.5.2: 1320 | version "5.5.12" 1321 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.12.tgz#6fa61b8a77c3d793dbaf270bee2f43f652d741cc" 1322 | dependencies: 1323 | symbol-observable "1.0.1" 1324 | 1325 | "safer-buffer@>= 2.1.2 < 3": 1326 | version "2.1.2" 1327 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 1328 | 1329 | semver-compare@^1.0.0: 1330 | version "1.0.0" 1331 | resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" 1332 | 1333 | "semver@2 || 3 || 4 || 5": 1334 | version "5.5.1" 1335 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" 1336 | 1337 | semver@^5.5.0: 1338 | version "5.7.0" 1339 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" 1340 | 1341 | shebang-command@^1.2.0: 1342 | version "1.2.0" 1343 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 1344 | dependencies: 1345 | shebang-regex "^1.0.0" 1346 | 1347 | shebang-regex@^1.0.0: 1348 | version "1.0.0" 1349 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 1350 | 1351 | signal-exit@^3.0.0, signal-exit@^3.0.2: 1352 | version "3.0.2" 1353 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 1354 | 1355 | slash@^2.0.0: 1356 | version "2.0.0" 1357 | resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" 1358 | 1359 | slice-ansi@1.0.0: 1360 | version "1.0.0" 1361 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" 1362 | dependencies: 1363 | is-fullwidth-code-point "^2.0.0" 1364 | 1365 | source-map@^0.5.0: 1366 | version "0.5.7" 1367 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 1368 | 1369 | spdx-correct@^3.0.0: 1370 | version "3.0.0" 1371 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" 1372 | dependencies: 1373 | spdx-expression-parse "^3.0.0" 1374 | spdx-license-ids "^3.0.0" 1375 | 1376 | spdx-exceptions@^2.1.0: 1377 | version "2.1.0" 1378 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" 1379 | 1380 | spdx-expression-parse@^3.0.0: 1381 | version "3.0.0" 1382 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 1383 | dependencies: 1384 | spdx-exceptions "^2.1.0" 1385 | spdx-license-ids "^3.0.0" 1386 | 1387 | spdx-license-ids@^3.0.0: 1388 | version "3.0.1" 1389 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz#e2a303236cac54b04031fa7a5a79c7e701df852f" 1390 | 1391 | sprintf-js@~1.0.2: 1392 | version "1.0.3" 1393 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 1394 | 1395 | standard-engine@~9.0.0: 1396 | version "9.0.0" 1397 | resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-9.0.0.tgz#d3a3d74c4c1b91f51a1e66362465261ca7610316" 1398 | dependencies: 1399 | deglob "^2.1.0" 1400 | get-stdin "^6.0.0" 1401 | minimist "^1.1.0" 1402 | pkg-conf "^2.0.0" 1403 | 1404 | standard@12.0.1: 1405 | version "12.0.1" 1406 | resolved "https://registry.yarnpkg.com/standard/-/standard-12.0.1.tgz#0fc5a8aa6c34c546c5562aae644242b24dae2e61" 1407 | dependencies: 1408 | eslint "~5.4.0" 1409 | eslint-config-standard "12.0.0" 1410 | eslint-config-standard-jsx "6.0.2" 1411 | eslint-plugin-import "~2.14.0" 1412 | eslint-plugin-node "~7.0.1" 1413 | eslint-plugin-promise "~4.0.0" 1414 | eslint-plugin-react "~7.11.1" 1415 | eslint-plugin-standard "~4.0.0" 1416 | standard-engine "~9.0.0" 1417 | 1418 | string-width@^2.1.0, string-width@^2.1.1: 1419 | version "2.1.1" 1420 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 1421 | dependencies: 1422 | is-fullwidth-code-point "^2.0.0" 1423 | strip-ansi "^4.0.0" 1424 | 1425 | strip-ansi@^3.0.0: 1426 | version "3.0.1" 1427 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 1428 | dependencies: 1429 | ansi-regex "^2.0.0" 1430 | 1431 | strip-ansi@^4.0.0: 1432 | version "4.0.0" 1433 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 1434 | dependencies: 1435 | ansi-regex "^3.0.0" 1436 | 1437 | strip-bom@^3.0.0: 1438 | version "3.0.0" 1439 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1440 | 1441 | strip-eof@^1.0.0: 1442 | version "1.0.0" 1443 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 1444 | 1445 | strip-json-comments@^2.0.1: 1446 | version "2.0.1" 1447 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 1448 | 1449 | supports-color@^2.0.0: 1450 | version "2.0.0" 1451 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 1452 | 1453 | supports-color@^5.3.0: 1454 | version "5.5.0" 1455 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1456 | dependencies: 1457 | has-flag "^3.0.0" 1458 | 1459 | symbol-observable@1.0.1: 1460 | version "1.0.1" 1461 | resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" 1462 | 1463 | table@^4.0.3: 1464 | version "4.0.3" 1465 | resolved "https://registry.yarnpkg.com/table/-/table-4.0.3.tgz#00b5e2b602f1794b9acaf9ca908a76386a7813bc" 1466 | dependencies: 1467 | ajv "^6.0.1" 1468 | ajv-keywords "^3.0.0" 1469 | chalk "^2.1.0" 1470 | lodash "^4.17.4" 1471 | slice-ansi "1.0.0" 1472 | string-width "^2.1.1" 1473 | 1474 | text-table@^0.2.0: 1475 | version "0.2.0" 1476 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1477 | 1478 | through@^2.3.6: 1479 | version "2.3.8" 1480 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 1481 | 1482 | tmp@^0.0.33: 1483 | version "0.0.33" 1484 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 1485 | dependencies: 1486 | os-tmpdir "~1.0.2" 1487 | 1488 | to-fast-properties@^2.0.0: 1489 | version "2.0.0" 1490 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 1491 | 1492 | trim-right@^1.0.1: 1493 | version "1.0.1" 1494 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" 1495 | 1496 | type-check@~0.3.2: 1497 | version "0.3.2" 1498 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 1499 | dependencies: 1500 | prelude-ls "~1.1.2" 1501 | 1502 | uniq@^1.0.1: 1503 | version "1.0.1" 1504 | resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" 1505 | 1506 | uri-js@^4.2.2: 1507 | version "4.2.2" 1508 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 1509 | dependencies: 1510 | punycode "^2.1.0" 1511 | 1512 | validate-npm-package-license@^3.0.1: 1513 | version "3.0.4" 1514 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 1515 | dependencies: 1516 | spdx-correct "^3.0.0" 1517 | spdx-expression-parse "^3.0.0" 1518 | 1519 | which@^1.2.9: 1520 | version "1.3.1" 1521 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 1522 | dependencies: 1523 | isexe "^2.0.0" 1524 | 1525 | wordwrap@~1.0.0: 1526 | version "1.0.0" 1527 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 1528 | 1529 | wrappy@1: 1530 | version "1.0.2" 1531 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1532 | 1533 | write@^0.2.1: 1534 | version "0.2.1" 1535 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" 1536 | dependencies: 1537 | mkdirp "^0.5.1" 1538 | 1539 | xtend@^4.0.1: 1540 | version "4.0.1" 1541 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 1542 | 1543 | yallist@^2.1.2: 1544 | version "2.1.2" 1545 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" 1546 | --------------------------------------------------------------------------------