├── .gitignore
├── LICENSE
├── README.md
├── index.d.ts
├── index.js
├── package.json
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Omar Khaled
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # react-native-photo-upload
2 |
3 | 
4 |
5 | This component handles all the hassle in dealing with photos in react native, it's built on top of `react-native-image-picker`, `react-native-image-resizer` and `react-native-fs`
6 | it takes an image component and upon click, you get the image picker prompt, get the base64 string of the image and the image source changes to whatever image was picked.
7 |
8 | ## Installing
9 |
10 | npm or yarn install
11 |
12 | ```
13 | npm install react-native-photo-upload --save
14 | ```
15 | or
16 | ```
17 | yarn add react-native-photo-upload
18 | ```
19 | ## Automatic Installation
20 |
21 | link `react-native-image-picker`, `react-native-image-resizer` and `react-native-fs` which the component depends on
22 | ```
23 | react-native link react-native-image-picker
24 | react-native link react-native-image-resizer
25 | react-native link react-native-fs
26 | ```
27 | #### The following steps are required by `react-native-image-picker` for both Android and IOS even with automatic linking
28 |
29 | ### Android
30 |
31 | * Update the android build tools version to `2.2.+` in `android/build.gradle` (required step by `react-native-image-picker):
32 | ```gradle
33 | buildscript {
34 | ...
35 | dependencies {
36 | classpath 'com.android.tools.build:gradle:2.2.+' // <- USE 2.2.+ version
37 | }
38 | ...
39 | }
40 | ...
41 | ```
42 |
43 | * Update the gradle version to `2.14.1` in `android/gradle/wrapper/gradle-wrapper.properties`:
44 | ```
45 | ...
46 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
47 | ```
48 |
49 | * Add the required permissions in `AndroidManifest.xml`:
50 | ```xml
51 |
52 |
53 | ```
54 |
55 | ### IOS
56 | For iOS 10+, Add the `NSPhotoLibraryUsageDescription`, `NSCameraUsageDescription`, and `NSMicrophoneUsageDescription` (if allowing video) keys to your `Info.plist` with strings describing why your app needs these permissions. **Note: You will get a SIGABRT crash if you don't complete this step**
57 | ```
58 |
59 |
60 | ...
61 | NSPhotoLibraryUsageDescription
62 | YOUR_REASON_FOR_USING_USER_PHOTOS_HERE
63 | NSCameraUsageDescription
64 | YOUR_REASON_FOR_USING_USER_CAMERA_HERE
65 |
66 |
67 | ```
68 |
69 | ## Manual Installation
70 |
71 | check the docs of each library on how to link manually.
72 |
73 | * [react-native-image-picker](https://github.com/react-community/react-native-image-picker)
74 | * [react-native-image-resizer](https://github.com/bamlab/react-native-image-resizer)
75 | * [react-native-fs](https://github.com/itinance/react-native-fs)
76 |
77 | ## Usage
78 |
79 | Wrap your default image inside the PhotoUpload component, the component wraps the image with TouchableOpacity, on press it will trigger the image picker prompt. after selecting a new image from the picker, the image source will get replaced with the new image base64 string as uri
80 |
81 | ```
82 |
83 |
88 |
89 | ```
90 |
91 | ## Example
92 |
93 | ```
94 | import { Image } from 'react-native'
95 | import PhotoUpload from 'react-native-photo-upload'
96 |
97 | {
99 | if (avatar) {
100 | console.log('Image base64 string: ', avatar)
101 | }
102 | }}
103 | >
104 |
116 |
117 | ```
118 |
119 | ## Props
120 |
121 | Prop | Type | Description
122 | -----|------|------------
123 | containerStyle | Object | Style object for the image container
124 | photoPickerTitle | String | Title for the image picker prompt, default is 'Select Photo'
125 | maxHeight | Number | the resized image max height, maintains aspect ratio, default is 600
126 | maxWidth | Number | the resized image max width, maintains aspect ratio default is 600
127 | format | String | The format desired of the resized image, 'JPEG' or 'PNG' default is 'JPEG'
128 | quality | Number | The quality of the resized image indicated by a number between 1 and 100, default is 100
129 | onPhotoSelect | Function | function which takes the base64 string of the new image as parameter
130 | onError | Function | fires if any error occur with response
131 | onTapCustomButton | Function | fires on tap custom button
132 | onStart | Function | fires when user starts (useful for loading, etc)
133 | onCancel | Function | fires when user cancel
134 | onResponse | Function | fires on response exists
135 | onRender | Function | fires after render
136 | onResizedImageUri | Function | fires when image resized is ready
137 | imagePickerProps | Object | Other props for react-native-image-picker
138 |
139 |
--------------------------------------------------------------------------------
/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module "react-native-photo-upload" {
2 | import { StyleProp, ViewStyle } from "react-native";
3 |
4 | interface ImagePickerResponse {
5 | customButton: string;
6 | didCancel: boolean;
7 | error: string;
8 | data: string;
9 | uri: string;
10 | origURL?: string;
11 | isVertical: boolean;
12 | width: number;
13 | height: number;
14 | fileSize: number;
15 | type?: string;
16 | fileName?: string;
17 | path?: string;
18 | latitude?: number;
19 | longitude?: number;
20 | timestamp?: string;
21 | }
22 |
23 | interface ImageResizerResponse {
24 | path: string;
25 | uri: string;
26 | size?: number;
27 | name?: string;
28 | }
29 |
30 | interface PhotoUploadProps {
31 | /** Style object for the image container */
32 | containerStyle?: StyleProp;
33 | /** Title for the image picker prompt, default is 'Select Photo' */
34 | photoPickerTitle?: string;
35 | /** the resized image height, default is 300 */
36 | height?: number;
37 | /** the resized image width, default is 300 */
38 | width?: number;
39 | /** The format desired of the resized image, 'JPEG' or 'PNG' default is 'JPEG' */
40 | format?: "JPEG" | "PNG";
41 | /** The quality of the resized image indicated by a number between 1 and 100, default is 80 */
42 | quality?: number;
43 | /** function which takes the base64 string of the new image as parameter */
44 | onPhotoSelect?: (base64: string) => void;
45 | /** fires if any error occur with response */
46 | onError?: (err: Error) => void;
47 | /** fires on tap custom button */
48 | onTapCustomButton?: (customButton: string) => void;
49 | /** fires when user starts (useful for loading, etc) */
50 | onStart?: () => void;
51 | /** fires when user cancel */
52 | onCancel?: (reason: string) => void;
53 | /** fires on response exists */
54 | onResponse?: (response: ImagePickerResponse) => void;
55 | /** fires after render */
56 | onRender?: () => void;
57 | /** fires when image resized is ready */
58 | onResizedImageUri?: (response: ImageResizerResponse) => void;
59 | /** react-native-image-picker props */
60 | imagePickerProps?: object;
61 |
62 | }
63 |
64 | export default class PhotoUpload extends React.Component {}
65 | }
66 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import PropTypes from 'prop-types'
3 | import {
4 | View,
5 | Image,
6 | StyleSheet,
7 | TouchableOpacity,
8 | Platform
9 | } from 'react-native'
10 | import ImagePicker from 'react-native-image-picker'
11 | import ImageResizer from 'react-native-image-resizer'
12 | import RNFS from 'react-native-fs'
13 |
14 | export default class PhotoUpload extends React.Component {
15 | static propTypes = {
16 | containerStyle: PropTypes.object,
17 | photoPickerTitle: PropTypes.string,
18 | maxHeight: PropTypes.number,
19 | maxWidth: PropTypes.number,
20 | format: PropTypes.string,
21 | quality: PropTypes.number,
22 | onPhotoSelect: PropTypes.func, // returns the base64 string of uploaded photo
23 | onError: PropTypes.func, // if any error occur with response
24 | onTapCustomButton: PropTypes.func, // on tap custom button
25 | onStart: PropTypes.func, // when user starts (useful for loading, etc)
26 | onCancel: PropTypes.func, // when user cancel
27 | onResponse: PropTypes.func, // on response exists!
28 | onRender: PropTypes.func, // after render
29 | onResizedImageUri: PropTypes.func, // when image resized is ready
30 | imagePickerProps: PropTypes.object // react-native-image-picker props
31 | }
32 |
33 | state = {
34 | maxHeight: this.props.height || 600,
35 | maxWidth: this.props.width || 600,
36 | format: this.props.format || 'JPEG',
37 | quality: this.props.quality || 100,
38 | buttonDisabled: false
39 | }
40 |
41 | options = {
42 | title: this.props.photoPickerTitle || 'Select Photo',
43 | storageOptions: {
44 | skipBackup: true,
45 | path: 'images'
46 | },
47 | ...this.props.imagePickerProps
48 | }
49 |
50 | openImagePicker = () => {
51 | this.setState({buttonDisabled: true})
52 | if (this.props.onStart) this.props.onStart()
53 |
54 | // get image from image picker
55 | ImagePicker.showImagePicker(this.options, async response => {
56 | this.setState({buttonDisabled: false})
57 |
58 | let rotation = 0
59 | const {originalRotation} = response
60 |
61 |
62 | if (this.props.onResponse) this.props.onResponse(response)
63 |
64 | if (response.didCancel) {
65 | console.log('User cancelled image picker')
66 | if (this.props.onCancel) this.props.onCancel('User cancelled image picker')
67 | return
68 | } else if (response.error) {
69 | console.log('ImagePicker Error: ', response.error)
70 | if (this.props.onError) this.props.onError(response.error)
71 | return
72 | } else if (response.customButton) {
73 | console.log('User tapped custom button: ', response.customButton)
74 | if (this.props.onTapCustomButton) this.props.onTapCustomButton(response.customButton)
75 | return
76 | }
77 |
78 | let { maxHeight, maxWidth, quality, format } = this.state
79 |
80 | //Determining rotation param
81 | if ( originalRotation === 90) {
82 | rotation = 90
83 | } else if (originalRotation === 180) {
84 | //For a few images rotation is 180.
85 | rotation = -180
86 | } else if ( originalRotation === 270 ) {
87 | //When taking images with the front camera (selfie), the rotation is 270.
88 | rotation = -90
89 | }
90 | // resize image
91 | const resizedImageUri = await ImageResizer.createResizedImage(
92 | `data:image/jpeg;base64,${response.data}`,
93 | maxHeight,
94 | maxWidth,
95 | format,
96 | quality,
97 | rotation
98 | )
99 |
100 | if (this.props.onResizedImageUri) this.props.onResizedImageUri(resizedImageUri)
101 |
102 | const filePath = Platform.OS === 'android' && resizedImageUri.uri.replace
103 | ? resizedImageUri.uri.replace('file:/data', '/data')
104 | : resizedImageUri.uri
105 |
106 | // convert image back to base64 string
107 | const photoData = await RNFS.readFile(filePath, 'base64')
108 | let source = { uri: resizedImageUri.uri }
109 | this.setState({
110 | avatarSource: source
111 | })
112 |
113 | // handle photo in props functions as data string
114 | if (this.props.onPhotoSelect) this.props.onPhotoSelect(photoData)
115 | })
116 | }
117 |
118 | renderChildren = props => {
119 | return React.Children.map(props.children, child => {
120 | if (child && child.type === Image && this.state.avatarSource) {
121 | return React.cloneElement(child, {
122 | source: this.state.avatarSource
123 | })
124 | } else return child
125 | })
126 | }
127 |
128 | componentDidUpdate() {
129 | if (this.props.onAfterRender) this.props.onAfterRender(this.state)
130 | }
131 |
132 | render() {
133 | return (
134 |
135 |
139 | {this.renderChildren(this.props)}
140 |
141 |
142 | )
143 | }
144 | }
145 |
146 | const styles = StyleSheet.create({
147 | container: {
148 | flex: 1,
149 | justifyContent: 'center',
150 | alignItems: 'center'
151 | }
152 | })
153 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react-native-photo-upload",
3 | "version": "1.3.0",
4 | "description": "Cross platform photo upload component for react native",
5 | "main": "index.js",
6 | "repository": {
7 | "type": "git",
8 | "url": "git+https://github.com/malsapp/react-native-photo-upload.git"
9 | },
10 | "scripts": {
11 | "test": "echo \"Error: no test specified\" && exit 1"
12 | },
13 | "dependencies": {
14 | "prop-types": "^15.5.10",
15 | "react-native-fs": "^2.5.1",
16 | "react-native-image-picker": "^0.26.7",
17 | "react-native-image-resizer": "^1.0.0"
18 | },
19 | "devDependencies": {
20 | "standard": "^10.0.2"
21 | },
22 | "peerDependencies": {
23 | "react": ">15.0",
24 | "react-native": ">0.27"
25 | },
26 | "keywords": [
27 | "photo",
28 | "react",
29 | "react-native",
30 | "resizer",
31 | "image",
32 | "picker",
33 | "base64",
34 | "ios",
35 | "android"
36 | ],
37 | "author": "Omar Khaled ",
38 | "license": "MIT"
39 | }
40 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | acorn-jsx@^3.0.0:
6 | version "3.0.1"
7 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b"
8 | dependencies:
9 | acorn "^3.0.4"
10 |
11 | acorn@^3.0.4:
12 | version "3.3.0"
13 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
14 |
15 | acorn@^5.0.1:
16 | version "5.0.3"
17 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.0.3.tgz#c460df08491463f028ccb82eab3730bf01087b3d"
18 |
19 | ajv-keywords@^1.0.0:
20 | version "1.5.1"
21 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c"
22 |
23 | ajv@^4.7.0:
24 | version "4.11.8"
25 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
26 | dependencies:
27 | co "^4.6.0"
28 | json-stable-stringify "^1.0.1"
29 |
30 | ansi-escapes@^1.1.0:
31 | version "1.4.0"
32 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
33 |
34 | ansi-regex@^2.0.0:
35 | version "2.1.1"
36 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
37 |
38 | ansi-styles@^2.2.1:
39 | version "2.2.1"
40 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
41 |
42 | argparse@^1.0.7:
43 | version "1.0.9"
44 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
45 | dependencies:
46 | sprintf-js "~1.0.2"
47 |
48 | array-union@^1.0.1:
49 | version "1.0.2"
50 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
51 | dependencies:
52 | array-uniq "^1.0.1"
53 |
54 | array-uniq@^1.0.1:
55 | version "1.0.3"
56 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
57 |
58 | array.prototype.find@^2.0.1:
59 | version "2.0.4"
60 | resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90"
61 | dependencies:
62 | define-properties "^1.1.2"
63 | es-abstract "^1.7.0"
64 |
65 | arrify@^1.0.0:
66 | version "1.0.1"
67 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
68 |
69 | asap@~2.0.3:
70 | version "2.0.5"
71 | resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f"
72 |
73 | babel-code-frame@^6.16.0:
74 | version "6.22.0"
75 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4"
76 | dependencies:
77 | chalk "^1.1.0"
78 | esutils "^2.0.2"
79 | js-tokens "^3.0.0"
80 |
81 | balanced-match@^0.4.1:
82 | version "0.4.2"
83 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
84 |
85 | base-64@^0.1.0:
86 | version "0.1.0"
87 | resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb"
88 |
89 | brace-expansion@^1.1.7:
90 | version "1.1.7"
91 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59"
92 | dependencies:
93 | balanced-match "^0.4.1"
94 | concat-map "0.0.1"
95 |
96 | builtin-modules@^1.1.1:
97 | version "1.1.1"
98 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
99 |
100 | caller-path@^0.1.0:
101 | version "0.1.0"
102 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
103 | dependencies:
104 | callsites "^0.2.0"
105 |
106 | callsites@^0.2.0:
107 | version "0.2.0"
108 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
109 |
110 | chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3:
111 | version "1.1.3"
112 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
113 | dependencies:
114 | ansi-styles "^2.2.1"
115 | escape-string-regexp "^1.0.2"
116 | has-ansi "^2.0.0"
117 | strip-ansi "^3.0.0"
118 | supports-color "^2.0.0"
119 |
120 | circular-json@^0.3.1:
121 | version "0.3.1"
122 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d"
123 |
124 | cli-cursor@^1.0.1:
125 | version "1.0.2"
126 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
127 | dependencies:
128 | restore-cursor "^1.0.1"
129 |
130 | cli-width@^2.0.0:
131 | version "2.1.0"
132 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a"
133 |
134 | co@^4.6.0:
135 | version "4.6.0"
136 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
137 |
138 | code-point-at@^1.0.0:
139 | version "1.1.0"
140 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
141 |
142 | concat-map@0.0.1:
143 | version "0.0.1"
144 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
145 |
146 | concat-stream@^1.5.2:
147 | version "1.6.0"
148 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
149 | dependencies:
150 | inherits "^2.0.3"
151 | readable-stream "^2.2.2"
152 | typedarray "^0.0.6"
153 |
154 | contains-path@^0.1.0:
155 | version "0.1.0"
156 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
157 |
158 | core-js@^1.0.0:
159 | version "1.2.7"
160 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
161 |
162 | core-util-is@~1.0.0:
163 | version "1.0.2"
164 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
165 |
166 | d@1:
167 | version "1.0.0"
168 | resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f"
169 | dependencies:
170 | es5-ext "^0.10.9"
171 |
172 | debug-log@^1.0.0:
173 | version "1.0.1"
174 | resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f"
175 |
176 | debug@2.2.0:
177 | version "2.2.0"
178 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
179 | dependencies:
180 | ms "0.7.1"
181 |
182 | debug@^2.1.1, debug@^2.2.0:
183 | version "2.6.8"
184 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
185 | dependencies:
186 | ms "2.0.0"
187 |
188 | deep-is@~0.1.3:
189 | version "0.1.3"
190 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
191 |
192 | define-properties@^1.1.2:
193 | version "1.1.2"
194 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
195 | dependencies:
196 | foreach "^2.0.5"
197 | object-keys "^1.0.8"
198 |
199 | deglob@^2.1.0:
200 | version "2.1.0"
201 | resolved "https://registry.yarnpkg.com/deglob/-/deglob-2.1.0.tgz#4d44abe16ef32c779b4972bd141a80325029a14a"
202 | dependencies:
203 | find-root "^1.0.0"
204 | glob "^7.0.5"
205 | ignore "^3.0.9"
206 | pkg-config "^1.1.0"
207 | run-parallel "^1.1.2"
208 | uniq "^1.0.1"
209 |
210 | del@^2.0.2:
211 | version "2.2.2"
212 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
213 | dependencies:
214 | globby "^5.0.0"
215 | is-path-cwd "^1.0.0"
216 | is-path-in-cwd "^1.0.0"
217 | object-assign "^4.0.1"
218 | pify "^2.0.0"
219 | pinkie-promise "^2.0.0"
220 | rimraf "^2.2.8"
221 |
222 | doctrine@1.5.0, doctrine@^1.2.2:
223 | version "1.5.0"
224 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
225 | dependencies:
226 | esutils "^2.0.2"
227 | isarray "^1.0.0"
228 |
229 | doctrine@^2.0.0:
230 | version "2.0.0"
231 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63"
232 | dependencies:
233 | esutils "^2.0.2"
234 | isarray "^1.0.0"
235 |
236 | encoding@^0.1.11:
237 | version "0.1.12"
238 | resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
239 | dependencies:
240 | iconv-lite "~0.4.13"
241 |
242 | error-ex@^1.2.0:
243 | version "1.3.1"
244 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
245 | dependencies:
246 | is-arrayish "^0.2.1"
247 |
248 | es-abstract@^1.7.0:
249 | version "1.7.0"
250 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c"
251 | dependencies:
252 | es-to-primitive "^1.1.1"
253 | function-bind "^1.1.0"
254 | is-callable "^1.1.3"
255 | is-regex "^1.0.3"
256 |
257 | es-to-primitive@^1.1.1:
258 | version "1.1.1"
259 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
260 | dependencies:
261 | is-callable "^1.1.1"
262 | is-date-object "^1.0.1"
263 | is-symbol "^1.0.1"
264 |
265 | es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14:
266 | version "0.10.22"
267 | resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.22.tgz#1876c51f990769c112c781ea3ebe89f84fd39071"
268 | dependencies:
269 | es6-iterator "2"
270 | es6-symbol "~3.1"
271 |
272 | es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1:
273 | version "2.0.1"
274 | resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512"
275 | dependencies:
276 | d "1"
277 | es5-ext "^0.10.14"
278 | es6-symbol "^3.1"
279 |
280 | es6-map@^0.1.3:
281 | version "0.1.5"
282 | resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0"
283 | dependencies:
284 | d "1"
285 | es5-ext "~0.10.14"
286 | es6-iterator "~2.0.1"
287 | es6-set "~0.1.5"
288 | es6-symbol "~3.1.1"
289 | event-emitter "~0.3.5"
290 |
291 | es6-set@~0.1.5:
292 | version "0.1.5"
293 | resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1"
294 | dependencies:
295 | d "1"
296 | es5-ext "~0.10.14"
297 | es6-iterator "~2.0.1"
298 | es6-symbol "3.1.1"
299 | event-emitter "~0.3.5"
300 |
301 | es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1:
302 | version "3.1.1"
303 | resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
304 | dependencies:
305 | d "1"
306 | es5-ext "~0.10.14"
307 |
308 | es6-weak-map@^2.0.1:
309 | version "2.0.2"
310 | resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f"
311 | dependencies:
312 | d "1"
313 | es5-ext "^0.10.14"
314 | es6-iterator "^2.0.1"
315 | es6-symbol "^3.1.1"
316 |
317 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
318 | version "1.0.5"
319 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
320 |
321 | escope@^3.6.0:
322 | version "3.6.0"
323 | resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3"
324 | dependencies:
325 | es6-map "^0.1.3"
326 | es6-weak-map "^2.0.1"
327 | esrecurse "^4.1.0"
328 | estraverse "^4.1.1"
329 |
330 | eslint-config-standard-jsx@4.0.1:
331 | version "4.0.1"
332 | resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-4.0.1.tgz#cd4e463d0268e2d9e707f61f42f73f5b3333c642"
333 |
334 | eslint-config-standard@10.2.1:
335 | version "10.2.1"
336 | resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591"
337 |
338 | eslint-import-resolver-node@^0.2.0:
339 | version "0.2.3"
340 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz#5add8106e8c928db2cba232bcd9efa846e3da16c"
341 | dependencies:
342 | debug "^2.2.0"
343 | object-assign "^4.0.1"
344 | resolve "^1.1.6"
345 |
346 | eslint-module-utils@^2.0.0:
347 | version "2.0.0"
348 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.0.0.tgz#a6f8c21d901358759cdc35dbac1982ae1ee58bce"
349 | dependencies:
350 | debug "2.2.0"
351 | pkg-dir "^1.0.0"
352 |
353 | eslint-plugin-import@~2.2.0:
354 | version "2.2.0"
355 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz#72ba306fad305d67c4816348a4699a4229ac8b4e"
356 | dependencies:
357 | builtin-modules "^1.1.1"
358 | contains-path "^0.1.0"
359 | debug "^2.2.0"
360 | doctrine "1.5.0"
361 | eslint-import-resolver-node "^0.2.0"
362 | eslint-module-utils "^2.0.0"
363 | has "^1.0.1"
364 | lodash.cond "^4.3.0"
365 | minimatch "^3.0.3"
366 | pkg-up "^1.0.0"
367 |
368 | eslint-plugin-node@~4.2.2:
369 | version "4.2.2"
370 | resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-4.2.2.tgz#82959ca9aed79fcbd28bb1b188d05cac04fb3363"
371 | dependencies:
372 | ignore "^3.0.11"
373 | minimatch "^3.0.2"
374 | object-assign "^4.0.1"
375 | resolve "^1.1.7"
376 | semver "5.3.0"
377 |
378 | eslint-plugin-promise@~3.5.0:
379 | version "3.5.0"
380 | resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca"
381 |
382 | eslint-plugin-react@~6.10.0:
383 | version "6.10.3"
384 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78"
385 | dependencies:
386 | array.prototype.find "^2.0.1"
387 | doctrine "^1.2.2"
388 | has "^1.0.1"
389 | jsx-ast-utils "^1.3.4"
390 | object.assign "^4.0.4"
391 |
392 | eslint-plugin-standard@~3.0.1:
393 | version "3.0.1"
394 | resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2"
395 |
396 | eslint@~3.19.0:
397 | version "3.19.0"
398 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc"
399 | dependencies:
400 | babel-code-frame "^6.16.0"
401 | chalk "^1.1.3"
402 | concat-stream "^1.5.2"
403 | debug "^2.1.1"
404 | doctrine "^2.0.0"
405 | escope "^3.6.0"
406 | espree "^3.4.0"
407 | esquery "^1.0.0"
408 | estraverse "^4.2.0"
409 | esutils "^2.0.2"
410 | file-entry-cache "^2.0.0"
411 | glob "^7.0.3"
412 | globals "^9.14.0"
413 | ignore "^3.2.0"
414 | imurmurhash "^0.1.4"
415 | inquirer "^0.12.0"
416 | is-my-json-valid "^2.10.0"
417 | is-resolvable "^1.0.0"
418 | js-yaml "^3.5.1"
419 | json-stable-stringify "^1.0.0"
420 | levn "^0.3.0"
421 | lodash "^4.0.0"
422 | mkdirp "^0.5.0"
423 | natural-compare "^1.4.0"
424 | optionator "^0.8.2"
425 | path-is-inside "^1.0.1"
426 | pluralize "^1.2.1"
427 | progress "^1.1.8"
428 | require-uncached "^1.0.2"
429 | shelljs "^0.7.5"
430 | strip-bom "^3.0.0"
431 | strip-json-comments "~2.0.1"
432 | table "^3.7.8"
433 | text-table "~0.2.0"
434 | user-home "^2.0.0"
435 |
436 | espree@^3.4.0:
437 | version "3.4.3"
438 | resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.3.tgz#2910b5ccd49ce893c2ffffaab4fd8b3a31b82374"
439 | dependencies:
440 | acorn "^5.0.1"
441 | acorn-jsx "^3.0.0"
442 |
443 | esprima@^3.1.1:
444 | version "3.1.3"
445 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
446 |
447 | esquery@^1.0.0:
448 | version "1.0.0"
449 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa"
450 | dependencies:
451 | estraverse "^4.0.0"
452 |
453 | esrecurse@^4.1.0:
454 | version "4.1.0"
455 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220"
456 | dependencies:
457 | estraverse "~4.1.0"
458 | object-assign "^4.0.1"
459 |
460 | estraverse@^4.0.0, estraverse@^4.1.1, estraverse@^4.2.0:
461 | version "4.2.0"
462 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
463 |
464 | estraverse@~4.1.0:
465 | version "4.1.1"
466 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2"
467 |
468 | esutils@^2.0.2:
469 | version "2.0.2"
470 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
471 |
472 | event-emitter@~0.3.5:
473 | version "0.3.5"
474 | resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39"
475 | dependencies:
476 | d "1"
477 | es5-ext "~0.10.14"
478 |
479 | exit-hook@^1.0.0:
480 | version "1.1.1"
481 | resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
482 |
483 | fast-levenshtein@~2.0.4:
484 | version "2.0.6"
485 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
486 |
487 | fbjs@^0.8.9:
488 | version "0.8.12"
489 | resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.12.tgz#10b5d92f76d45575fd63a217d4ea02bea2f8ed04"
490 | dependencies:
491 | core-js "^1.0.0"
492 | isomorphic-fetch "^2.1.1"
493 | loose-envify "^1.0.0"
494 | object-assign "^4.1.0"
495 | promise "^7.1.1"
496 | setimmediate "^1.0.5"
497 | ua-parser-js "^0.7.9"
498 |
499 | figures@^1.3.5:
500 | version "1.7.0"
501 | resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
502 | dependencies:
503 | escape-string-regexp "^1.0.5"
504 | object-assign "^4.1.0"
505 |
506 | file-entry-cache@^2.0.0:
507 | version "2.0.0"
508 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
509 | dependencies:
510 | flat-cache "^1.2.1"
511 | object-assign "^4.0.1"
512 |
513 | find-root@^1.0.0:
514 | version "1.0.0"
515 | resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.0.0.tgz#962ff211aab25c6520feeeb8d6287f8f6e95807a"
516 |
517 | find-up@^1.0.0:
518 | version "1.1.2"
519 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
520 | dependencies:
521 | path-exists "^2.0.0"
522 | pinkie-promise "^2.0.0"
523 |
524 | find-up@^2.0.0:
525 | version "2.1.0"
526 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
527 | dependencies:
528 | locate-path "^2.0.0"
529 |
530 | flat-cache@^1.2.1:
531 | version "1.2.2"
532 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96"
533 | dependencies:
534 | circular-json "^0.3.1"
535 | del "^2.0.2"
536 | graceful-fs "^4.1.2"
537 | write "^0.2.1"
538 |
539 | foreach@^2.0.5:
540 | version "2.0.5"
541 | resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
542 |
543 | fs.realpath@^1.0.0:
544 | version "1.0.0"
545 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
546 |
547 | function-bind@^1.0.2, function-bind@^1.1.0:
548 | version "1.1.0"
549 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
550 |
551 | generate-function@^2.0.0:
552 | version "2.0.0"
553 | resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
554 |
555 | generate-object-property@^1.1.0:
556 | version "1.2.0"
557 | resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0"
558 | dependencies:
559 | is-property "^1.0.0"
560 |
561 | get-stdin@^5.0.1:
562 | version "5.0.1"
563 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398"
564 |
565 | glob@^7.0.0, glob@^7.0.3, glob@^7.0.5:
566 | version "7.1.2"
567 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
568 | dependencies:
569 | fs.realpath "^1.0.0"
570 | inflight "^1.0.4"
571 | inherits "2"
572 | minimatch "^3.0.4"
573 | once "^1.3.0"
574 | path-is-absolute "^1.0.0"
575 |
576 | globals@^9.14.0:
577 | version "9.17.0"
578 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286"
579 |
580 | globby@^5.0.0:
581 | version "5.0.0"
582 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d"
583 | dependencies:
584 | array-union "^1.0.1"
585 | arrify "^1.0.0"
586 | glob "^7.0.3"
587 | object-assign "^4.0.1"
588 | pify "^2.0.0"
589 | pinkie-promise "^2.0.0"
590 |
591 | graceful-fs@^4.1.2:
592 | version "4.1.11"
593 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
594 |
595 | has-ansi@^2.0.0:
596 | version "2.0.0"
597 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
598 | dependencies:
599 | ansi-regex "^2.0.0"
600 |
601 | has@^1.0.1:
602 | version "1.0.1"
603 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
604 | dependencies:
605 | function-bind "^1.0.2"
606 |
607 | iconv-lite@~0.4.13:
608 | version "0.4.17"
609 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.17.tgz#4fdaa3b38acbc2c031b045d0edcdfe1ecab18c8d"
610 |
611 | ignore@^3.0.11, ignore@^3.0.9, ignore@^3.2.0:
612 | version "3.3.3"
613 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d"
614 |
615 | imurmurhash@^0.1.4:
616 | version "0.1.4"
617 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
618 |
619 | inflight@^1.0.4:
620 | version "1.0.6"
621 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
622 | dependencies:
623 | once "^1.3.0"
624 | wrappy "1"
625 |
626 | inherits@2, inherits@^2.0.3, inherits@~2.0.1:
627 | version "2.0.3"
628 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
629 |
630 | inquirer@^0.12.0:
631 | version "0.12.0"
632 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e"
633 | dependencies:
634 | ansi-escapes "^1.1.0"
635 | ansi-regex "^2.0.0"
636 | chalk "^1.0.0"
637 | cli-cursor "^1.0.1"
638 | cli-width "^2.0.0"
639 | figures "^1.3.5"
640 | lodash "^4.3.0"
641 | readline2 "^1.0.1"
642 | run-async "^0.1.0"
643 | rx-lite "^3.1.2"
644 | string-width "^1.0.1"
645 | strip-ansi "^3.0.0"
646 | through "^2.3.6"
647 |
648 | interpret@^1.0.0:
649 | version "1.0.3"
650 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90"
651 |
652 | is-arrayish@^0.2.1:
653 | version "0.2.1"
654 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
655 |
656 | is-callable@^1.1.1, is-callable@^1.1.3:
657 | version "1.1.3"
658 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
659 |
660 | is-date-object@^1.0.1:
661 | version "1.0.1"
662 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
663 |
664 | is-fullwidth-code-point@^1.0.0:
665 | version "1.0.0"
666 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
667 | dependencies:
668 | number-is-nan "^1.0.0"
669 |
670 | is-fullwidth-code-point@^2.0.0:
671 | version "2.0.0"
672 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
673 |
674 | is-my-json-valid@^2.10.0:
675 | version "2.16.0"
676 | resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693"
677 | dependencies:
678 | generate-function "^2.0.0"
679 | generate-object-property "^1.1.0"
680 | jsonpointer "^4.0.0"
681 | xtend "^4.0.0"
682 |
683 | is-path-cwd@^1.0.0:
684 | version "1.0.0"
685 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
686 |
687 | is-path-in-cwd@^1.0.0:
688 | version "1.0.0"
689 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc"
690 | dependencies:
691 | is-path-inside "^1.0.0"
692 |
693 | is-path-inside@^1.0.0:
694 | version "1.0.0"
695 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f"
696 | dependencies:
697 | path-is-inside "^1.0.1"
698 |
699 | is-property@^1.0.0:
700 | version "1.0.2"
701 | resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
702 |
703 | is-regex@^1.0.3:
704 | version "1.0.4"
705 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
706 | dependencies:
707 | has "^1.0.1"
708 |
709 | is-resolvable@^1.0.0:
710 | version "1.0.0"
711 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62"
712 | dependencies:
713 | tryit "^1.0.1"
714 |
715 | is-stream@^1.0.1:
716 | version "1.1.0"
717 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
718 |
719 | is-symbol@^1.0.1:
720 | version "1.0.1"
721 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
722 |
723 | isarray@^1.0.0, isarray@~1.0.0:
724 | version "1.0.0"
725 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
726 |
727 | isomorphic-fetch@^2.1.1:
728 | version "2.2.1"
729 | resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
730 | dependencies:
731 | node-fetch "^1.0.1"
732 | whatwg-fetch ">=0.10.0"
733 |
734 | js-tokens@^3.0.0:
735 | version "3.0.1"
736 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
737 |
738 | js-yaml@^3.5.1:
739 | version "3.8.4"
740 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.4.tgz#520b4564f86573ba96662af85a8cafa7b4b5a6f6"
741 | dependencies:
742 | argparse "^1.0.7"
743 | esprima "^3.1.1"
744 |
745 | json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
746 | version "1.0.1"
747 | resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
748 | dependencies:
749 | jsonify "~0.0.0"
750 |
751 | jsonify@~0.0.0:
752 | version "0.0.0"
753 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
754 |
755 | jsonpointer@^4.0.0:
756 | version "4.0.1"
757 | resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
758 |
759 | jsx-ast-utils@^1.3.4:
760 | version "1.4.1"
761 | resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz#3867213e8dd79bf1e8f2300c0cfc1efb182c0df1"
762 |
763 | levn@^0.3.0, levn@~0.3.0:
764 | version "0.3.0"
765 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
766 | dependencies:
767 | prelude-ls "~1.1.2"
768 | type-check "~0.3.2"
769 |
770 | load-json-file@^2.0.0:
771 | version "2.0.0"
772 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
773 | dependencies:
774 | graceful-fs "^4.1.2"
775 | parse-json "^2.2.0"
776 | pify "^2.0.0"
777 | strip-bom "^3.0.0"
778 |
779 | locate-path@^2.0.0:
780 | version "2.0.0"
781 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
782 | dependencies:
783 | p-locate "^2.0.0"
784 | path-exists "^3.0.0"
785 |
786 | lodash.cond@^4.3.0:
787 | version "4.5.2"
788 | resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
789 |
790 | lodash@^4.0.0, lodash@^4.3.0:
791 | version "4.17.4"
792 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
793 |
794 | loose-envify@^1.0.0, loose-envify@^1.3.1:
795 | version "1.3.1"
796 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
797 | dependencies:
798 | js-tokens "^3.0.0"
799 |
800 | minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
801 | version "3.0.4"
802 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
803 | dependencies:
804 | brace-expansion "^1.1.7"
805 |
806 | minimist@0.0.8:
807 | version "0.0.8"
808 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
809 |
810 | minimist@^1.1.0:
811 | version "1.2.0"
812 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
813 |
814 | mkdirp@^0.5.0, mkdirp@^0.5.1:
815 | version "0.5.1"
816 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
817 | dependencies:
818 | minimist "0.0.8"
819 |
820 | ms@0.7.1:
821 | version "0.7.1"
822 | resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
823 |
824 | ms@2.0.0:
825 | version "2.0.0"
826 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
827 |
828 | mute-stream@0.0.5:
829 | version "0.0.5"
830 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
831 |
832 | natural-compare@^1.4.0:
833 | version "1.4.0"
834 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
835 |
836 | node-fetch@^1.0.1:
837 | version "1.7.0"
838 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.0.tgz#3ff6c56544f9b7fb00682338bb55ee6f54a8a0ef"
839 | dependencies:
840 | encoding "^0.1.11"
841 | is-stream "^1.0.1"
842 |
843 | number-is-nan@^1.0.0:
844 | version "1.0.1"
845 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
846 |
847 | object-assign@^4.0.1, object-assign@^4.1.0:
848 | version "4.1.1"
849 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
850 |
851 | object-keys@^1.0.10, object-keys@^1.0.8:
852 | version "1.0.11"
853 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
854 |
855 | object.assign@^4.0.4:
856 | version "4.0.4"
857 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc"
858 | dependencies:
859 | define-properties "^1.1.2"
860 | function-bind "^1.1.0"
861 | object-keys "^1.0.10"
862 |
863 | once@^1.3.0:
864 | version "1.4.0"
865 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
866 | dependencies:
867 | wrappy "1"
868 |
869 | onetime@^1.0.0:
870 | version "1.1.0"
871 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
872 |
873 | optionator@^0.8.2:
874 | version "0.8.2"
875 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
876 | dependencies:
877 | deep-is "~0.1.3"
878 | fast-levenshtein "~2.0.4"
879 | levn "~0.3.0"
880 | prelude-ls "~1.1.2"
881 | type-check "~0.3.2"
882 | wordwrap "~1.0.0"
883 |
884 | os-homedir@^1.0.0:
885 | version "1.0.2"
886 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
887 |
888 | p-limit@^1.1.0:
889 | version "1.1.0"
890 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc"
891 |
892 | p-locate@^2.0.0:
893 | version "2.0.0"
894 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
895 | dependencies:
896 | p-limit "^1.1.0"
897 |
898 | parse-json@^2.2.0:
899 | version "2.2.0"
900 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
901 | dependencies:
902 | error-ex "^1.2.0"
903 |
904 | path-exists@^2.0.0:
905 | version "2.1.0"
906 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
907 | dependencies:
908 | pinkie-promise "^2.0.0"
909 |
910 | path-exists@^3.0.0:
911 | version "3.0.0"
912 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
913 |
914 | path-is-absolute@^1.0.0:
915 | version "1.0.1"
916 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
917 |
918 | path-is-inside@^1.0.1:
919 | version "1.0.2"
920 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
921 |
922 | path-parse@^1.0.5:
923 | version "1.0.5"
924 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
925 |
926 | pify@^2.0.0:
927 | version "2.3.0"
928 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
929 |
930 | pinkie-promise@^2.0.0:
931 | version "2.0.1"
932 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
933 | dependencies:
934 | pinkie "^2.0.0"
935 |
936 | pinkie@^2.0.0:
937 | version "2.0.4"
938 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
939 |
940 | pkg-conf@^2.0.0:
941 | version "2.0.0"
942 | resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.0.0.tgz#071c87650403bccfb9c627f58751bfe47c067279"
943 | dependencies:
944 | find-up "^2.0.0"
945 | load-json-file "^2.0.0"
946 |
947 | pkg-config@^1.1.0:
948 | version "1.1.1"
949 | resolved "https://registry.yarnpkg.com/pkg-config/-/pkg-config-1.1.1.tgz#557ef22d73da3c8837107766c52eadabde298fe4"
950 | dependencies:
951 | debug-log "^1.0.0"
952 | find-root "^1.0.0"
953 | xtend "^4.0.1"
954 |
955 | pkg-dir@^1.0.0:
956 | version "1.0.0"
957 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
958 | dependencies:
959 | find-up "^1.0.0"
960 |
961 | pkg-up@^1.0.0:
962 | version "1.0.0"
963 | resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26"
964 | dependencies:
965 | find-up "^1.0.0"
966 |
967 | pluralize@^1.2.1:
968 | version "1.2.1"
969 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45"
970 |
971 | prelude-ls@~1.1.2:
972 | version "1.1.2"
973 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
974 |
975 | process-nextick-args@~1.0.6:
976 | version "1.0.7"
977 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
978 |
979 | progress@^1.1.8:
980 | version "1.1.8"
981 | resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
982 |
983 | promise@^7.1.1:
984 | version "7.1.1"
985 | resolved "https://registry.yarnpkg.com/promise/-/promise-7.1.1.tgz#489654c692616b8aa55b0724fa809bb7db49c5bf"
986 | dependencies:
987 | asap "~2.0.3"
988 |
989 | prop-types@^15.5.10:
990 | version "15.5.10"
991 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154"
992 | dependencies:
993 | fbjs "^0.8.9"
994 | loose-envify "^1.3.1"
995 |
996 | react-native-fs@^2.3.2:
997 | version "2.3.3"
998 | resolved "https://registry.yarnpkg.com/react-native-fs/-/react-native-fs-2.3.3.tgz#94c0d9699ec20405f30b79a69b6d8b96d2a4851b"
999 | dependencies:
1000 | base-64 "^0.1.0"
1001 | utf8 "^2.1.1"
1002 |
1003 | react-native-image-picker@^0.26.3:
1004 | version "0.26.3"
1005 | resolved "https://registry.yarnpkg.com/react-native-image-picker/-/react-native-image-picker-0.26.3.tgz#0ad2eede49501a7046d8046a73813696539c3dcd"
1006 |
1007 | react-native-image-resizer@^0.1.1:
1008 | version "0.1.1"
1009 | resolved "https://registry.yarnpkg.com/react-native-image-resizer/-/react-native-image-resizer-0.1.1.tgz#2abcac85d97e08854b2de716d62953bbae003c77"
1010 |
1011 | readable-stream@^2.2.2:
1012 | version "2.2.10"
1013 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.10.tgz#effe72bb7c884c0dd335e2379d526196d9d011ee"
1014 | dependencies:
1015 | core-util-is "~1.0.0"
1016 | inherits "~2.0.1"
1017 | isarray "~1.0.0"
1018 | process-nextick-args "~1.0.6"
1019 | safe-buffer "^5.0.1"
1020 | string_decoder "~1.0.0"
1021 | util-deprecate "~1.0.1"
1022 |
1023 | readline2@^1.0.1:
1024 | version "1.0.1"
1025 | resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35"
1026 | dependencies:
1027 | code-point-at "^1.0.0"
1028 | is-fullwidth-code-point "^1.0.0"
1029 | mute-stream "0.0.5"
1030 |
1031 | rechoir@^0.6.2:
1032 | version "0.6.2"
1033 | resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
1034 | dependencies:
1035 | resolve "^1.1.6"
1036 |
1037 | require-uncached@^1.0.2:
1038 | version "1.0.3"
1039 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
1040 | dependencies:
1041 | caller-path "^0.1.0"
1042 | resolve-from "^1.0.0"
1043 |
1044 | resolve-from@^1.0.0:
1045 | version "1.0.1"
1046 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
1047 |
1048 | resolve@^1.1.6, resolve@^1.1.7:
1049 | version "1.3.3"
1050 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5"
1051 | dependencies:
1052 | path-parse "^1.0.5"
1053 |
1054 | restore-cursor@^1.0.1:
1055 | version "1.0.1"
1056 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541"
1057 | dependencies:
1058 | exit-hook "^1.0.0"
1059 | onetime "^1.0.0"
1060 |
1061 | rimraf@^2.2.8:
1062 | version "2.6.1"
1063 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
1064 | dependencies:
1065 | glob "^7.0.5"
1066 |
1067 | run-async@^0.1.0:
1068 | version "0.1.0"
1069 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389"
1070 | dependencies:
1071 | once "^1.3.0"
1072 |
1073 | run-parallel@^1.1.2:
1074 | version "1.1.6"
1075 | resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.6.tgz#29003c9a2163e01e2d2dfc90575f2c6c1d61a039"
1076 |
1077 | rx-lite@^3.1.2:
1078 | version "3.1.2"
1079 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
1080 |
1081 | safe-buffer@^5.0.1:
1082 | version "5.1.0"
1083 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.0.tgz#fe4c8460397f9eaaaa58e73be46273408a45e223"
1084 |
1085 | semver@5.3.0:
1086 | version "5.3.0"
1087 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
1088 |
1089 | setimmediate@^1.0.5:
1090 | version "1.0.5"
1091 | resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
1092 |
1093 | shelljs@^0.7.5:
1094 | version "0.7.7"
1095 | resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.7.tgz#b2f5c77ef97148f4b4f6e22682e10bba8667cff1"
1096 | dependencies:
1097 | glob "^7.0.0"
1098 | interpret "^1.0.0"
1099 | rechoir "^0.6.2"
1100 |
1101 | slice-ansi@0.0.4:
1102 | version "0.0.4"
1103 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35"
1104 |
1105 | sprintf-js@~1.0.2:
1106 | version "1.0.3"
1107 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
1108 |
1109 | standard-engine@~7.0.0:
1110 | version "7.0.0"
1111 | resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-7.0.0.tgz#ebb77b9c8fc2c8165ffa353bd91ba0dff41af690"
1112 | dependencies:
1113 | deglob "^2.1.0"
1114 | get-stdin "^5.0.1"
1115 | minimist "^1.1.0"
1116 | pkg-conf "^2.0.0"
1117 |
1118 | standard@^10.0.2:
1119 | version "10.0.2"
1120 | resolved "https://registry.yarnpkg.com/standard/-/standard-10.0.2.tgz#974c1c53cc865b075a4b576e78441e1695daaf7b"
1121 | dependencies:
1122 | eslint "~3.19.0"
1123 | eslint-config-standard "10.2.1"
1124 | eslint-config-standard-jsx "4.0.1"
1125 | eslint-plugin-import "~2.2.0"
1126 | eslint-plugin-node "~4.2.2"
1127 | eslint-plugin-promise "~3.5.0"
1128 | eslint-plugin-react "~6.10.0"
1129 | eslint-plugin-standard "~3.0.1"
1130 | standard-engine "~7.0.0"
1131 |
1132 | string-width@^1.0.1:
1133 | version "1.0.2"
1134 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
1135 | dependencies:
1136 | code-point-at "^1.0.0"
1137 | is-fullwidth-code-point "^1.0.0"
1138 | strip-ansi "^3.0.0"
1139 |
1140 | string-width@^2.0.0:
1141 | version "2.0.0"
1142 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.0.0.tgz#635c5436cc72a6e0c387ceca278d4e2eec52687e"
1143 | dependencies:
1144 | is-fullwidth-code-point "^2.0.0"
1145 | strip-ansi "^3.0.0"
1146 |
1147 | string_decoder@~1.0.0:
1148 | version "1.0.1"
1149 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.1.tgz#62e200f039955a6810d8df0a33ffc0f013662d98"
1150 | dependencies:
1151 | safe-buffer "^5.0.1"
1152 |
1153 | strip-ansi@^3.0.0:
1154 | version "3.0.1"
1155 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1156 | dependencies:
1157 | ansi-regex "^2.0.0"
1158 |
1159 | strip-bom@^3.0.0:
1160 | version "3.0.0"
1161 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
1162 |
1163 | strip-json-comments@~2.0.1:
1164 | version "2.0.1"
1165 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
1166 |
1167 | supports-color@^2.0.0:
1168 | version "2.0.0"
1169 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
1170 |
1171 | table@^3.7.8:
1172 | version "3.8.3"
1173 | resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f"
1174 | dependencies:
1175 | ajv "^4.7.0"
1176 | ajv-keywords "^1.0.0"
1177 | chalk "^1.1.1"
1178 | lodash "^4.0.0"
1179 | slice-ansi "0.0.4"
1180 | string-width "^2.0.0"
1181 |
1182 | text-table@~0.2.0:
1183 | version "0.2.0"
1184 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
1185 |
1186 | through@^2.3.6:
1187 | version "2.3.8"
1188 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
1189 |
1190 | tryit@^1.0.1:
1191 | version "1.0.3"
1192 | resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
1193 |
1194 | type-check@~0.3.2:
1195 | version "0.3.2"
1196 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
1197 | dependencies:
1198 | prelude-ls "~1.1.2"
1199 |
1200 | typedarray@^0.0.6:
1201 | version "0.0.6"
1202 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
1203 |
1204 | ua-parser-js@^0.7.9:
1205 | version "0.7.12"
1206 | resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.12.tgz#04c81a99bdd5dc52263ea29d24c6bf8d4818a4bb"
1207 |
1208 | uniq@^1.0.1:
1209 | version "1.0.1"
1210 | resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
1211 |
1212 | user-home@^2.0.0:
1213 | version "2.0.0"
1214 | resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f"
1215 | dependencies:
1216 | os-homedir "^1.0.0"
1217 |
1218 | utf8@^2.1.1:
1219 | version "2.1.2"
1220 | resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96"
1221 |
1222 | util-deprecate@~1.0.1:
1223 | version "1.0.2"
1224 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1225 |
1226 | whatwg-fetch@>=0.10.0:
1227 | version "2.0.3"
1228 | resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
1229 |
1230 | wordwrap@~1.0.0:
1231 | version "1.0.0"
1232 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
1233 |
1234 | wrappy@1:
1235 | version "1.0.2"
1236 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1237 |
1238 | write@^0.2.1:
1239 | version "0.2.1"
1240 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
1241 | dependencies:
1242 | mkdirp "^0.5.1"
1243 |
1244 | xtend@^4.0.0, xtend@^4.0.1:
1245 | version "4.0.1"
1246 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
1247 |
--------------------------------------------------------------------------------