├── .babelrc
├── .eslintrc.js
├── .github
└── FUNDING.yml
├── .gitignore
├── LICENSE
├── README.md
├── package.json
├── src
├── Context.js
├── DefaultNotificationBody
│ ├── index.android.js
│ └── index.ios.js
├── Notification.js
├── Provider.js
├── WithInAppNotification.hoc.js
└── index.js
└── yarn.lock
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | "extends": "airbnb",
3 | "plugins": [
4 | "react",
5 | "jsx-a11y",
6 | "import"
7 | ],
8 | "rules": {
9 | "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }],
10 | // These two are turned off due to peerDependencies not being read by ESLint
11 | "import/no-unresolved": 0,
12 | "import/extensions": 0,
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | custom: https://www.paypal.me/robcalcroft
2 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 |
3 | # IDE Jetbrans
4 | .idea/
5 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Rob Calcroft
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-in-app-notification [](https://badge.fury.io/js/react-native-in-app-notification)
2 |
3 | > :bell: Customisable in-app notification component for React Native
4 |
5 | ## Contents
6 |
7 | 1. [UI](#ui)
8 | 2. [Install](#install)
9 | 3. [Versions](#versions)
10 | 4. [Props](#props)
11 | 5. [Usage](#usage)
12 |
13 | ## UI
14 |
15 | The basic look of `react-native-in-app-notification`:
16 |
17 | 
18 |
19 | What you can make `react-native-in-app-notification` do with a customised component:
20 |
21 | 
22 |
23 | ## Install
24 |
25 | ```bash
26 | yarn add react-native-in-app-notification
27 | ```
28 |
29 | OR
30 |
31 | ```bash
32 | npm install react-native-in-app-notification --save
33 | ```
34 |
35 | ### Android
36 |
37 | For Android you need to add the `VIBRATE` permission to your app `AndroidManifest.xml`
38 | ```xml
39 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | ...
49 |
50 | ```
51 |
52 | ## Versions
53 |
54 | | version | RN |
55 | | ------- | :-------- |
56 | | >=3.0.0 | >= 0.54.0 |
57 | | <3.0.0 | >= 0.43.4 |
58 |
59 | ## Props
60 |
61 | | Prop Name | Prop Description | Data Type | Required | Default |
62 | | ------------------------- | --------------------------------------------------- | ---------------------- | ----------- | --------------------------- |
63 | | closeInterval | How long the notification stays visible | Number | No | `4000` |
64 | | openCloseDuration | The length of the open / close animation | Number | No | `200` |
65 | | height | The height of the Notification component | Number | No | `80` |
66 | | backgroundColour | The background colour of the Notification component | String | No | `white` |
67 | | iconApp | App Icon | ImageSourcePropType | No | `null` |
68 | | notificationBodyComponent | **See below about NotificationBody** | React Node or Function | Recommended | `./DefaultNotificationBody` |
69 |
70 | ### NotificationBody
71 |
72 | The notification body is what is rendered inside the main Notification component and gives you the ability to customise how the notification looks. You can use the default notification body component in `./DefaultNotificationBody.js` as inspiration and guidance.
73 |
74 | Your `notificationBodyComponent` component is given five props:
75 |
76 | | Prop Name | Prop Description | Data Type | Default |
77 | | ----------------- | ------------------------------------------------------------- | ------------------- | ------- |
78 | | title | The title passed to `NotificationRef.show` | String | `''` |
79 | | message | The message passed to `NotificationRef.show` | String | `''` |
80 | | onPress | The callback passed to `NotificationRef.show` | Function | `null` |
81 | | icon | Icon for notification passed to `NotificationRef.show` | ImageSourcePropType | `null` |
82 | | vibrate | Vibrate on show notification passed to `NotificationRef.show` | Boolean | `true` |
83 | | additionalProps | Any additional props passed to `NotificationBodyComponent` | Object | `null` |
84 |
85 | ## Usage
86 |
87 | Adding `react-native-in-app-notification` is simple;
88 | Just wrap you main `App` component with the `InAppNotificationProvider` component exported from this module.
89 |
90 | ```javascript
91 | import { InAppNotificationProvider } from 'react-native-in-app-notification';
92 |
93 | import App from './App.js';
94 |
95 | class AppWithNotifications extends Component {
96 | render() {
97 | return (
98 |
99 |
100 |
101 | );
102 | }
103 | }
104 | ```
105 |
106 | When you want to show the notification, just wrap the component which needs to display a notification with the `withInAppNotification` HOC and call the `.showNotification` methods from its props.
107 |
108 | `.showNotification` can take four arguments (all of which are optional):
109 |
110 | - `title`
111 | - `message`
112 | - `onPress`
113 | - `additionalProps`
114 |
115 | **N.B:** you should probably include at least one of `title` or `message`!
116 |
117 | `onPress` doesn't need to be used for passive notifications and you can use `onClose` in your `NotificationBody` component to allow your users to close the notification.
118 |
119 | `additionalProps` can be used to pass arbitory props to `NotificationBody` component. Can be accessed in `NotificationBody` component via `props.additionalProps`.
120 |
121 | ```javascript
122 | import React, { Component } from 'react';
123 | import { View, Text, TouchableHighlight } from 'react-native';
124 | import { withInAppNotification } from 'react-native-in-app-notification';
125 |
126 | class MyApp extends Component {
127 | render() {
128 | return (
129 |
130 | This is my app
131 | {
133 | this.props.showNotification({
134 | title: 'You pressed it!',
135 | message: 'The notification has been triggered',
136 | onPress: () => Alert.alert('Alert', 'You clicked the notification!'),
137 | additionalProps: { type: 'error' },
138 | });
139 | }}
140 | >
141 | Click me to trigger a notification
142 |
143 |
144 | );
145 | }
146 | }
147 |
148 | export default withInAppNotification(MyApp);
149 | ```
150 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react-native-in-app-notification",
3 | "version": "3.2.0",
4 | "description": "Customisable in-app notification component for React Native",
5 | "main": "src/index.js",
6 | "repository": "https://github.com/robcalcroft/react-native-in-app-notification.git",
7 | "author": "Rob Calcroft ",
8 | "license": "MIT",
9 | "scripts": {
10 | "lint": "eslint Notification.js DefaultNotificationBody.ios.js DefaultNotificationBody.android.js"
11 | },
12 | "peerDependencies": {
13 | "prop-types": "^15.5.10",
14 | "react": ">=16.3.0",
15 | "react-native": ">=0.54.0"
16 | },
17 | "dependencies": {
18 | "hoist-non-react-statics": "^3.0.1",
19 | "react-native-iphone-x-helper": "^1.2.0",
20 | "react-native-swipe-gestures": "^1.0.2"
21 | },
22 | "devDependencies": {
23 | "eslint": "^4.18.2",
24 | "eslint-config-airbnb": "^14.1.0",
25 | "eslint-plugin-import": "^2.2.0",
26 | "eslint-plugin-jsx-a11y": "^4.0.0",
27 | "eslint-plugin-react": "^6.10.3"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/Context.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | const context = React.createContext(() => {});
4 |
5 | export default context;
6 |
--------------------------------------------------------------------------------
/src/DefaultNotificationBody/index.android.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PropTypes from 'prop-types';
3 | import { TouchableOpacity, View, Text, Image, Vibration } from 'react-native';
4 | import GestureRecognizer, { swipeDirections } from 'react-native-swipe-gestures';
5 |
6 | const styles = {
7 | container: {
8 | flex: 1,
9 | },
10 | content: {
11 | flex: 1,
12 | flexDirection: 'row',
13 | },
14 | iconContainer: {
15 | width: 60,
16 | height: 70,
17 | marginTop: 5,
18 | marginLeft: 10,
19 | },
20 | icon: {
21 | resizeMode: 'contain',
22 | width: 60,
23 | height: 70,
24 | },
25 | textContainer: {
26 | alignSelf: 'center',
27 | marginLeft: 20,
28 | },
29 | title: {
30 | color: '#000',
31 | fontWeight: 'bold',
32 | },
33 | message: {
34 | color: '#000',
35 | marginTop: 5,
36 | },
37 | };
38 |
39 | class DefaultNotificationBody extends React.Component {
40 | constructor() {
41 | super();
42 |
43 | this.onNotificationPress = this.onNotificationPress.bind(this);
44 | this.onSwipe = this.onSwipe.bind(this);
45 | }
46 |
47 | componentDidUpdate(prevProps) {
48 | if ((prevProps.vibrate || this.props.vibrate) && this.props.isOpen && !prevProps.isOpen) {
49 | Vibration.vibrate();
50 | }
51 | }
52 |
53 | onNotificationPress() {
54 | const {
55 | onPress,
56 | onClose,
57 | } = this.props;
58 |
59 | onClose();
60 | onPress();
61 | }
62 |
63 | onSwipe(direction) {
64 | const { onClose } = this.props;
65 | const { SWIPE_LEFT, SWIPE_RIGHT } = swipeDirections;
66 |
67 | if (direction === SWIPE_RIGHT || direction === SWIPE_LEFT) {
68 | onClose();
69 | }
70 | }
71 |
72 | render() {
73 | const {
74 | title,
75 | message,
76 | iconApp,
77 | icon,
78 | } = this.props;
79 |
80 | return (
81 |
82 |
88 |
89 | {(icon || iconApp) && }
90 |
91 |
92 | {title}
93 | {message}
94 |
95 |
96 |
97 | );
98 | }
99 | }
100 |
101 | DefaultNotificationBody.propTypes = {
102 | title: PropTypes.string,
103 | message: PropTypes.string,
104 | vibrate: PropTypes.bool,
105 | isOpen: PropTypes.bool,
106 | onPress: PropTypes.func,
107 | onClose: PropTypes.func,
108 | iconApp: Image.propTypes.source,
109 | icon: Image.propTypes.source,
110 | additionalProps: PropTypes.object,
111 | };
112 |
113 | DefaultNotificationBody.defaultProps = {
114 | title: 'Notification',
115 | message: 'This is a test notification',
116 | vibrate: true,
117 | isOpen: false,
118 | iconApp: null,
119 | icon: null,
120 | onPress: () => null,
121 | onClose: () => null,
122 | additionalProps: null,
123 | };
124 |
125 | export default DefaultNotificationBody;
126 |
--------------------------------------------------------------------------------
/src/DefaultNotificationBody/index.ios.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PropTypes from 'prop-types';
3 | import { TouchableOpacity, StatusBar, View, Text, Image, Vibration } from 'react-native';
4 | import { getStatusBarHeight, isIphoneX } from 'react-native-iphone-x-helper';
5 | import GestureRecognizer, { swipeDirections } from 'react-native-swipe-gestures';
6 |
7 | const styles = {
8 | root: {
9 | flex: 1,
10 | backgroundColor: '#050505',
11 | },
12 | container: {
13 | position: 'absolute',
14 | top: isIphoneX() && getStatusBarHeight(),
15 | bottom: 0,
16 | left: 0,
17 | right: 0,
18 | },
19 | content: {
20 | flex: 1,
21 | flexDirection: 'row',
22 | },
23 | iconApp: {
24 | marginTop: 10,
25 | marginLeft: 20,
26 | resizeMode: 'contain',
27 | width: 24,
28 | height: 24,
29 | borderRadius: 5,
30 | },
31 | icon: {
32 | marginTop: 10,
33 | marginLeft: 10,
34 | resizeMode: 'contain',
35 | width: 48,
36 | height: 48,
37 | },
38 | textContainer: {
39 | alignSelf: 'center',
40 | marginLeft: 20,
41 | },
42 | title: {
43 | color: '#FFF',
44 | fontWeight: 'bold',
45 | },
46 | message: {
47 | color: '#FFF',
48 | marginTop: 5,
49 | },
50 | footer: {
51 | backgroundColor: '#696969',
52 | borderRadius: 5,
53 | alignSelf: 'center',
54 | height: 5,
55 | width: 35,
56 | margin: 5,
57 | },
58 | };
59 |
60 | class DefaultNotificationBody extends React.Component {
61 | constructor() {
62 | super();
63 |
64 | this.onNotificationPress = this.onNotificationPress.bind(this);
65 | this.onSwipe = this.onSwipe.bind(this);
66 | }
67 |
68 | componentDidUpdate(prevProps) {
69 | if (this.props.isOpen !== prevProps.isOpen) {
70 | StatusBar.setHidden(this.props.isOpen);
71 | }
72 |
73 | if (this.props.vibrate && this.props.isOpen && !prevProps.isOpen){
74 | Vibration.vibrate();
75 | }
76 | }
77 |
78 | onNotificationPress() {
79 | const {
80 | onPress,
81 | onClose,
82 | } = this.props;
83 |
84 | onClose();
85 | onPress();
86 | }
87 |
88 | onSwipe(direction) {
89 | const { SWIPE_UP } = swipeDirections;
90 |
91 | if (direction === SWIPE_UP) {
92 | this.props.onClose();
93 | }
94 | }
95 |
96 | renderIcon() {
97 | const {
98 | iconApp,
99 | icon,
100 | } = this.props;
101 |
102 | if (icon) {
103 | return ;
104 | } else if (iconApp) {
105 | return ;
106 | }
107 |
108 | return null;
109 | }
110 |
111 | render() {
112 | const {
113 | title,
114 | message,
115 | } = this.props;
116 |
117 | return (
118 |
119 |
120 |
126 | {this.renderIcon()}
127 |
128 | {title}
129 | {message}
130 |
131 |
132 |
133 |
134 |
135 |
136 | );
137 | }
138 | }
139 |
140 | DefaultNotificationBody.propTypes = {
141 | title: PropTypes.string,
142 | message: PropTypes.string,
143 | vibrate: PropTypes.bool,
144 | isOpen: PropTypes.bool,
145 | onPress: PropTypes.func,
146 | onClose: PropTypes.func,
147 | iconApp: Image.propTypes.source,
148 | icon: Image.propTypes.source,
149 | };
150 |
151 | DefaultNotificationBody.defaultProps = {
152 | title: 'Notification',
153 | message: 'This is a test notification',
154 | vibrate: true,
155 | isOpen: false,
156 | iconApp: null,
157 | icon: null,
158 | onPress: () => null,
159 | onClose: () => null,
160 | };
161 |
162 | export default DefaultNotificationBody;
163 |
--------------------------------------------------------------------------------
/src/Notification.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import PropTypes from 'prop-types';
3 | import { Animated, StyleSheet, Image } from 'react-native';
4 | import { getStatusBarHeight, isIphoneX } from 'react-native-iphone-x-helper';
5 |
6 | import DefaultNotificationBody from './DefaultNotificationBody';
7 |
8 | const styles = StyleSheet.create({
9 | notification: {
10 | position: 'absolute',
11 | width: '100%',
12 | },
13 | });
14 |
15 | class Notification extends Component {
16 | constructor() {
17 | super();
18 |
19 | this.heightOffset = isIphoneX() ? getStatusBarHeight() : 0;
20 |
21 | this.show = this.show.bind(this);
22 | this.showNotification = this.showNotification.bind(this);
23 | this.closeNotification = this.closeNotification.bind(this);
24 |
25 | this.state = {
26 | animatedValue: new Animated.Value(0),
27 | isOpen: false,
28 | };
29 | }
30 |
31 | show(
32 | { title, message, onPress, icon, vibrate, additionalProps } = {
33 | title: '',
34 | message: '',
35 | onPress: null,
36 | icon: null,
37 | vibrate: true,
38 | additionalProps: {},
39 | },
40 | ) {
41 | const { closeInterval } = this.props;
42 | const { isOpen } = this.state;
43 |
44 | // Clear any currently showing notification timeouts so the new one doesn't get prematurely
45 | // closed
46 | clearTimeout(this.currentNotificationInterval);
47 |
48 | const showNotificationWithStateChanges = () => {
49 | this.setState(
50 | {
51 | isOpen: true,
52 | title,
53 | message,
54 | onPress,
55 | icon,
56 | vibrate,
57 | additionalProps,
58 | },
59 | () => this.showNotification(() => {
60 | this.currentNotificationInterval = setTimeout(() => {
61 | this.setState(
62 | {
63 | isOpen: false,
64 | title: '',
65 | message: '',
66 | onPress: null,
67 | icon: null,
68 | vibrate: true,
69 | additionalProps,
70 | },
71 | this.closeNotification,
72 | );
73 | }, closeInterval);
74 | }),
75 | );
76 | };
77 |
78 | if (isOpen) {
79 | this.setState({ isOpen: false }, () => {
80 | this.closeNotification(showNotificationWithStateChanges);
81 | });
82 | } else {
83 | showNotificationWithStateChanges();
84 | }
85 | }
86 |
87 | showNotification(done) {
88 | Animated.timing(this.state.animatedValue, {
89 | toValue: 1,
90 | duration: this.props.openCloseDuration,
91 | useNativeDriver: true,
92 | }).start(done);
93 | }
94 |
95 | closeNotification(done) {
96 | Animated.timing(this.state.animatedValue, {
97 | toValue: 0,
98 | duration: this.props.openCloseDuration,
99 | useNativeDriver: true,
100 | }).start(done);
101 | }
102 |
103 | render() {
104 | const {
105 | height: baseHeight,
106 | topOffset,
107 | backgroundColour,
108 | iconApp,
109 | notificationBodyComponent: NotificationBody,
110 | } = this.props;
111 |
112 | const { animatedValue, title, message, onPress, isOpen, icon, vibrate } = this.state;
113 |
114 | const height = baseHeight + this.heightOffset;
115 |
116 | return (
117 |
133 | this.setState({ isOpen: false }, this.closeNotification)}
142 | additionalProps={this.state.additionalProps}
143 | />
144 |
145 | );
146 | }
147 | }
148 |
149 | Notification.propTypes = {
150 | closeInterval: PropTypes.number,
151 | openCloseDuration: PropTypes.number,
152 | height: PropTypes.number,
153 | topOffset: PropTypes.number,
154 | backgroundColour: PropTypes.string,
155 | notificationBodyComponent: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
156 | iconApp: Image.propTypes.source,
157 | };
158 |
159 | Notification.defaultProps = {
160 | closeInterval: 4000,
161 | openCloseDuration: 200,
162 | height: 80,
163 | topOffset: 0,
164 | backgroundColour: 'white',
165 | notificationBodyComponent: DefaultNotificationBody,
166 | iconApp: null,
167 | };
168 |
169 | export default Notification;
170 |
--------------------------------------------------------------------------------
/src/Provider.js:
--------------------------------------------------------------------------------
1 | import React, { Children } from 'react';
2 | import PropTypes from 'prop-types';
3 |
4 | import Context from './Context';
5 | import Notification from './Notification';
6 |
7 | class Provider extends React.PureComponent {
8 | constructor(props) {
9 | super(props);
10 |
11 | this.showNotification = this.showNotification.bind(this);
12 | }
13 |
14 | showNotification(notificationOptions) {
15 | if (this.notification) {
16 | this.notification.show(notificationOptions);
17 | }
18 | }
19 |
20 | render() {
21 | return (
22 |
23 | {Children.only(this.props.children)}
24 | {
26 | this.notification = ref;
27 | }}
28 | {...this.props}
29 | />
30 |
31 | );
32 | }
33 | }
34 |
35 | Provider.propTypes = {
36 | ...Notification.propTypes,
37 | children: PropTypes.element.isRequired,
38 | };
39 |
40 | export default Provider;
41 |
--------------------------------------------------------------------------------
/src/WithInAppNotification.hoc.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | import hoistNonReactStatic from 'hoist-non-react-statics';
4 |
5 | import Context from './Context';
6 |
7 | function withInAppNotification(WrappedComponent) {
8 | class Enhanced extends React.PureComponent {
9 | render() {
10 | return (
11 |
12 | {showNotification => (
13 |
17 | )}
18 |
19 | );
20 | }
21 | }
22 |
23 | // Pass over static props
24 | hoistNonReactStatic(Enhanced, WrappedComponent);
25 |
26 | return Enhanced;
27 | }
28 |
29 | export default withInAppNotification;
30 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | export { default as Notification } from './Notification';
2 | export { default as Context } from './Context';
3 | export { default as InAppNotificationProvider } from './Provider';
4 | export { default as withInAppNotification } from './WithInAppNotification.hoc';
5 |
--------------------------------------------------------------------------------
/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 | integrity sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=
9 | dependencies:
10 | acorn "^3.0.4"
11 |
12 | acorn@^3.0.4:
13 | version "3.3.0"
14 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
15 | integrity sha1-ReN/s56No/JbruP/U2niu18iAXo=
16 |
17 | acorn@^5.5.0:
18 | version "5.7.3"
19 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
20 | integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
21 |
22 | ajv-keywords@^2.1.0:
23 | version "2.1.1"
24 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762"
25 | integrity sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=
26 |
27 | ajv@^5.2.3, ajv@^5.3.0:
28 | version "5.5.2"
29 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
30 | integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=
31 | dependencies:
32 | co "^4.6.0"
33 | fast-deep-equal "^1.0.0"
34 | fast-json-stable-stringify "^2.0.0"
35 | json-schema-traverse "^0.3.0"
36 |
37 | ansi-escapes@^3.0.0:
38 | version "3.2.0"
39 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
40 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
41 |
42 | ansi-regex@^2.0.0:
43 | version "2.1.1"
44 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
45 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
46 |
47 | ansi-regex@^3.0.0:
48 | version "3.0.0"
49 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
50 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
51 |
52 | ansi-styles@^2.2.1:
53 | version "2.2.1"
54 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
55 | integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
56 |
57 | ansi-styles@^3.2.1:
58 | version "3.2.1"
59 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
60 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
61 | dependencies:
62 | color-convert "^1.9.0"
63 |
64 | argparse@^1.0.7:
65 | version "1.0.10"
66 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
67 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
68 | dependencies:
69 | sprintf-js "~1.0.2"
70 |
71 | aria-query@^0.3.0:
72 | version "0.3.0"
73 | resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.3.0.tgz#cb8a9984e2862711c83c80ade5b8f5ca0de2b467"
74 | integrity sha1-y4qZhOKGJxHIPICt5bj1yg3itGc=
75 | dependencies:
76 | ast-types-flow "0.0.7"
77 |
78 | array-includes@^3.0.3:
79 | version "3.0.3"
80 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
81 | integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=
82 | dependencies:
83 | define-properties "^1.1.2"
84 | es-abstract "^1.7.0"
85 |
86 | array.prototype.find@^2.0.1:
87 | version "2.1.0"
88 | resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.1.0.tgz#630f2eaf70a39e608ac3573e45cf8ccd0ede9ad7"
89 | integrity sha512-Wn41+K1yuO5p7wRZDl7890c3xvv5UBrfVXTVIe28rSQb6LS0fZMDrQB6PAcxQFRFy6vJTLDc3A2+3CjQdzVKRg==
90 | dependencies:
91 | define-properties "^1.1.3"
92 | es-abstract "^1.13.0"
93 |
94 | ast-types-flow@0.0.7:
95 | version "0.0.7"
96 | resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
97 | integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0=
98 |
99 | babel-code-frame@^6.22.0:
100 | version "6.26.0"
101 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
102 | integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=
103 | dependencies:
104 | chalk "^1.1.3"
105 | esutils "^2.0.2"
106 | js-tokens "^3.0.2"
107 |
108 | balanced-match@^1.0.0:
109 | version "1.0.0"
110 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
111 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
112 |
113 | brace-expansion@^1.1.7:
114 | version "1.1.11"
115 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
116 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
117 | dependencies:
118 | balanced-match "^1.0.0"
119 | concat-map "0.0.1"
120 |
121 | buffer-from@^1.0.0:
122 | version "1.1.1"
123 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
124 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
125 |
126 | caller-path@^0.1.0:
127 | version "0.1.0"
128 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
129 | integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=
130 | dependencies:
131 | callsites "^0.2.0"
132 |
133 | callsites@^0.2.0:
134 | version "0.2.0"
135 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
136 | integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=
137 |
138 | chalk@^1.1.3:
139 | version "1.1.3"
140 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
141 | integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
142 | dependencies:
143 | ansi-styles "^2.2.1"
144 | escape-string-regexp "^1.0.2"
145 | has-ansi "^2.0.0"
146 | strip-ansi "^3.0.0"
147 | supports-color "^2.0.0"
148 |
149 | chalk@^2.0.0, chalk@^2.1.0:
150 | version "2.4.2"
151 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
152 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
153 | dependencies:
154 | ansi-styles "^3.2.1"
155 | escape-string-regexp "^1.0.5"
156 | supports-color "^5.3.0"
157 |
158 | chardet@^0.4.0:
159 | version "0.4.2"
160 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
161 | integrity sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=
162 |
163 | circular-json@^0.3.1:
164 | version "0.3.3"
165 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66"
166 | integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==
167 |
168 | cli-cursor@^2.1.0:
169 | version "2.1.0"
170 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
171 | integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=
172 | dependencies:
173 | restore-cursor "^2.0.0"
174 |
175 | cli-width@^2.0.0:
176 | version "2.2.0"
177 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
178 | integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=
179 |
180 | co@^4.6.0:
181 | version "4.6.0"
182 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
183 | integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
184 |
185 | color-convert@^1.9.0:
186 | version "1.9.3"
187 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
188 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
189 | dependencies:
190 | color-name "1.1.3"
191 |
192 | color-name@1.1.3:
193 | version "1.1.3"
194 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
195 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
196 |
197 | concat-map@0.0.1:
198 | version "0.0.1"
199 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
200 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
201 |
202 | concat-stream@^1.6.0:
203 | version "1.6.2"
204 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
205 | integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
206 | dependencies:
207 | buffer-from "^1.0.0"
208 | inherits "^2.0.3"
209 | readable-stream "^2.2.2"
210 | typedarray "^0.0.6"
211 |
212 | contains-path@^0.1.0:
213 | version "0.1.0"
214 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
215 | integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=
216 |
217 | core-util-is@~1.0.0:
218 | version "1.0.2"
219 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
220 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
221 |
222 | cross-spawn@^5.1.0:
223 | version "5.1.0"
224 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
225 | integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=
226 | dependencies:
227 | lru-cache "^4.0.1"
228 | shebang-command "^1.2.0"
229 | which "^1.2.9"
230 |
231 | damerau-levenshtein@^1.0.0:
232 | version "1.0.5"
233 | resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz#780cf7144eb2e8dbd1c3bb83ae31100ccc31a414"
234 | integrity sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA==
235 |
236 | debug@^2.6.8, debug@^2.6.9:
237 | version "2.6.9"
238 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
239 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
240 | dependencies:
241 | ms "2.0.0"
242 |
243 | debug@^3.1.0:
244 | version "3.2.6"
245 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
246 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
247 | dependencies:
248 | ms "^2.1.1"
249 |
250 | deep-is@~0.1.3:
251 | version "0.1.3"
252 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
253 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
254 |
255 | define-properties@^1.1.2, define-properties@^1.1.3:
256 | version "1.1.3"
257 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
258 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
259 | dependencies:
260 | object-keys "^1.0.12"
261 |
262 | doctrine@1.5.0, doctrine@^1.2.2:
263 | version "1.5.0"
264 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
265 | integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=
266 | dependencies:
267 | esutils "^2.0.2"
268 | isarray "^1.0.0"
269 |
270 | doctrine@^2.1.0:
271 | version "2.1.0"
272 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
273 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
274 | dependencies:
275 | esutils "^2.0.2"
276 |
277 | emoji-regex@^6.1.0:
278 | version "6.5.1"
279 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2"
280 | integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==
281 |
282 | error-ex@^1.2.0:
283 | version "1.3.2"
284 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
285 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
286 | dependencies:
287 | is-arrayish "^0.2.1"
288 |
289 | es-abstract@^1.13.0, es-abstract@^1.7.0:
290 | version "1.13.0"
291 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9"
292 | integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==
293 | dependencies:
294 | es-to-primitive "^1.2.0"
295 | function-bind "^1.1.1"
296 | has "^1.0.3"
297 | is-callable "^1.1.4"
298 | is-regex "^1.0.4"
299 | object-keys "^1.0.12"
300 |
301 | es-to-primitive@^1.2.0:
302 | version "1.2.0"
303 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
304 | integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
305 | dependencies:
306 | is-callable "^1.1.4"
307 | is-date-object "^1.0.1"
308 | is-symbol "^1.0.2"
309 |
310 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
311 | version "1.0.5"
312 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
313 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
314 |
315 | eslint-config-airbnb-base@^11.1.0:
316 | version "11.3.2"
317 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-11.3.2.tgz#8703b11abe3c88ac7ec2b745b7fdf52e00ae680a"
318 | integrity sha512-/fhjt/VqzBA2SRsx7ErDtv6Ayf+XLw9LIOqmpBuHFCVwyJo2EtzGWMB9fYRFBoWWQLxmNmCpenNiH0RxyeS41w==
319 | dependencies:
320 | eslint-restricted-globals "^0.1.1"
321 |
322 | eslint-config-airbnb@^14.1.0:
323 | version "14.1.0"
324 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-14.1.0.tgz#355d290040bbf8e00bf8b4b19f4b70cbe7c2317f"
325 | integrity sha1-NV0pAEC7+OAL+LSxn0twy+fCMX8=
326 | dependencies:
327 | eslint-config-airbnb-base "^11.1.0"
328 |
329 | eslint-import-resolver-node@^0.3.2:
330 | version "0.3.2"
331 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a"
332 | integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==
333 | dependencies:
334 | debug "^2.6.9"
335 | resolve "^1.5.0"
336 |
337 | eslint-module-utils@^2.4.0:
338 | version "2.4.0"
339 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz#8b93499e9b00eab80ccb6614e69f03678e84e09a"
340 | integrity sha512-14tltLm38Eu3zS+mt0KvILC3q8jyIAH518MlG+HO0p+yK885Lb1UHTY/UgR91eOyGdmxAPb+OLoW4znqIT6Ndw==
341 | dependencies:
342 | debug "^2.6.8"
343 | pkg-dir "^2.0.0"
344 |
345 | eslint-plugin-import@^2.2.0:
346 | version "2.18.0"
347 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.0.tgz#7a5ba8d32622fb35eb9c8db195c2090bd18a3678"
348 | integrity sha512-PZpAEC4gj/6DEMMoU2Df01C5c50r7zdGIN52Yfi7CvvWaYssG7Jt5R9nFG5gmqodxNOz9vQS87xk6Izdtpdrig==
349 | dependencies:
350 | array-includes "^3.0.3"
351 | contains-path "^0.1.0"
352 | debug "^2.6.9"
353 | doctrine "1.5.0"
354 | eslint-import-resolver-node "^0.3.2"
355 | eslint-module-utils "^2.4.0"
356 | has "^1.0.3"
357 | lodash "^4.17.11"
358 | minimatch "^3.0.4"
359 | read-pkg-up "^2.0.0"
360 | resolve "^1.11.0"
361 |
362 | eslint-plugin-jsx-a11y@^4.0.0:
363 | version "4.0.0"
364 | resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-4.0.0.tgz#779bb0fe7b08da564a422624911de10061e048ee"
365 | integrity sha1-d5uw/nsI2lZKQiYkkR3hAGHgSO4=
366 | dependencies:
367 | aria-query "^0.3.0"
368 | ast-types-flow "0.0.7"
369 | damerau-levenshtein "^1.0.0"
370 | emoji-regex "^6.1.0"
371 | jsx-ast-utils "^1.0.0"
372 | object-assign "^4.0.1"
373 |
374 | eslint-plugin-react@^6.10.3:
375 | version "6.10.3"
376 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78"
377 | integrity sha1-xUNb6wZ3ThLH2y9qut3L+QDNP3g=
378 | dependencies:
379 | array.prototype.find "^2.0.1"
380 | doctrine "^1.2.2"
381 | has "^1.0.1"
382 | jsx-ast-utils "^1.3.4"
383 | object.assign "^4.0.4"
384 |
385 | eslint-restricted-globals@^0.1.1:
386 | version "0.1.1"
387 | resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7"
388 | integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=
389 |
390 | eslint-scope@^3.7.1:
391 | version "3.7.3"
392 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.3.tgz#bb507200d3d17f60247636160b4826284b108535"
393 | integrity sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==
394 | dependencies:
395 | esrecurse "^4.1.0"
396 | estraverse "^4.1.1"
397 |
398 | eslint-visitor-keys@^1.0.0:
399 | version "1.0.0"
400 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
401 | integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
402 |
403 | eslint@^4.18.2:
404 | version "4.19.1"
405 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz#32d1d653e1d90408854bfb296f076ec7e186a300"
406 | integrity sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==
407 | dependencies:
408 | ajv "^5.3.0"
409 | babel-code-frame "^6.22.0"
410 | chalk "^2.1.0"
411 | concat-stream "^1.6.0"
412 | cross-spawn "^5.1.0"
413 | debug "^3.1.0"
414 | doctrine "^2.1.0"
415 | eslint-scope "^3.7.1"
416 | eslint-visitor-keys "^1.0.0"
417 | espree "^3.5.4"
418 | esquery "^1.0.0"
419 | esutils "^2.0.2"
420 | file-entry-cache "^2.0.0"
421 | functional-red-black-tree "^1.0.1"
422 | glob "^7.1.2"
423 | globals "^11.0.1"
424 | ignore "^3.3.3"
425 | imurmurhash "^0.1.4"
426 | inquirer "^3.0.6"
427 | is-resolvable "^1.0.0"
428 | js-yaml "^3.9.1"
429 | json-stable-stringify-without-jsonify "^1.0.1"
430 | levn "^0.3.0"
431 | lodash "^4.17.4"
432 | minimatch "^3.0.2"
433 | mkdirp "^0.5.1"
434 | natural-compare "^1.4.0"
435 | optionator "^0.8.2"
436 | path-is-inside "^1.0.2"
437 | pluralize "^7.0.0"
438 | progress "^2.0.0"
439 | regexpp "^1.0.1"
440 | require-uncached "^1.0.3"
441 | semver "^5.3.0"
442 | strip-ansi "^4.0.0"
443 | strip-json-comments "~2.0.1"
444 | table "4.0.2"
445 | text-table "~0.2.0"
446 |
447 | espree@^3.5.4:
448 | version "3.5.4"
449 | resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz#b0f447187c8a8bed944b815a660bddf5deb5d1a7"
450 | integrity sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==
451 | dependencies:
452 | acorn "^5.5.0"
453 | acorn-jsx "^3.0.0"
454 |
455 | esprima@^4.0.0:
456 | version "4.0.1"
457 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
458 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
459 |
460 | esquery@^1.0.0:
461 | version "1.0.1"
462 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708"
463 | integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==
464 | dependencies:
465 | estraverse "^4.0.0"
466 |
467 | esrecurse@^4.1.0:
468 | version "4.2.1"
469 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf"
470 | integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==
471 | dependencies:
472 | estraverse "^4.1.0"
473 |
474 | estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1:
475 | version "4.2.0"
476 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
477 | integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=
478 |
479 | esutils@^2.0.2:
480 | version "2.0.2"
481 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
482 | integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=
483 |
484 | external-editor@^2.0.4:
485 | version "2.2.0"
486 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5"
487 | integrity sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==
488 | dependencies:
489 | chardet "^0.4.0"
490 | iconv-lite "^0.4.17"
491 | tmp "^0.0.33"
492 |
493 | fast-deep-equal@^1.0.0:
494 | version "1.1.0"
495 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614"
496 | integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=
497 |
498 | fast-json-stable-stringify@^2.0.0:
499 | version "2.0.0"
500 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
501 | integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
502 |
503 | fast-levenshtein@~2.0.4:
504 | version "2.0.6"
505 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
506 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
507 |
508 | figures@^2.0.0:
509 | version "2.0.0"
510 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
511 | integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=
512 | dependencies:
513 | escape-string-regexp "^1.0.5"
514 |
515 | file-entry-cache@^2.0.0:
516 | version "2.0.0"
517 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
518 | integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=
519 | dependencies:
520 | flat-cache "^1.2.1"
521 | object-assign "^4.0.1"
522 |
523 | find-up@^2.0.0, find-up@^2.1.0:
524 | version "2.1.0"
525 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
526 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
527 | dependencies:
528 | locate-path "^2.0.0"
529 |
530 | flat-cache@^1.2.1:
531 | version "1.3.4"
532 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz#2c2ef77525cc2929007dfffa1dd314aa9c9dee6f"
533 | integrity sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==
534 | dependencies:
535 | circular-json "^0.3.1"
536 | graceful-fs "^4.1.2"
537 | rimraf "~2.6.2"
538 | write "^0.2.1"
539 |
540 | fs.realpath@^1.0.0:
541 | version "1.0.0"
542 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
543 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
544 |
545 | function-bind@^1.1.1:
546 | version "1.1.1"
547 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
548 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
549 |
550 | functional-red-black-tree@^1.0.1:
551 | version "1.0.1"
552 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
553 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
554 |
555 | glob@^7.1.2, glob@^7.1.3:
556 | version "7.1.4"
557 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
558 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
559 | dependencies:
560 | fs.realpath "^1.0.0"
561 | inflight "^1.0.4"
562 | inherits "2"
563 | minimatch "^3.0.4"
564 | once "^1.3.0"
565 | path-is-absolute "^1.0.0"
566 |
567 | globals@^11.0.1:
568 | version "11.12.0"
569 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
570 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
571 |
572 | graceful-fs@^4.1.2:
573 | version "4.2.0"
574 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b"
575 | integrity sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==
576 |
577 | has-ansi@^2.0.0:
578 | version "2.0.0"
579 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
580 | integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
581 | dependencies:
582 | ansi-regex "^2.0.0"
583 |
584 | has-flag@^3.0.0:
585 | version "3.0.0"
586 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
587 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
588 |
589 | has-symbols@^1.0.0:
590 | version "1.0.0"
591 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
592 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
593 |
594 | has@^1.0.1, has@^1.0.3:
595 | version "1.0.3"
596 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
597 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
598 | dependencies:
599 | function-bind "^1.1.1"
600 |
601 | hoist-non-react-statics@^3.0.1:
602 | version "3.3.0"
603 | resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b"
604 | integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==
605 | dependencies:
606 | react-is "^16.7.0"
607 |
608 | hosted-git-info@^2.1.4:
609 | version "2.8.9"
610 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
611 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
612 |
613 | iconv-lite@^0.4.17:
614 | version "0.4.24"
615 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
616 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
617 | dependencies:
618 | safer-buffer ">= 2.1.2 < 3"
619 |
620 | ignore@^3.3.3:
621 | version "3.3.10"
622 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043"
623 | integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==
624 |
625 | imurmurhash@^0.1.4:
626 | version "0.1.4"
627 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
628 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
629 |
630 | inflight@^1.0.4:
631 | version "1.0.6"
632 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
633 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
634 | dependencies:
635 | once "^1.3.0"
636 | wrappy "1"
637 |
638 | inherits@2, inherits@^2.0.3, inherits@~2.0.3:
639 | version "2.0.4"
640 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
641 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
642 |
643 | inquirer@^3.0.6:
644 | version "3.3.0"
645 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9"
646 | integrity sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==
647 | dependencies:
648 | ansi-escapes "^3.0.0"
649 | chalk "^2.0.0"
650 | cli-cursor "^2.1.0"
651 | cli-width "^2.0.0"
652 | external-editor "^2.0.4"
653 | figures "^2.0.0"
654 | lodash "^4.3.0"
655 | mute-stream "0.0.7"
656 | run-async "^2.2.0"
657 | rx-lite "^4.0.8"
658 | rx-lite-aggregates "^4.0.8"
659 | string-width "^2.1.0"
660 | strip-ansi "^4.0.0"
661 | through "^2.3.6"
662 |
663 | is-arrayish@^0.2.1:
664 | version "0.2.1"
665 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
666 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
667 |
668 | is-callable@^1.1.4:
669 | version "1.1.4"
670 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
671 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
672 |
673 | is-date-object@^1.0.1:
674 | version "1.0.1"
675 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
676 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
677 |
678 | is-fullwidth-code-point@^2.0.0:
679 | version "2.0.0"
680 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
681 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
682 |
683 | is-promise@^2.1.0:
684 | version "2.1.0"
685 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
686 | integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=
687 |
688 | is-regex@^1.0.4:
689 | version "1.0.4"
690 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
691 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
692 | dependencies:
693 | has "^1.0.1"
694 |
695 | is-resolvable@^1.0.0:
696 | version "1.1.0"
697 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88"
698 | integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==
699 |
700 | is-symbol@^1.0.2:
701 | version "1.0.2"
702 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
703 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
704 | dependencies:
705 | has-symbols "^1.0.0"
706 |
707 | isarray@^1.0.0, isarray@~1.0.0:
708 | version "1.0.0"
709 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
710 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
711 |
712 | isexe@^2.0.0:
713 | version "2.0.0"
714 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
715 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
716 |
717 | js-tokens@^3.0.2:
718 | version "3.0.2"
719 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
720 | integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
721 |
722 | js-yaml@^3.9.1:
723 | version "3.13.1"
724 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
725 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
726 | dependencies:
727 | argparse "^1.0.7"
728 | esprima "^4.0.0"
729 |
730 | json-schema-traverse@^0.3.0:
731 | version "0.3.1"
732 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
733 | integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=
734 |
735 | json-stable-stringify-without-jsonify@^1.0.1:
736 | version "1.0.1"
737 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
738 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
739 |
740 | jsx-ast-utils@^1.0.0, jsx-ast-utils@^1.3.4:
741 | version "1.4.1"
742 | resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz#3867213e8dd79bf1e8f2300c0cfc1efb182c0df1"
743 | integrity sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE=
744 |
745 | levn@^0.3.0, levn@~0.3.0:
746 | version "0.3.0"
747 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
748 | integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
749 | dependencies:
750 | prelude-ls "~1.1.2"
751 | type-check "~0.3.2"
752 |
753 | load-json-file@^2.0.0:
754 | version "2.0.0"
755 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
756 | integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=
757 | dependencies:
758 | graceful-fs "^4.1.2"
759 | parse-json "^2.2.0"
760 | pify "^2.0.0"
761 | strip-bom "^3.0.0"
762 |
763 | locate-path@^2.0.0:
764 | version "2.0.0"
765 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
766 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=
767 | dependencies:
768 | p-locate "^2.0.0"
769 | path-exists "^3.0.0"
770 |
771 | lodash@^4.17.11, lodash@^4.17.4, lodash@^4.3.0:
772 | version "4.17.21"
773 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
774 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
775 |
776 | lru-cache@^4.0.1:
777 | version "4.1.5"
778 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd"
779 | integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==
780 | dependencies:
781 | pseudomap "^1.0.2"
782 | yallist "^2.1.2"
783 |
784 | mimic-fn@^1.0.0:
785 | version "1.2.0"
786 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
787 | integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
788 |
789 | minimatch@^3.0.2, minimatch@^3.0.4:
790 | version "3.0.4"
791 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
792 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
793 | dependencies:
794 | brace-expansion "^1.1.7"
795 |
796 | minimist@0.0.8:
797 | version "0.0.8"
798 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
799 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
800 |
801 | mkdirp@^0.5.1:
802 | version "0.5.1"
803 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
804 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
805 | dependencies:
806 | minimist "0.0.8"
807 |
808 | ms@2.0.0:
809 | version "2.0.0"
810 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
811 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
812 |
813 | ms@^2.1.1:
814 | version "2.1.2"
815 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
816 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
817 |
818 | mute-stream@0.0.7:
819 | version "0.0.7"
820 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
821 | integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
822 |
823 | natural-compare@^1.4.0:
824 | version "1.4.0"
825 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
826 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
827 |
828 | normalize-package-data@^2.3.2:
829 | version "2.5.0"
830 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
831 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
832 | dependencies:
833 | hosted-git-info "^2.1.4"
834 | resolve "^1.10.0"
835 | semver "2 || 3 || 4 || 5"
836 | validate-npm-package-license "^3.0.1"
837 |
838 | object-assign@^4.0.1:
839 | version "4.1.1"
840 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
841 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
842 |
843 | object-keys@^1.0.11, object-keys@^1.0.12:
844 | version "1.1.1"
845 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
846 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
847 |
848 | object.assign@^4.0.4:
849 | version "4.1.0"
850 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
851 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
852 | dependencies:
853 | define-properties "^1.1.2"
854 | function-bind "^1.1.1"
855 | has-symbols "^1.0.0"
856 | object-keys "^1.0.11"
857 |
858 | once@^1.3.0:
859 | version "1.4.0"
860 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
861 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
862 | dependencies:
863 | wrappy "1"
864 |
865 | onetime@^2.0.0:
866 | version "2.0.1"
867 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
868 | integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=
869 | dependencies:
870 | mimic-fn "^1.0.0"
871 |
872 | optionator@^0.8.2:
873 | version "0.8.2"
874 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
875 | integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=
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-tmpdir@~1.0.2:
885 | version "1.0.2"
886 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
887 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
888 |
889 | p-limit@^1.1.0:
890 | version "1.3.0"
891 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
892 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
893 | dependencies:
894 | p-try "^1.0.0"
895 |
896 | p-locate@^2.0.0:
897 | version "2.0.0"
898 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
899 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=
900 | dependencies:
901 | p-limit "^1.1.0"
902 |
903 | p-try@^1.0.0:
904 | version "1.0.0"
905 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
906 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
907 |
908 | parse-json@^2.2.0:
909 | version "2.2.0"
910 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
911 | integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
912 | dependencies:
913 | error-ex "^1.2.0"
914 |
915 | path-exists@^3.0.0:
916 | version "3.0.0"
917 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
918 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
919 |
920 | path-is-absolute@^1.0.0:
921 | version "1.0.1"
922 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
923 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
924 |
925 | path-is-inside@^1.0.2:
926 | version "1.0.2"
927 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
928 | integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=
929 |
930 | path-parse@^1.0.6:
931 | version "1.0.6"
932 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
933 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
934 |
935 | path-type@^2.0.0:
936 | version "2.0.0"
937 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
938 | integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=
939 | dependencies:
940 | pify "^2.0.0"
941 |
942 | pify@^2.0.0:
943 | version "2.3.0"
944 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
945 | integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
946 |
947 | pkg-dir@^2.0.0:
948 | version "2.0.0"
949 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
950 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=
951 | dependencies:
952 | find-up "^2.1.0"
953 |
954 | pluralize@^7.0.0:
955 | version "7.0.0"
956 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
957 | integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==
958 |
959 | prelude-ls@~1.1.2:
960 | version "1.1.2"
961 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
962 | integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
963 |
964 | process-nextick-args@~2.0.0:
965 | version "2.0.1"
966 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
967 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
968 |
969 | progress@^2.0.0:
970 | version "2.0.3"
971 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
972 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
973 |
974 | pseudomap@^1.0.2:
975 | version "1.0.2"
976 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
977 | integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM=
978 |
979 | react-is@^16.7.0:
980 | version "16.8.6"
981 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
982 | integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==
983 |
984 | react-native-iphone-x-helper@^1.2.0:
985 | version "1.2.1"
986 | resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.2.1.tgz#645e2ffbbb49e80844bb4cbbe34a126fda1e6772"
987 | integrity sha512-/VbpIEp8tSNNHIvstuA3Swx610whci1Zpc9mqNkqn14DkMbw+ORviln2u0XyHG1kPvvwTNGZY6QpeFwxYaSdbQ==
988 |
989 | react-native-swipe-gestures@^1.0.2:
990 | version "1.0.3"
991 | resolved "https://registry.yarnpkg.com/react-native-swipe-gestures/-/react-native-swipe-gestures-1.0.3.tgz#4160f8d459627323f3a3d2770af4bcd82fd054f5"
992 | integrity sha512-KOouRzPB2fHFjVombsSdRfYo8SFeNVa4Ho4B5il87DuuF26sPNOtb3je+qaT/xVptedOsCzRPJGbWFMsaBApgg==
993 |
994 | read-pkg-up@^2.0.0:
995 | version "2.0.0"
996 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
997 | integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=
998 | dependencies:
999 | find-up "^2.0.0"
1000 | read-pkg "^2.0.0"
1001 |
1002 | read-pkg@^2.0.0:
1003 | version "2.0.0"
1004 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
1005 | integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=
1006 | dependencies:
1007 | load-json-file "^2.0.0"
1008 | normalize-package-data "^2.3.2"
1009 | path-type "^2.0.0"
1010 |
1011 | readable-stream@^2.2.2:
1012 | version "2.3.6"
1013 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
1014 | integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
1015 | dependencies:
1016 | core-util-is "~1.0.0"
1017 | inherits "~2.0.3"
1018 | isarray "~1.0.0"
1019 | process-nextick-args "~2.0.0"
1020 | safe-buffer "~5.1.1"
1021 | string_decoder "~1.1.1"
1022 | util-deprecate "~1.0.1"
1023 |
1024 | regexpp@^1.0.1:
1025 | version "1.1.0"
1026 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-1.1.0.tgz#0e3516dd0b7904f413d2d4193dce4618c3a689ab"
1027 | integrity sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==
1028 |
1029 | require-uncached@^1.0.3:
1030 | version "1.0.3"
1031 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
1032 | integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=
1033 | dependencies:
1034 | caller-path "^0.1.0"
1035 | resolve-from "^1.0.0"
1036 |
1037 | resolve-from@^1.0.0:
1038 | version "1.0.1"
1039 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
1040 | integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=
1041 |
1042 | resolve@^1.10.0, resolve@^1.11.0, resolve@^1.5.0:
1043 | version "1.11.1"
1044 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e"
1045 | integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==
1046 | dependencies:
1047 | path-parse "^1.0.6"
1048 |
1049 | restore-cursor@^2.0.0:
1050 | version "2.0.0"
1051 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
1052 | integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368=
1053 | dependencies:
1054 | onetime "^2.0.0"
1055 | signal-exit "^3.0.2"
1056 |
1057 | rimraf@~2.6.2:
1058 | version "2.6.3"
1059 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
1060 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
1061 | dependencies:
1062 | glob "^7.1.3"
1063 |
1064 | run-async@^2.2.0:
1065 | version "2.3.0"
1066 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
1067 | integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA=
1068 | dependencies:
1069 | is-promise "^2.1.0"
1070 |
1071 | rx-lite-aggregates@^4.0.8:
1072 | version "4.0.8"
1073 | resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be"
1074 | integrity sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=
1075 | dependencies:
1076 | rx-lite "*"
1077 |
1078 | rx-lite@*, rx-lite@^4.0.8:
1079 | version "4.0.8"
1080 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
1081 | integrity sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=
1082 |
1083 | safe-buffer@~5.1.0, safe-buffer@~5.1.1:
1084 | version "5.1.2"
1085 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
1086 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1087 |
1088 | "safer-buffer@>= 2.1.2 < 3":
1089 | version "2.1.2"
1090 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
1091 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
1092 |
1093 | "semver@2 || 3 || 4 || 5", semver@^5.3.0:
1094 | version "5.7.0"
1095 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
1096 | integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
1097 |
1098 | shebang-command@^1.2.0:
1099 | version "1.2.0"
1100 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
1101 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
1102 | dependencies:
1103 | shebang-regex "^1.0.0"
1104 |
1105 | shebang-regex@^1.0.0:
1106 | version "1.0.0"
1107 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
1108 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
1109 |
1110 | signal-exit@^3.0.2:
1111 | version "3.0.2"
1112 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
1113 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
1114 |
1115 | slice-ansi@1.0.0:
1116 | version "1.0.0"
1117 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
1118 | integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==
1119 | dependencies:
1120 | is-fullwidth-code-point "^2.0.0"
1121 |
1122 | spdx-correct@^3.0.0:
1123 | version "3.1.0"
1124 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4"
1125 | integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==
1126 | dependencies:
1127 | spdx-expression-parse "^3.0.0"
1128 | spdx-license-ids "^3.0.0"
1129 |
1130 | spdx-exceptions@^2.1.0:
1131 | version "2.2.0"
1132 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
1133 | integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
1134 |
1135 | spdx-expression-parse@^3.0.0:
1136 | version "3.0.0"
1137 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
1138 | integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
1139 | dependencies:
1140 | spdx-exceptions "^2.1.0"
1141 | spdx-license-ids "^3.0.0"
1142 |
1143 | spdx-license-ids@^3.0.0:
1144 | version "3.0.4"
1145 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1"
1146 | integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==
1147 |
1148 | sprintf-js@~1.0.2:
1149 | version "1.0.3"
1150 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
1151 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
1152 |
1153 | string-width@^2.1.0, string-width@^2.1.1:
1154 | version "2.1.1"
1155 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
1156 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
1157 | dependencies:
1158 | is-fullwidth-code-point "^2.0.0"
1159 | strip-ansi "^4.0.0"
1160 |
1161 | string_decoder@~1.1.1:
1162 | version "1.1.1"
1163 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
1164 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
1165 | dependencies:
1166 | safe-buffer "~5.1.0"
1167 |
1168 | strip-ansi@^3.0.0:
1169 | version "3.0.1"
1170 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1171 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
1172 | dependencies:
1173 | ansi-regex "^2.0.0"
1174 |
1175 | strip-ansi@^4.0.0:
1176 | version "4.0.0"
1177 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
1178 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
1179 | dependencies:
1180 | ansi-regex "^3.0.0"
1181 |
1182 | strip-bom@^3.0.0:
1183 | version "3.0.0"
1184 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
1185 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
1186 |
1187 | strip-json-comments@~2.0.1:
1188 | version "2.0.1"
1189 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
1190 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
1191 |
1192 | supports-color@^2.0.0:
1193 | version "2.0.0"
1194 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
1195 | integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
1196 |
1197 | supports-color@^5.3.0:
1198 | version "5.5.0"
1199 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
1200 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
1201 | dependencies:
1202 | has-flag "^3.0.0"
1203 |
1204 | table@4.0.2:
1205 | version "4.0.2"
1206 | resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36"
1207 | integrity sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==
1208 | dependencies:
1209 | ajv "^5.2.3"
1210 | ajv-keywords "^2.1.0"
1211 | chalk "^2.1.0"
1212 | lodash "^4.17.4"
1213 | slice-ansi "1.0.0"
1214 | string-width "^2.1.1"
1215 |
1216 | text-table@~0.2.0:
1217 | version "0.2.0"
1218 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
1219 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
1220 |
1221 | through@^2.3.6:
1222 | version "2.3.8"
1223 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
1224 | integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
1225 |
1226 | tmp@^0.0.33:
1227 | version "0.0.33"
1228 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
1229 | integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==
1230 | dependencies:
1231 | os-tmpdir "~1.0.2"
1232 |
1233 | type-check@~0.3.2:
1234 | version "0.3.2"
1235 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
1236 | integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
1237 | dependencies:
1238 | prelude-ls "~1.1.2"
1239 |
1240 | typedarray@^0.0.6:
1241 | version "0.0.6"
1242 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
1243 | integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
1244 |
1245 | util-deprecate@~1.0.1:
1246 | version "1.0.2"
1247 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1248 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
1249 |
1250 | validate-npm-package-license@^3.0.1:
1251 | version "3.0.4"
1252 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
1253 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
1254 | dependencies:
1255 | spdx-correct "^3.0.0"
1256 | spdx-expression-parse "^3.0.0"
1257 |
1258 | which@^1.2.9:
1259 | version "1.3.1"
1260 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
1261 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
1262 | dependencies:
1263 | isexe "^2.0.0"
1264 |
1265 | wordwrap@~1.0.0:
1266 | version "1.0.0"
1267 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
1268 | integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=
1269 |
1270 | wrappy@1:
1271 | version "1.0.2"
1272 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1273 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
1274 |
1275 | write@^0.2.1:
1276 | version "0.2.1"
1277 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
1278 | integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=
1279 | dependencies:
1280 | mkdirp "^0.5.1"
1281 |
1282 | yallist@^2.1.2:
1283 | version "2.1.2"
1284 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
1285 | integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
1286 |
--------------------------------------------------------------------------------