├── .eslintignore
├── carousel-demo
├── .watchmanconfig
├── .gitignore
├── App.js
├── assets
│ └── icons
│ │ ├── app-icon.png
│ │ └── loading-icon.png
├── .babelrc
├── package.json
├── app.json
└── src
│ ├── MainPage.js
│ ├── CarouselPage.js
│ └── CarouselDemo.js
├── carousel-example
├── .watchmanconfig
├── .gitignore
├── assets
│ └── icons
│ │ ├── app-icon.png
│ │ └── loading-icon.png
├── .babelrc
├── package.json
├── app.json
└── App.js
├── .gitignore
├── .babelrc
├── .eslintrc
├── src
├── index.js
├── components
│ ├── CarouselMiniHeader.js
│ ├── PageControl.js
│ ├── Carousel.js
│ ├── CarouselCard.js
│ ├── ViewPager.js
│ └── CarouselHeader.js
└── CarouselComponent.js
├── LICENSE.md
├── package.json
├── dist
├── components
│ ├── CarouselMiniHeader.js
│ ├── PageControl.js
│ ├── ViewPager.js
│ ├── CarouselCard.js
│ ├── Carousel.js
│ └── CarouselHeader.js
├── index.js
└── CarouselComponent.js
├── README.md
├── docs
└── README.md
└── yarn.lock
/.eslintignore:
--------------------------------------------------------------------------------
1 | dist
2 |
--------------------------------------------------------------------------------
/carousel-demo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/carousel-example/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | carousel-example/node_modules
3 | npm-debug.*
4 |
--------------------------------------------------------------------------------
/carousel-demo/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/**/*
2 | .expo/*
3 | npm-debug.*
4 |
--------------------------------------------------------------------------------
/carousel-example/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/**/*
2 | .expo/*
3 | npm-debug.*
4 |
--------------------------------------------------------------------------------
/carousel-demo/App.js:
--------------------------------------------------------------------------------
1 | import CarouselDemo from './src/CarouselDemo';
2 | export default CarouselDemo
3 |
--------------------------------------------------------------------------------
/carousel-demo/assets/icons/app-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jacklam718/react-native-carousel-component/HEAD/carousel-demo/assets/icons/app-icon.png
--------------------------------------------------------------------------------
/carousel-example/assets/icons/app-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jacklam718/react-native-carousel-component/HEAD/carousel-example/assets/icons/app-icon.png
--------------------------------------------------------------------------------
/carousel-demo/assets/icons/loading-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jacklam718/react-native-carousel-component/HEAD/carousel-demo/assets/icons/loading-icon.png
--------------------------------------------------------------------------------
/carousel-example/assets/icons/loading-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jacklam718/react-native-carousel-component/HEAD/carousel-example/assets/icons/loading-icon.png
--------------------------------------------------------------------------------
/carousel-demo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["babel-preset-expo"],
3 | "env": {
4 | "development": {
5 | "plugins": ["transform-react-jsx-source"]
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/carousel-example/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["babel-preset-expo"],
3 | "env": {
4 | "development": {
5 | "plugins": ["transform-react-jsx-source"]
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "es2016",
4 | "react-native"
5 | ],
6 | "env": {
7 | "development": {
8 | "plugins": ["flow-react-proptypes"]
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "airbnb",
3 | "installedESLint": true,
4 | "parser": "babel-eslint",
5 | "ecmaFeatures": {
6 | "jsx": true
7 | },
8 | "env": {
9 | "es6": true
10 | },
11 | "plugins": [
12 | "react",
13 | "jsx-a11y"
14 | ],
15 | "rules": {
16 | "import/no-extraneous-dependencies": 0,
17 | "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }]
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/carousel-example/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "carousel-example",
3 | "version": "0.0.0",
4 | "description": "Hello Expo!",
5 | "author": null,
6 | "private": true,
7 | "main": "node_modules/expo/AppEntry.js",
8 | "dependencies": {
9 | "expo": "^19.0.0",
10 | "react": "16.0.0-alpha.12",
11 | "react-native": "https://github.com/expo/react-native/archive/sdk-19.0.0.tar.gz",
12 | "react-native-carousel-component": ".."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/carousel-demo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "carousel-demo",
3 | "version": "0.0.0",
4 | "description": "Hello Expo!",
5 | "author": null,
6 | "private": true,
7 | "main": "node_modules/expo/AppEntry.js",
8 | "dependencies": {
9 | "expo": "^19.0.0",
10 | "react": "16.0.0-alpha.12",
11 | "react-native": "https://github.com/expo/react-native/archive/sdk-19.0.0.tar.gz",
12 | "react-native-deprecated-custom-components": "^0.1.1"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import CarouselComponent from './CarouselComponent';
2 | import Carousel from './components/Carousel';
3 | import CarouselCard from './components/CarouselCard';
4 | import CarouselHeader from './components/CarouselHeader';
5 | import CarouselMiniHeader from './components/CarouselMiniHeader';
6 | import ViewPager from './components/ViewPager';
7 | import PageControl from './components/PageControl';
8 |
9 | export {
10 | Carousel,
11 | CarouselCard,
12 | CarouselHeader,
13 | CarouselMiniHeader,
14 | ViewPager,
15 | PageControl,
16 | };
17 |
18 | export default CarouselComponent;
19 |
--------------------------------------------------------------------------------
/carousel-demo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "expo": {
3 | "name": "carousel-demo",
4 | "description": "An empty new project",
5 | "slug": "carousel-demo",
6 | "privacy": "public",
7 | "sdkVersion": "19.0.0",
8 | "version": "1.0.0",
9 | "orientation": "portrait",
10 | "primaryColor": "#cccccc",
11 | "icon": "./assets/icons/app-icon.png",
12 | "loading": {
13 | "icon": "./assets/icons/loading-icon.png",
14 | "hideExponentText": false
15 | },
16 | "packagerOpts": {
17 | "assetExts": ["ttf", "mp4"]
18 | },
19 | "ios": {
20 | "supportsTablet": true
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/carousel-example/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "expo": {
3 | "name": "carousel-example",
4 | "description": "An empty new project",
5 | "slug": "carousel-example",
6 | "privacy": "public",
7 | "sdkVersion": "19.0.0",
8 | "version": "1.0.0",
9 | "orientation": "portrait",
10 | "primaryColor": "#cccccc",
11 | "icon": "./assets/icons/app-icon.png",
12 | "loading": {
13 | "icon": "./assets/icons/loading-icon.png",
14 | "hideExponentText": false
15 | },
16 | "packagerOpts": {
17 | "assetExts": ["ttf", "mp4"]
18 | },
19 | "ios": {
20 | "supportsTablet": true
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/CarouselMiniHeader.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React from 'react';
4 | import type { ReactElement } from 'react';
5 | import { Animated, StyleSheet, PixelRatio } from 'react-native';
6 |
7 | const styles = StyleSheet.create({
8 | miniHeader: {
9 | backgroundColor: 'white',
10 | flexDirection: 'row',
11 | alignItems: 'center',
12 | position: 'absolute',
13 | left: 12,
14 | top: 0,
15 | right: 12,
16 | paddingVertical: 9,
17 | borderBottomWidth: 1 / PixelRatio.get(),
18 | borderBottomColor: '#E1E1E1',
19 | },
20 | });
21 |
22 | type Props = {
23 | style?: any;
24 | children: any;
25 | }
26 |
27 | const defaultProps = {
28 | style: null,
29 | };
30 |
31 | export default function CarouselMiniHeader({ children, style }: Props): ReactElement {
32 | return (
33 |
37 | {children}
38 |
39 | );
40 | }
41 |
42 | CarouselMiniHeader.defaultProps = defaultProps;
43 |
--------------------------------------------------------------------------------
/carousel-demo/src/MainPage.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import { View, StyleSheet, Button } from 'react-native';
3 | import { Navigator } from 'react-native-deprecated-custom-components';
4 |
5 | const styles = StyleSheet.create({
6 | container: {
7 | flex: 1,
8 | backgroundColor: 'white',
9 | padding: 20,
10 | justifyContent: 'center',
11 | },
12 | });
13 |
14 | export default class MainPage extends Component {
15 | toCarouselPage = () => {
16 | this.props.navigator.push({ title: 'Carousel Page', name: 'carouselPage' });
17 | }
18 |
19 | render() {
20 | return (
21 |
22 |
23 |
27 |
28 |
29 |
30 |
34 |
35 |
36 | );
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2017 Jack Lam
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 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react-native-carousel-component",
3 | "version": "0.2.17",
4 | "description": "React Native Carousel Component for IOS and Android",
5 | "main": "dist/index.js",
6 | "repository": "git@github.com:jacklam718/react-native-carousel-component.git",
7 | "author": "Jack Lam ",
8 | "license": "MIT",
9 | "scripts": {
10 | "clean": "rimraf dist",
11 | "build": "npm run clean && babel src/ -d dist/"
12 | },
13 | "devDependencies": {
14 | "babel-eslint": "^7.2.3",
15 | "babel-plugin-flow-react-proptypes": "^3.4.3",
16 | "eslint": "^4.3.0",
17 | "eslint-config-airbnb": "^15.1.0",
18 | "eslint-plugin-import": "^2.7.0",
19 | "eslint-plugin-jsx-a11y": "^6.0.2",
20 | "eslint-plugin-react": "^7.1.0",
21 | "flow-bin": "^0.51.1",
22 | "prop-types": "^15.5.10",
23 | "rimraf": "^2.6.1"
24 | },
25 | "dependencies": {
26 | "babel-preset-es2016": "^6.24.1",
27 | "babel-preset-react-native": "^2.1.0",
28 | "react-native-animated-overlay": "^0.0.10",
29 | "react-native-deprecated-custom-components": "^0.1.1",
30 | "react-native-root-siblings": "^1.2.1"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/dist/components/CarouselMiniHeader.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _jsxFileName='src/components/CarouselMiniHeader.js';exports.default=CarouselMiniHeader;var _react=require('react');var _react2=_interopRequireDefault(_react);var _reactNative=require('react-native');function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}var babelPluginFlowReactPropTypes_proptype_ReactElement=require('react').babelPluginFlowReactPropTypes_proptype_ReactElement||require('prop-types').any;var styles=_reactNative.StyleSheet.create({miniHeader:{backgroundColor:'white',flexDirection:'row',alignItems:'center',position:'absolute',left:12,top:0,right:12,paddingVertical:9,borderBottomWidth:1/_reactNative.PixelRatio.get(),borderBottomColor:'#E1E1E1'}});var defaultProps={style:null};function CarouselMiniHeader(_ref){var children=_ref.children,style=_ref.style;return _react2.default.createElement(_reactNative.Animated.View,{numberOfLines:1,style:[styles.miniHeader,style],__source:{fileName:_jsxFileName,lineNumber:33}},children);}CarouselMiniHeader.propTypes={style:require('prop-types').any,children:require('prop-types').any.isRequired};CarouselMiniHeader.defaultProps=defaultProps;
--------------------------------------------------------------------------------
/dist/index.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});exports.PageControl=exports.ViewPager=exports.CarouselMiniHeader=exports.CarouselHeader=exports.CarouselCard=exports.Carousel=undefined;var _CarouselComponent=require('./CarouselComponent');var _CarouselComponent2=_interopRequireDefault(_CarouselComponent);var _Carousel=require('./components/Carousel');var _Carousel2=_interopRequireDefault(_Carousel);var _CarouselCard=require('./components/CarouselCard');var _CarouselCard2=_interopRequireDefault(_CarouselCard);var _CarouselHeader=require('./components/CarouselHeader');var _CarouselHeader2=_interopRequireDefault(_CarouselHeader);var _CarouselMiniHeader=require('./components/CarouselMiniHeader');var _CarouselMiniHeader2=_interopRequireDefault(_CarouselMiniHeader);var _ViewPager=require('./components/ViewPager');var _ViewPager2=_interopRequireDefault(_ViewPager);var _PageControl=require('./components/PageControl');var _PageControl2=_interopRequireDefault(_PageControl);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}exports.Carousel=_Carousel2.default;exports.CarouselCard=_CarouselCard2.default;exports.CarouselHeader=_CarouselHeader2.default;exports.CarouselMiniHeader=_CarouselMiniHeader2.default;exports.ViewPager=_ViewPager2.default;exports.PageControl=_PageControl2.default;exports.default=_CarouselComponent2.default;
--------------------------------------------------------------------------------
/src/components/PageControl.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React, { Component } from 'react';
4 | import type { ReactElement } from 'react';
5 | import { View, StyleSheet } from 'react-native';
6 |
7 | const CIRCLE_SIZE = 4;
8 |
9 | const styles = StyleSheet.create({
10 | container: {
11 | alignItems: 'center',
12 | justifyContent: 'center',
13 | },
14 | innerContainer: {
15 | flexDirection: 'row',
16 | },
17 | circle: {
18 | margin: 2,
19 | width: CIRCLE_SIZE,
20 | height: CIRCLE_SIZE,
21 | borderRadius: CIRCLE_SIZE / 2,
22 | },
23 | full: {
24 | backgroundColor: '#fff',
25 | },
26 | empty: {
27 | backgroundColor: '#fff5',
28 | },
29 | });
30 |
31 | type Props = {
32 | style?: any;
33 | count: number;
34 | selectedIndex: number;
35 | }
36 |
37 | const defaultProps = {
38 | style: null,
39 | };
40 |
41 | function Circle({ isSelected }: { isSelected: boolean }): ReactElement {
42 | const extraStyle = isSelected ? styles.full : styles.empty;
43 | return (
44 |
45 | );
46 | }
47 |
48 | class PageControl extends Component {
49 | static defaultProps = defaultProps
50 |
51 | props: Props
52 |
53 | render() {
54 | const {
55 | style,
56 | count,
57 | selectedIndex,
58 | } = this.props;
59 |
60 | const images = [];
61 | for (let i = 0; i < count; i += 1) {
62 | const isSelected = selectedIndex === i;
63 | images.push();
64 | }
65 |
66 | return (
67 |
68 |
69 | {images}
70 |
71 |
72 | );
73 | }
74 | }
75 |
76 | export default PageControl;
77 |
--------------------------------------------------------------------------------
/carousel-demo/src/CarouselPage.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import { View, Text, StyleSheet, StatusBar, Button } from 'react-native';
3 | import CarouselComponent, { CarouselCard } from 'react-native-carousel-component';
4 |
5 | const styles = StyleSheet.create({
6 | container: {
7 | flex: 1,
8 | backgroundColor: 'white',
9 | // alignItems: 'center',
10 | padding: 20,
11 | justifyContent: 'center',
12 | },
13 | });
14 |
15 | export default class CarouselPage extends Component {
16 | constructor(props) {
17 | super(props);
18 |
19 | this.state = {
20 | show: false,
21 | };
22 |
23 | this.show = this.show.bind(this);
24 | this.dismiss = this.dismiss.bind(this);
25 | }
26 |
27 | show() {
28 | this.carousel.show();
29 | }
30 |
31 | dismiss() {
32 | this.carousel.dismiss();
33 | }
34 |
35 | get cards() {
36 | const cards = [];
37 | for (let i = 0; i < 4; i += 1) {
38 | cards.push(
39 | ,
49 | ]}
50 | >
51 |
52 | ,
53 | );
54 | }
55 |
56 | return cards;
57 | }
58 |
59 | render() {
60 | return (
61 | { this.carousel = carousel; }}
63 | cards={this.cards}
64 | showPageControl={false}
65 | show
66 | >
67 |
68 |
72 |
73 |
74 | );
75 | }
76 | }
77 |
--------------------------------------------------------------------------------
/carousel-example/App.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import { View, Button, StatusBar, Text, StyleSheet, ScrollView } from 'react-native';
3 |
4 | import CarouselComponent, {
5 | Carousel,
6 | CarouselCard,
7 | CarouselHeader,
8 | CarouselMiniHeader,
9 | ViewPager,
10 | } from 'react-native-carousel-component';
11 |
12 | const styles = StyleSheet.create({
13 | container: {
14 | flex: 1,
15 | backgroundColor: 'white',
16 | // alignItems: 'center',
17 | padding: 20,
18 | justifyContent: 'center',
19 | },
20 | });
21 |
22 | export default class CarouselExample extends Component {
23 | constructor(props) {
24 | super(props);
25 |
26 | (this: any).show = this.show.bind(this);
27 | (this: any).dismiss = this.dismiss.bind(this);
28 | }
29 |
30 | show() {
31 | this.carousel.show();
32 | }
33 |
34 | dismiss() {
35 | this.carousel.dismiss();
36 | }
37 |
38 | renderCards() {
39 | const cards = [];
40 | for (let i = 0; i < 4; i += 1) {
41 | cards.push(
42 | ,
52 | ]}
53 | >
54 |
55 | ,
56 | );
57 | }
58 |
59 | return cards;
60 | }
61 |
62 | render() {
63 | return (
64 | { this.carousel = carousel; }}
66 | cards={this.renderCards()}
67 | title="Intro React Native"
68 | subTitle="What Is React Native?"
69 | leftItem={{
70 | title: 'CLOSE',
71 | layout: 'title',
72 | onPress: this.dismiss,
73 | }}
74 | >
75 |
76 |
77 |
78 |
82 |
83 |
84 |
85 |
86 | );
87 | }
88 | }
89 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## React Native Carousel Component
2 | React Native Carousel Component for iOS & Android.
3 |
4 | Pull request are welcomed. Please follow the Airbnb style guide [Airbnb JavaScript](https://github.com/airbnb/javascript)
5 |
6 |
7 | [Try it with Exponent](https://exp.host/@jacklam718/carousel-demo)
8 |
9 |
10 |
11 |
12 |
13 |
14 | ## Installation
15 |
16 | `react-native <= 0.4.3 install 'react-native-carousel-component: ^0.1.17'`
17 |
18 | `react-native >= 0.4.4 install 'react-native-carousel-component: ^0.2.17'`
19 |
20 | ```bash
21 | yarn add react-native-carousel-component
22 | # OR
23 | npm install --save react-native-carousel-component
24 | ```
25 |
26 | ## Docs
27 | [Docs](https://github.com/jacklam718/react-native-carousel-component/tree/master/docs/README.md)
28 |
29 | ## Example
30 | [Example App](https://github.com/jacklam718/react-native-carousel-component/blob/master/carousel-example/CarouselExample.js)
31 |
32 | [Demo App for Demonstrate How To Use `CarouselComponent` +
33 | `Navigator` with `Navigator.NavigationBar` ](https://github.com/jacklam718/react-native-carousel-component/blob/master/carousel-demo/src/CarouselDemo.js)
34 |
35 |
36 | ## Usage with `CorouselComponent`
37 | ```javascript
38 | import CarouselComponent, { CarouselCard } from 'react-native-carousel-component';
39 |
40 | const cards = [
41 |
46 | // You can put your view here
47 |
48 | ];
49 |
50 | { this.carousel = carousel; }}
52 | cards={cards}
53 | title="Carousel Title"
54 | subTitle="Carousel Sub Title"
55 | showPageControl
56 | leftItem={{
57 | title: 'CLOSE',
58 | layout: 'title',
59 | onPress: this.dismiss,
60 | }}
61 | >
62 | // You can put your view here
63 |
64 | ```
65 |
66 | #### Note: If you uses `Navigator` with `Navigator.NavigationBar` in your app please put Navigator into `CarouselComponent`
67 |
68 | ##### For example:
69 | ```javascript
70 | { this.carousel = carousel; }}
72 | cards={cards}
73 | title="Carousel Title"
74 | subTitle="Carousel Sub Title"
75 | showPageControl
76 | leftItem={{
77 | title: 'CLOSE',
78 | layout: 'title',
79 | onPress: this.dismiss,
80 | }}
81 | >
82 | { this.navigator = navigator; }}
84 | navigationBar={}
85 | style={styles.navigator}
86 | />
87 |
88 | ```
89 |
90 | #### You can call `show` method open the carousel and call the `dismiss` to close the carousel
91 | ```javascript
92 | this.carousel.show(() => {
93 | console.log('callback for show method')
94 | });
95 |
96 | this.carousel.dismiss(() => {
97 | console.log('callback for dismiss method')
98 | });
99 | ```
100 |
--------------------------------------------------------------------------------
/dist/components/PageControl.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _createClass=function(){function defineProperties(target,props){for(var i=0;i {}` | | |
19 | | `onDismiss` | `Function` | `() => {}` | | |
20 | | `style` | `any` | `null` | | |
21 | | `title` | `string` | `null` | | |
22 | | `titleStyle` | `any` | `null` | | |
23 | | `titleContentStyle` | `any` | `null` | | |
24 | | `subTitle` | `string` | `null` | | |
25 | | `subTitleStyle` | `any` | `null` | | |
26 | | `header` | `ReactElement` | `null` | | |
27 | | `headerContentStyle` | `any` | `null` | | |
28 | | `leftItem` | `Object` | `null` | | |
29 | | `rightItem` | `Object` | `null` | | |
30 | | `showPageControl` | `boolean` | `true` | | |
31 | | `selectedIndex` | `number` | `0` | | |
32 | | `onSelectedIndexChange` | `Function` | `() => {}` | | |
33 | | `viewPagerStyle` | `any` | `null` | | |
34 | | `cards` | `Array` | `[]` | | |
35 | | `carouselStyle` | `any` | `null` | | |
36 | | `children` | `any` | `null` | | |
37 |
38 | ### Carousel
39 | | Prop | Type | Default | Note |
40 | |---|---|---|---|
41 | | `style` | `any` | `null` | | |
42 | | `title` | `string` | `null` | | |
43 | | `titleStyle` | `any` | `null` | | |
44 | | `titleContentStyle` | `any` | `null` | | |
45 | | `subTitle` | `string` | `null` | | |
46 | | `subTitleStyle` | `any` | `null` | | |
47 | | `header` | `ReactElement` | `null` | | |
48 | | `headerContentStyle` | `any` | `null` | | |
49 | | `leftItem` | `Object` | `null` | | |
50 | | `rightItem` | `Object` | `null` | | |
51 | | `showPageControl` | `boolean` | `true` | | |
52 | | `selectedIndex` | `number` | `0` | | |
53 | | `onSelectedIndexChange` | `Function` | `() => {}` | | |
54 | | `viewPagerStyle` | `any` | `null` | | |
55 | | `cards` | `Array` | `[]` | | |
56 |
57 |
58 | ### CarouselCard
59 | | Prop | Type | Default | Note |
60 | |---|---|---|---|
61 | | `style` | `any` | `null` | | |
62 | | `title` | `string` | `null` | | |
63 | | `titleStyle` | `any` | `null` | | |
64 | | `description` | `string` | null | | |
65 | | `descriptionStyle` | `any` | null | | |
66 | | `contentContainerStyle` | `any` | `null` | | |
67 | | `actions` | `Array` | `null` | | |
68 | | `actionsStyle` | `any` | `null` | | |
69 | | `showMiniHeader` | `boolean` | `true` | | |
70 | | `children` | `any` | `null` | | |
71 |
72 | ### CarouselHeader
73 | | Prop | Type | Default | Note |
74 | |---|---|---|---|
75 | | `style` | `any` | `null` | | |
76 | | `title` | `string` | `null` | | |
77 | | `leftItem` | `Item` | `null` | | |
78 | | `rightItem` | `Item` | `null` | | |
79 | | `extraItems` | `Array- ` | `null` | | |
80 | | `foreground` | `Foreground` | `null` | | |
81 | | `children` | `any` | null | | |
82 |
83 | ### CarouselMiniHeader
84 | | Prop | Type | Default | Note |
85 | |---|---|---|---|
86 | | `style` | `any` | `null` | | |
87 | | `children` | `any` | | | |
88 |
89 | ### ViewPager
90 | | Prop | Type | Default | Note |
91 | |---|---|---|---|
92 | | `style` | `any` | `null` | | |
93 | | `bounces` | `boolean` | `true` | | |
94 | | `count` | `number` | | | |
95 | | `selectedIndex` | `number` | | | |
96 | | `onSelectedIndexChange` | `Function` | () => {} | | |
97 | | `children` | `any` | | | |
98 |
99 | ### PageControl
100 | | Prop | Type | Default | Note |
101 | |---|---|---|---|
102 | | `style` | `any` | `null` | | |
103 | | `count` | `number` | | | |
104 | | `selectedIndex` | `number` | | | |
105 |
--------------------------------------------------------------------------------
/src/CarouselComponent.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React, { Component } from 'react';
4 | import {
5 | View,
6 | StyleSheet,
7 | Dimensions,
8 | BackAndroid as RNBackAndroid,
9 | BackHandler as RNBackHandler,
10 | } from 'react-native';
11 | import { Navigator } from 'react-native-deprecated-custom-components'
12 | import AnimatedOverlay from 'react-native-animated-overlay';
13 | import Carousel from './components/Carousel';
14 |
15 | const BackHandler = RNBackHandler || RNBackAndroid
16 | const HARDWARE_BACK_PRESS_EVENT: string = 'hardwareBackPress';
17 | const { width: WIDTH, height: HEIGHT } = Dimensions.get('window');
18 |
19 | const styles = StyleSheet.create({
20 | container: {
21 | flex: 1,
22 | },
23 | containerForNoChildren: {
24 | flex: 1,
25 | position: 'absolute',
26 | width: WIDTH,
27 | height: HEIGHT,
28 | },
29 | navigatorForNoChildren: {
30 | backgroundColor: 'transparent',
31 | },
32 | navigator: {
33 | flex: 1,
34 | backgroundColor: 'black',
35 | },
36 | });
37 |
38 | type Props = {
39 | onShow?: () => void;
40 | onDismiss?: () => void;
41 | dismissOnHardwareBackPress?: boolean;
42 | show?: boolean;
43 | navigatorStyle?: any;
44 | carouselStyle?: any;
45 | children?: any;
46 | }
47 |
48 | const defaultProps = {
49 | onShow: () => {},
50 | onDismiss: () => {},
51 | dismissOnHardwareBackPress: true,
52 | navigatorStyle: null,
53 | carouselStyle: null,
54 | show: null,
55 | children: null,
56 | };
57 |
58 | class CarouselComponent extends Component {
59 | props: Props
60 |
61 | static defaultProps = defaultProps
62 |
63 | constructor(props: Props) {
64 | super(props);
65 |
66 | this.state = {
67 | show: null,
68 | };
69 | }
70 |
71 | componentDidMount() {
72 | const { show } = this.props;
73 |
74 | if (show) {
75 | this.show();
76 | }
77 |
78 | BackHandler.addEventListener(HARDWARE_BACK_PRESS_EVENT, this.hardwareBackPressHandler);
79 | }
80 |
81 | componentWillReceiveProps(nextProps) {
82 | if (this.props.show !== nextProps.show) {
83 | if (nextProps.show) {
84 | this.show();
85 | return;
86 | }
87 | this.dismiss();
88 | }
89 | }
90 |
91 | componentWillUnmount() {
92 | BackHandler.removeEventListener(HARDWARE_BACK_PRESS_EVENT);
93 | }
94 |
95 | hardwareBackPressHandler = (): boolean => {
96 | const { dismissOnHardwareBackPress } = this.props;
97 |
98 | if (dismissOnHardwareBackPress && this.state.show) {
99 | this.dismiss();
100 | return true;
101 | }
102 |
103 | return false;
104 | }
105 |
106 | show = (callback?: Function = () => {}): void => {
107 | this.navigator.push({ show: true });
108 | this.setState({ show: true });
109 | callback();
110 | this.props.onShow();
111 | }
112 |
113 | dismiss = (callback?: Function = () => {}): void => {
114 | this.navigator.pop();
115 | this.setState({ show: false });
116 | callback();
117 | this.props.onDismiss();
118 | }
119 |
120 | configureScene = (): Object => {
121 | const { children } = this.props;
122 | if (children) {
123 | return Navigator.SceneConfigs.FloatFromBottom;
124 | }
125 | return { ...Navigator.SceneConfigs.FloatFromBottom, gestures: {} };
126 | }
127 |
128 | renderScene = (route, navigator) => {
129 | if (route.show) {
130 | return (
131 |
136 | );
137 | }
138 |
139 | return this.props.children;
140 | }
141 |
142 | render() {
143 | const { navigatorStyle, children } = this.props;
144 |
145 | return (
146 |
147 | { this.navigator = navigator; }}
149 | initialRoute={{ show: null }}
150 | configureScene={this.configureScene}
151 | renderScene={this.renderScene}
152 | style={[styles.navigator, navigatorStyle]}
153 | />
154 |
155 | );
156 | }
157 | }
158 |
159 | export default CarouselComponent;
160 |
--------------------------------------------------------------------------------
/src/components/Carousel.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React, { Component } from 'react';
4 | import type { ReactElement } from 'react';
5 | import { View, Text, StyleSheet } from 'react-native';
6 |
7 | import ViewPager from './ViewPager';
8 | import CarouselHeader from './CarouselHeader';
9 | import PageControl from './PageControl';
10 |
11 | const styles = StyleSheet.create({
12 | container: {
13 | flex: 1,
14 | },
15 | viewPager: {
16 | margin: 10,
17 | overflow: 'visible',
18 | backgroundColor: 'black',
19 | },
20 | title: {
21 | color: 'white',
22 | fontSize: 12,
23 | textAlign: 'center',
24 | },
25 | });
26 |
27 | type Props = {
28 | style?: any;
29 | viewPagerStyle?: any;
30 | selectedIndex?: number;
31 | onSelectedIndexChange?: (index: number) => void;
32 | cards?: Array;
33 | header?: ReactElement;
34 | headerContentStyle?: any;
35 | title?: string;
36 | titleStyle?: any;
37 | titleContentStyle?: any;
38 | subTitle?: string,
39 | subTitleStyle?: any;
40 | leftItem?: Object;
41 | rightItem?: Object;
42 | showPageControl: boolean;
43 | }
44 |
45 | const defaultProps = {
46 | header: null,
47 | headerContentStyle: null,
48 | title: null,
49 | titleStyle: null,
50 | titleContentStyle: null,
51 | subTitle: null,
52 | subTitleStyle: null,
53 | leftItem: null,
54 | rightItem: null,
55 | style: null,
56 | viewPagerStyle: null,
57 | selectedIndex: 0,
58 | onSelectedIndexChange: () => {},
59 | showPageControl: true,
60 | cards: [],
61 | };
62 |
63 | class CarouselComponent extends Component {
64 | static defaultProps = defaultProps
65 |
66 | props: Props
67 |
68 | constructor(props: Props) {
69 | super(props);
70 |
71 | this.state = {
72 | selectedIndex: props.selectedIndex,
73 | };
74 |
75 | (this: any).selectedIndexChange = this.selectedIndexChange.bind(this);
76 | }
77 |
78 | componentWillReceiveProps(nexProps) {
79 | if (this.props.selectedIndex !== nexProps.selectedIndex) {
80 | this.setState({ selectedIndex: nexProps.selectedIndex });
81 | }
82 | }
83 |
84 | selectedIndexChange(index: number): void {
85 | const { onSelectedIndexChange } = this.props;
86 | // callback
87 | onSelectedIndexChange(index);
88 | this.setState({ selectedIndex: index });
89 | }
90 |
91 | renderHeader() {
92 | if (this.props.header) {
93 | return this.props.header;
94 | }
95 |
96 | const {
97 | leftItem,
98 | rightItem,
99 | title,
100 | titleStyle,
101 | subTitle,
102 | subTitleStyle,
103 | headerContentStyle,
104 | titleContentStyle,
105 | showPageControl,
106 | cards,
107 | } = this.props;
108 |
109 | const pageControl = showPageControl ? (
110 |
114 | ) : null;
115 |
116 | return (
117 |
122 |
123 |
124 |
125 | {title}
126 |
127 | {'\n'}
128 |
129 | {subTitle}
130 |
131 |
132 | {pageControl}
133 |
134 |
135 | );
136 | }
137 |
138 | render() {
139 | const {
140 | cards,
141 | style,
142 | viewPagerStyle,
143 | } = this.props;
144 |
145 | return (
146 |
147 | {this.renderHeader()}
148 |
149 |
156 | {cards}
157 |
158 |
159 | );
160 | }
161 | }
162 |
163 | export default CarouselComponent;
164 |
--------------------------------------------------------------------------------
/src/components/CarouselCard.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React, { Component } from 'react';
4 | import type { ReactElement } from 'react';
5 | import { View, Text, ScrollView, StyleSheet, Animated } from 'react-native';
6 |
7 | import CarouselMiniHeader from './CarouselMiniHeader';
8 |
9 | const styles = StyleSheet.create({
10 | container: {
11 | flex: 1,
12 | backgroundColor: 'white',
13 | borderRadius: 2,
14 | marginHorizontal: 3,
15 | },
16 | title: {
17 | fontSize: 24,
18 | fontWeight: 'bold',
19 | letterSpacing: -1,
20 | lineHeight: 32,
21 | marginVertical: 20,
22 | },
23 | description: {
24 | fontSize: 17,
25 | lineHeight: 25,
26 | },
27 | contentContainer: {
28 | padding: 26,
29 | paddingBottom: 60,
30 | },
31 | actions: {
32 | position: 'absolute',
33 | left: 0,
34 | right: 0,
35 | bottom: 0,
36 | borderTopWidth: 1,
37 | margin: 10,
38 | paddingVertical: 10,
39 | borderTopColor: '#eeeeee',
40 | backgroundColor: 'white',
41 | },
42 | });
43 |
44 | type Props = {
45 | title?: string;
46 | titleStyle?: any;
47 | description?: string;
48 | descriptionStyle?: any;
49 | contentContainerStyle?: any;
50 | miniHeaderStyle?: any;
51 | style?: any;
52 | actions: Array;
53 | actionsStyle?: any;
54 | children?: any;
55 | showMiniHeader?: boolean;
56 | }
57 |
58 | const defaultProps = {
59 | title: null,
60 | titleStyle: null,
61 | description: null,
62 | descriptionStyle: null,
63 | contentContainerStyle: null,
64 | miniHeaderStyle: null,
65 | style: null,
66 | actions: null,
67 | actionsStyle: null,
68 | children: null,
69 | showMiniHeader: true,
70 | };
71 |
72 | type State = {
73 | scrollTop: Object;
74 | }
75 |
76 | class CarouselCard extends Component {
77 | props: Props
78 |
79 | state: State
80 |
81 | static defaultProps = defaultProps
82 |
83 | constructor(props: Props) {
84 | super(props);
85 |
86 | this.state = {
87 | scrollTop: new Animated.Value(0),
88 | };
89 |
90 | (this: any).onScroll = this.onScroll.bind(this);
91 | }
92 |
93 | onScroll({ nativeEvent }) {
94 | this.state.scrollTop.setValue(nativeEvent.contentOffset.y);
95 | }
96 |
97 | render() {
98 | const {
99 | style,
100 | title,
101 | titleStyle,
102 | description,
103 | descriptionStyle,
104 | actions,
105 | actionsStyle,
106 | contentContainerStyle,
107 | miniHeaderStyle,
108 | children,
109 | showMiniHeader,
110 | } = this.props;
111 |
112 | const carouselTitle = title ? (
113 |
114 | {title}
115 |
116 | ) : null;
117 |
118 | const carouselDescription = description ? (
119 |
120 | {description}
121 |
122 | ) : null;
123 |
124 | const carouselMiniHeader = (title && showMiniHeader) ? (
125 |
137 | {title}
138 |
139 | ) : null;
140 |
141 | const carouselActions = actions ? (
142 |
143 | {actions}
144 |
145 | ) : null;
146 |
147 | return (
148 |
149 |
156 | {carouselTitle}
157 | {carouselDescription}
158 | {children}
159 |
160 | {carouselMiniHeader}
161 | {carouselActions}
162 |
163 | );
164 | }
165 | }
166 |
167 | export default CarouselCard;
168 |
--------------------------------------------------------------------------------
/carousel-demo/src/CarouselDemo.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from 'react';
2 | import { Text, StatusBar, StyleSheet, TouchableOpacity, Button } from 'react-native';
3 | import { Navigator } from 'react-native-deprecated-custom-components';
4 | import CarouselComponent, { CarouselCard } from 'react-native-carousel-component';
5 | import MainPage from './MainPage';
6 | import CarouselPage from './CarouselPage';
7 |
8 | const styles = StyleSheet.create({
9 | navigationBar: {
10 | borderBottomColor: '#b5b5b5',
11 | borderBottomWidth: 0.5,
12 | backgroundColor: '#ffffff',
13 | },
14 | navigationTitle: {
15 | padding: 10,
16 | },
17 | navigationButton: {
18 | padding: 10,
19 | },
20 | navigationLeftButton: {
21 | paddingLeft: 20,
22 | paddingRight: 40,
23 | },
24 | navigator: {
25 | flex: 1,
26 | backgroundColor: '#000000',
27 | },
28 | });
29 |
30 | export default class CarouselDemo extends Component {
31 |
32 | showCarousel = () => {
33 | this.carousel.show();
34 | }
35 |
36 | dismissCarousel = () => {
37 | this.carousel.dismiss();
38 | }
39 |
40 | configureScene() {
41 | return Navigator.SceneConfigs.FloatFromRight;
42 | }
43 |
44 | renderScene = (route, navigator) => {
45 | if (route.name === 'carouselPage') {
46 | return ;
47 | }
48 |
49 | return (
50 |
54 | );
55 | }
56 |
57 | get cards() {
58 | const cards = [];
59 | for (let i = 0; i < 4; i += 1) {
60 | cards.push(
61 | {
70 | this.dismissCarousel();
71 | }}
72 | />,
73 | ]}
74 | >
75 |
76 | ,
77 | );
78 | }
79 |
80 | return cards;
81 | }
82 |
83 | get navigationBar() {
84 | return (
85 | {
89 | if (index === 0) return null;
90 | return (
91 | navigator.pop()}
94 | >
95 |
96 | Back
97 |
98 |
99 | );
100 | },
101 | RightButton: () => null,
102 | Title: route => (
103 |
104 | {route.title}
105 |
106 | ),
107 | }}
108 | />
109 | );
110 | }
111 |
112 | render() {
113 | return (
114 | { this.carousel = carousel; }}
116 | title="Title"
117 | cards={this.cards}
118 | onShow={() => {
119 | // console.log('show');
120 | }}
121 | onDismiss={() => {
122 | // console.log('dismiss');
123 | }}
124 | leftItem={{
125 | title: 'CLOSE',
126 | layout: 'title',
127 | onPress: this.dismissCarousel,
128 | }}
129 | >
130 | { this.navigator = navigator; }}
132 | navigationBar={this.navigationBar}
133 | initialRoute={{ title: 'Main Page', name: 'mainPage' }}
134 | configureScene={this.configureScene}
135 | renderScene={this.renderScene}
136 | style={styles.navigator}
137 | />
138 |
139 | );
140 | }
141 | }
142 |
--------------------------------------------------------------------------------
/src/components/ViewPager.js:
--------------------------------------------------------------------------------
1 | // @flow
2 |
3 | import React, { Component } from 'react';
4 | import type { ReactElement } from 'react';
5 | import {
6 | View,
7 | StyleSheet,
8 | ScrollView,
9 | ViewPagerAndroid,
10 | Platform,
11 | } from 'react-native';
12 |
13 | const styles = StyleSheet.create({
14 | container: {
15 | flex: 1,
16 | },
17 | scrollView: {
18 | flex: 1,
19 | backgroundColor: 'transparent',
20 | },
21 | card: {
22 | backgroundColor: 'transparent',
23 | },
24 | });
25 |
26 | type Props = {
27 | count: number;
28 | selectedIndex: number;
29 | onSelectedIndexChange?: (index: number) => void;
30 | bounces?: boolean;
31 | style?: any;
32 | children: any;
33 | };
34 |
35 | const defaultProps = {
36 | bounces: true,
37 | style: null,
38 | onSelectedIndexChange: () => {},
39 | };
40 |
41 | type State = {
42 | width: number;
43 | height: number;
44 | selectedIndex: number;
45 | initialSelectedIndex: number;
46 | scrollingTo: ?number;
47 | };
48 |
49 | class ViewPager extends Component {
50 | props: Props
51 |
52 | state: State
53 |
54 | static defaultProps = defaultProps
55 |
56 |
57 | constructor(props: Props) {
58 | super(props);
59 | this.state = {
60 | width: 0,
61 | height: 0,
62 | selectedIndex: this.props.selectedIndex,
63 | initialSelectedIndex: this.props.selectedIndex,
64 | scrollingTo: null,
65 | };
66 |
67 | (this: any).handleHorizontalScroll = this.handleHorizontalScroll.bind(this);
68 | (this: any).adjustCardSize = this.adjustCardSize.bind(this);
69 | }
70 |
71 | componentWillReceiveProps(nextProps: Props) {
72 | if (nextProps.selectedIndex !== this.state.selectedIndex) {
73 | if (Platform.OS === 'ios') {
74 | // this.scrollView.scrollTo({
75 | // x: nextProps.selectedIndex * this.state.width,
76 | // animated: true,
77 | // });
78 | this.setState({ scrollingTo: nextProps.selectedIndex });
79 | } else {
80 | this.scrollView.setPage(nextProps.selectedIndex);
81 | this.setState({ selectedIndex: nextProps.selectedIndex });
82 | }
83 | }
84 | }
85 |
86 | adjustCardSize(e: any) {
87 | this.setState({
88 | width: e.nativeEvent.layout.width,
89 | height: e.nativeEvent.layout.height,
90 | });
91 | }
92 |
93 | handleHorizontalScroll(e: any) {
94 | let selectedIndex = e.nativeEvent.position;
95 | if (selectedIndex === undefined) {
96 | selectedIndex = Math.round(
97 | e.nativeEvent.contentOffset.x / this.state.width,
98 | );
99 | }
100 | if (selectedIndex < 0 || selectedIndex >= this.props.count) {
101 | return;
102 | }
103 | if (this.state.scrollingTo !== null && this.state.scrollingTo !== selectedIndex) {
104 | return;
105 | }
106 | if (this.props.selectedIndex !== selectedIndex || this.state.scrollingTo !== null) {
107 | this.setState({ selectedIndex, scrollingTo: null });
108 | this.props.onSelectedIndexChange(selectedIndex);
109 | }
110 | }
111 |
112 | renderContent(): Array {
113 | const { width, height } = this.state;
114 | const style = Platform.OS === 'ios' && styles.card;
115 |
116 | return React.Children.map(this.props.children, (child, i) => (
117 |
118 | {child}
119 |
120 | ));
121 | }
122 |
123 | renderIOS() {
124 | return (
125 | { this.scrollView = scrollView; }}
127 | contentOffset={{
128 | x: this.state.width * this.state.initialSelectedIndex,
129 | y: 0,
130 | }}
131 | style={[styles.scrollView, this.props.style]}
132 | horizontal
133 | pagingEnabled
134 | bounces={!!this.props.bounces}
135 | scrollsToTop={false}
136 | onScroll={this.handleHorizontalScroll}
137 | scrollEventThrottle={100}
138 | automaticallyAdjustContentInsets={false}
139 | directionalLockEnabled
140 | showsHorizontalScrollIndicator={false}
141 | showsVerticalScrollIndicator={false}
142 | onLayout={this.adjustCardSize}
143 | >
144 | {this.renderContent()}
145 |
146 | );
147 | }
148 |
149 | renderAndroid() {
150 | return (
151 | { this.scrollView = scrollView; }}
153 | initialPage={this.state.initialSelectedIndex}
154 | onPageSelected={this.handleHorizontalScroll}
155 | style={styles.container}
156 | >
157 | {this.renderContent()}
158 |
159 | );
160 | }
161 |
162 | render() {
163 | if (Platform.OS === 'ios') {
164 | return this.renderIOS();
165 | }
166 | return this.renderAndroid();
167 | }
168 | }
169 |
170 | export default ViewPager;
171 |
--------------------------------------------------------------------------------
/dist/components/ViewPager.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _jsxFileName='src/components/ViewPager.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i=this.props.count){return;}if(this.state.scrollingTo!==null&&this.state.scrollingTo!==selectedIndex){return;}if(this.props.selectedIndex!==selectedIndex||this.state.scrollingTo!==null){this.setState({selectedIndex:selectedIndex,scrollingTo:null});this.props.onSelectedIndexChange(selectedIndex);}}},{key:'renderContent',value:function renderContent(){var _state=this.state,width=_state.width,height=_state.height;var style=_reactNative.Platform.OS==='ios'&&styles.card;return _react2.default.Children.map(this.props.children,function(child,i){return _react2.default.createElement(_reactNative.View,{style:[style,{width:width,height:height}],key:'r_'+i,__source:{fileName:_jsxFileName,lineNumber:117}},child);});}},{key:'renderIOS',value:function renderIOS(){var _this2=this;return _react2.default.createElement(_reactNative.ScrollView,{ref:function ref(scrollView){_this2.scrollView=scrollView;},contentOffset:{x:this.state.width*this.state.initialSelectedIndex,y:0},style:[styles.scrollView,this.props.style],horizontal:true,pagingEnabled:true,bounces:!!this.props.bounces,scrollsToTop:false,onScroll:this.handleHorizontalScroll,scrollEventThrottle:100,automaticallyAdjustContentInsets:false,directionalLockEnabled:true,showsHorizontalScrollIndicator:false,showsVerticalScrollIndicator:false,onLayout:this.adjustCardSize,__source:{fileName:_jsxFileName,lineNumber:125}},this.renderContent());}},{key:'renderAndroid',value:function renderAndroid(){var _this3=this;return _react2.default.createElement(_reactNative.ViewPagerAndroid,{ref:function ref(scrollView){_this3.scrollView=scrollView;},initialPage:this.state.initialSelectedIndex,onPageSelected:this.handleHorizontalScroll,style:styles.container,__source:{fileName:_jsxFileName,lineNumber:151}},this.renderContent());}},{key:'render',value:function render(){if(_reactNative.Platform.OS==='ios'){return this.renderIOS();}return this.renderAndroid();}}]);return ViewPager;}(_react.Component);ViewPager.defaultProps=defaultProps;ViewPager.propTypes={count:require('prop-types').number.isRequired,selectedIndex:require('prop-types').number.isRequired,onSelectedIndexChange:require('prop-types').func,bounces:require('prop-types').bool,style:require('prop-types').any,children:require('prop-types').any.isRequired};exports.default=ViewPager;
--------------------------------------------------------------------------------
/dist/components/CarouselCard.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _jsxFileName='src/components/CarouselCard.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:function(){};_this.navigator.push({show:true});_this.setState({show:true});callback();_this.props.onShow();};_this.dismiss=function(){var callback=arguments.length>0&&arguments[0]!==undefined?arguments[0]:function(){};_this.navigator.pop();_this.setState({show:false});callback();_this.props.onDismiss();};_this.configureScene=function(){var children=_this.props.children;if(children){return _reactNativeDeprecatedCustomComponents.Navigator.SceneConfigs.FloatFromBottom;}return _extends({},_reactNativeDeprecatedCustomComponents.Navigator.SceneConfigs.FloatFromBottom,{gestures:{}});};_this.renderScene=function(route,navigator){if(route.show){return _react2.default.createElement(_Carousel2.default,_extends({},_this.props,{style:_this.props.carouselStyle,navigator:navigator,__source:{fileName:_jsxFileName,lineNumber:131}}));}return _this.props.children;};_this.state={show:null};return _this;}CarouselComponent.propTypes={onShow:require('prop-types').func,onDismiss:require('prop-types').func,dismissOnHardwareBackPress:require('prop-types').bool,show:require('prop-types').bool,navigatorStyle:require('prop-types').any,carouselStyle:require('prop-types').any,children:require('prop-types').any};_createClass(CarouselComponent,[{key:'componentDidMount',value:function componentDidMount(){var show=this.props.show;if(show){this.show();}BackHandler.addEventListener(HARDWARE_BACK_PRESS_EVENT,this.hardwareBackPressHandler);}},{key:'componentWillReceiveProps',value:function componentWillReceiveProps(nextProps){if(this.props.show!==nextProps.show){if(nextProps.show){this.show();return;}this.dismiss();}}},{key:'componentWillUnmount',value:function componentWillUnmount(){BackHandler.removeEventListener(HARDWARE_BACK_PRESS_EVENT);}},{key:'render',value:function render(){var _this2=this;var _props=this.props,navigatorStyle=_props.navigatorStyle,children=_props.children;return _react2.default.createElement(_reactNative.View,{style:[styles.container],pointerEvents:'auto',__source:{fileName:_jsxFileName,lineNumber:146}},_react2.default.createElement(_reactNativeDeprecatedCustomComponents.Navigator,{ref:function ref(navigator){_this2.navigator=navigator;},initialRoute:{show:null},configureScene:this.configureScene,renderScene:this.renderScene,style:[styles.navigator,navigatorStyle],__source:{fileName:_jsxFileName,lineNumber:147}}));}}]);return CarouselComponent;}(_react.Component);CarouselComponent.defaultProps=defaultProps;CarouselComponent.propTypes={onShow:require('prop-types').func,onDismiss:require('prop-types').func,dismissOnHardwareBackPress:require('prop-types').bool,show:require('prop-types').bool,navigatorStyle:require('prop-types').any,carouselStyle:require('prop-types').any,children:require('prop-types').any};exports.default=CarouselComponent;
--------------------------------------------------------------------------------
/dist/components/Carousel.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _jsxFileName='src/components/Carousel.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i void;
71 | };
72 |
73 | type Props = {
74 | title?: string;
75 | leftItem?: Item;
76 | rightItem?: Item;
77 | extraItems?: Array
- ;
78 | foreground?: Foreground;
79 | style?: any;
80 | children?: any;
81 | };
82 |
83 | const defaultProps = {
84 | title: null,
85 | leftItem: null,
86 | rightItem: null,
87 | extraItems: null,
88 | foreground: null,
89 | style: null,
90 | children: null,
91 | };
92 |
93 | class HeaderAndroid extends Component {
94 | static height: number;
95 |
96 | static defaultProps = defaultProps
97 |
98 | props: Props;
99 |
100 | constructor(props: Props) {
101 | super(props);
102 |
103 | (this: any).handleActionSelected = this.handleActionSelected.bind(this);
104 | }
105 |
106 | handleActionSelected(position: number) {
107 | const { rightItem, extraItems } = this.props;
108 |
109 | let items = extraItems || [];
110 | if (rightItem) {
111 | items = [rightItem, ...items];
112 | }
113 | const item = items[position];
114 | if (item && item.onPress) {
115 | item.onPress();
116 | }
117 | }
118 |
119 | render() {
120 | const {
121 | style,
122 | leftItem,
123 | rightItem,
124 | extraItems,
125 | foreground,
126 | children,
127 | } = this.props;
128 |
129 | let actions = [];
130 | if (rightItem) {
131 | const { title, icon, layout } = rightItem;
132 | actions.push({
133 | icon: layout !== 'title' ? icon : undefined,
134 | title,
135 | show: 'always',
136 | });
137 | }
138 | if (extraItems) {
139 | actions = actions.concat(extraItems.map(item => ({
140 | title: item.title,
141 | show: 'never',
142 | })));
143 | }
144 |
145 | const textColor = foreground === 'dark'
146 | ? '#032250'
147 | : 'white';
148 |
149 | let content;
150 | if (React.Children.count(children) > 0) {
151 | content = (
152 |
153 | {children}
154 |
155 | );
156 | }
157 |
158 | return (
159 |
160 |
170 | {content}
171 |
172 |
173 | );
174 | }
175 | }
176 |
177 | class HeaderIOS extends Component {
178 | static height: number
179 |
180 | static defaultProps = defaultProps
181 |
182 | props: Props
183 |
184 | render() {
185 | const { leftItem, title, rightItem, foreground } = this.props;
186 | const titleColor = foreground === 'dark' ? '#032250' : 'white';
187 | const itemsColor = foreground === 'dark' ? '#7F91A7' : 'white';
188 |
189 | const content = React.Children.count(this.props.children) === 0
190 | ? (
191 | {title}
192 | )
193 | : this.props.children;
194 | return (
195 |
196 |
197 |
198 |
199 |
205 | {content}
206 |
207 |
208 |
209 |
210 |
211 | );
212 | }
213 |
214 | }
215 |
216 | class ItemWrapperIOS extends Component {
217 | props: {
218 | item?: Item;
219 | color?: string;
220 | };
221 |
222 | static defaultProps = {
223 | item: null,
224 | color: null,
225 | };
226 |
227 | render() {
228 | const { item, color } = this.props;
229 | if (!item) {
230 | return null;
231 | }
232 |
233 | let content;
234 | const { title, icon, layout, onPress } = item;
235 |
236 | if (layout !== 'icon' && title) {
237 | content = (
238 |
239 | {title.toUpperCase()}
240 |
241 | );
242 | } else if (icon) {
243 | content = ;
244 | }
245 |
246 | return (
247 |
253 | {content}
254 |
255 | );
256 | }
257 | }
258 |
259 | const CarouselHeader = Platform.OS === 'ios' ? HeaderIOS : HeaderAndroid;
260 | CarouselHeader.height = HEADER_HEIGHT;
261 |
262 | export default CarouselHeader;
263 |
--------------------------------------------------------------------------------
/dist/components/CarouselHeader.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports,"__esModule",{value:true});var _jsxFileName='src/components/CarouselHeader.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i0){content=_react2.default.createElement(_reactNative.View,{collapsable:false,style:{flex:1},__source:{fileName:_jsxFileName,lineNumber:152}},children);}return _react2.default.createElement(_reactNative.View,{style:[styles.toolbarContainer,style],__source:{fileName:_jsxFileName,lineNumber:159}},_react2.default.createElement(_reactNative.ToolbarAndroid,{navIcon:leftItem&&leftItem.icon,onIconClicked:leftItem&&leftItem.onPress,title:this.props.title,titleColor:textColor,subtitleColor:textColor,actions:actions,onActionSelected:this.handleActionSelected,style:styles.toolbar,__source:{fileName:_jsxFileName,lineNumber:160}},content));}}]);return HeaderAndroid;}(_react.Component);HeaderAndroid.defaultProps=defaultProps;HeaderAndroid.propTypes={title:require('prop-types').string,leftItem:require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func}),rightItem:require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func}),extraItems:require('prop-types').arrayOf(require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func})),foreground:require('prop-types').oneOf(['light','dark']),style:require('prop-types').any,children:require('prop-types').any};var HeaderIOS=function(_Component2){_inherits(HeaderIOS,_Component2);function HeaderIOS(){_classCallCheck(this,HeaderIOS);return _possibleConstructorReturn(this,(HeaderIOS.__proto__||Object.getPrototypeOf(HeaderIOS)).apply(this,arguments));}_createClass(HeaderIOS,[{key:'render',value:function render(){var _props3=this.props,leftItem=_props3.leftItem,title=_props3.title,rightItem=_props3.rightItem,foreground=_props3.foreground;var titleColor=foreground==='dark'?'#032250':'white';var itemsColor=foreground==='dark'?'#7F91A7':'white';var content=_react2.default.Children.count(this.props.children)===0?_react2.default.createElement(_reactNative.Text,{style:[styles.titleText,{color:titleColor}],__source:{fileName:_jsxFileName,lineNumber:190}},title):this.props.children;return _react2.default.createElement(_reactNative.View,{style:[styles.header,this.props.style],__source:{fileName:_jsxFileName,lineNumber:195}},_react2.default.createElement(_reactNative.View,{style:styles.leftItem,__source:{fileName:_jsxFileName,lineNumber:196}},_react2.default.createElement(ItemWrapperIOS,{color:itemsColor,item:leftItem,__source:{fileName:_jsxFileName,lineNumber:197}})),_react2.default.createElement(_reactNative.View,{accessible:true,accessibilityLabel:title,accessibilityTraits:'header',style:styles.centerItem,__source:{fileName:_jsxFileName,lineNumber:199}},content),_react2.default.createElement(_reactNative.View,{style:styles.rightItem,__source:{fileName:_jsxFileName,lineNumber:207}},_react2.default.createElement(ItemWrapperIOS,{color:itemsColor,item:rightItem,__source:{fileName:_jsxFileName,lineNumber:208}})));}}]);return HeaderIOS;}(_react.Component);HeaderIOS.defaultProps=defaultProps;HeaderIOS.propTypes={title:require('prop-types').string,leftItem:require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func}),rightItem:require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func}),extraItems:require('prop-types').arrayOf(require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func})),foreground:require('prop-types').oneOf(['light','dark']),style:require('prop-types').any,children:require('prop-types').any};var ItemWrapperIOS=function(_Component3){_inherits(ItemWrapperIOS,_Component3);function ItemWrapperIOS(){_classCallCheck(this,ItemWrapperIOS);return _possibleConstructorReturn(this,(ItemWrapperIOS.__proto__||Object.getPrototypeOf(ItemWrapperIOS)).apply(this,arguments));}_createClass(ItemWrapperIOS,[{key:'render',value:function render(){var _props4=this.props,item=_props4.item,color=_props4.color;if(!item){return null;}var content=void 0;var title=item.title,icon=item.icon,layout=item.layout,onPress=item.onPress;if(layout!=='icon'&&title){content=_react2.default.createElement(_reactNative.Text,{style:[styles.itemText,{color:color}],__source:{fileName:_jsxFileName,lineNumber:238}},title.toUpperCase());}else if(icon){content=_react2.default.createElement(_reactNative.Image,{source:icon,__source:{fileName:_jsxFileName,lineNumber:243}});}return _react2.default.createElement(_reactNative.TouchableOpacity,{accessibilityLabel:title,accessibilityTraits:'button',onPress:onPress,style:styles.itemWrapper,__source:{fileName:_jsxFileName,lineNumber:247}},content);}}]);return ItemWrapperIOS;}(_react.Component);ItemWrapperIOS.defaultProps={item:null,color:null};ItemWrapperIOS.propTypes={item:require('prop-types').shape({title:require('prop-types').string,icon:require('prop-types').number,layout:require('prop-types').oneOf(['default','icon','title']),onPress:require('prop-types').func}),color:require('prop-types').string};var CarouselHeader=_reactNative.Platform.OS==='ios'?HeaderIOS:HeaderAndroid;CarouselHeader.height=HEADER_HEIGHT;exports.default=CarouselHeader;
--------------------------------------------------------------------------------
/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.1.1"
17 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.1.tgz#53fe161111f912ab999ee887a90a0bc52822fd75"
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.3"
25 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.3.tgz#ce30bdb90d1254f762c75af915fb3a63e7183d22"
26 | dependencies:
27 | co "^4.6.0"
28 | json-stable-stringify "^1.0.1"
29 |
30 | ajv@^5.2.0:
31 | version "5.2.2"
32 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.2.tgz#47c68d69e86f5d953103b0074a9430dc63da5e39"
33 | dependencies:
34 | co "^4.6.0"
35 | fast-deep-equal "^1.0.0"
36 | json-schema-traverse "^0.3.0"
37 | json-stable-stringify "^1.0.1"
38 |
39 | ansi-escapes@^2.0.0:
40 | version "2.0.0"
41 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b"
42 |
43 | ansi-regex@^2.0.0:
44 | version "2.1.1"
45 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
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 |
51 | ansi-styles@^2.2.1:
52 | version "2.2.1"
53 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
54 |
55 | ansi-styles@^3.1.0:
56 | version "3.2.0"
57 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
58 | dependencies:
59 | color-convert "^1.9.0"
60 |
61 | argparse@^1.0.7:
62 | version "1.0.9"
63 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
64 | dependencies:
65 | sprintf-js "~1.0.2"
66 |
67 | aria-query@^0.7.0:
68 | version "0.7.0"
69 | resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.0.tgz#4af10a1e61573ddea0cf3b99b51c52c05b424d24"
70 | dependencies:
71 | ast-types-flow "0.0.7"
72 |
73 | array-includes@^3.0.3:
74 | version "3.0.3"
75 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
76 | dependencies:
77 | define-properties "^1.1.2"
78 | es-abstract "^1.7.0"
79 |
80 | array-union@^1.0.1:
81 | version "1.0.2"
82 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
83 | dependencies:
84 | array-uniq "^1.0.1"
85 |
86 | array-uniq@^1.0.1:
87 | version "1.0.3"
88 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
89 |
90 | arrify@^1.0.0:
91 | version "1.0.1"
92 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
93 |
94 | asap@~2.0.3:
95 | version "2.0.6"
96 | resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
97 |
98 | ast-types-flow@0.0.7:
99 | version "0.0.7"
100 | resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
101 |
102 | axobject-query@^0.1.0:
103 | version "0.1.0"
104 | resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-0.1.0.tgz#62f59dbc59c9f9242759ca349960e7a2fe3c36c0"
105 | dependencies:
106 | ast-types-flow "0.0.7"
107 |
108 | babel-code-frame@^6.22.0:
109 | version "6.22.0"
110 | resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4"
111 | dependencies:
112 | chalk "^1.1.0"
113 | esutils "^2.0.2"
114 | js-tokens "^3.0.0"
115 |
116 | babel-core@^6.24.1, babel-core@^6.25.0:
117 | version "6.25.0"
118 | resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729"
119 | dependencies:
120 | babel-code-frame "^6.22.0"
121 | babel-generator "^6.25.0"
122 | babel-helpers "^6.24.1"
123 | babel-messages "^6.23.0"
124 | babel-register "^6.24.1"
125 | babel-runtime "^6.22.0"
126 | babel-template "^6.25.0"
127 | babel-traverse "^6.25.0"
128 | babel-types "^6.25.0"
129 | babylon "^6.17.2"
130 | convert-source-map "^1.1.0"
131 | debug "^2.1.1"
132 | json5 "^0.5.0"
133 | lodash "^4.2.0"
134 | minimatch "^3.0.2"
135 | path-is-absolute "^1.0.0"
136 | private "^0.1.6"
137 | slash "^1.0.0"
138 | source-map "^0.5.0"
139 |
140 | babel-eslint@^7.2.3:
141 | version "7.2.3"
142 | resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.2.3.tgz#b2fe2d80126470f5c19442dc757253a897710827"
143 | dependencies:
144 | babel-code-frame "^6.22.0"
145 | babel-traverse "^6.23.1"
146 | babel-types "^6.23.0"
147 | babylon "^6.17.0"
148 |
149 | babel-generator@^6.25.0:
150 | version "6.25.0"
151 | resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc"
152 | dependencies:
153 | babel-messages "^6.23.0"
154 | babel-runtime "^6.22.0"
155 | babel-types "^6.25.0"
156 | detect-indent "^4.0.0"
157 | jsesc "^1.3.0"
158 | lodash "^4.2.0"
159 | source-map "^0.5.0"
160 | trim-right "^1.0.1"
161 |
162 | babel-helper-builder-binary-assignment-operator-visitor@^6.24.1:
163 | version "6.24.1"
164 | resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664"
165 | dependencies:
166 | babel-helper-explode-assignable-expression "^6.24.1"
167 | babel-runtime "^6.22.0"
168 | babel-types "^6.24.1"
169 |
170 | babel-helper-builder-react-jsx@^6.23.0:
171 | version "6.23.0"
172 | resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.23.0.tgz#d53fc8c996e0bc56d0de0fc4cc55a7138395ea4b"
173 | dependencies:
174 | babel-runtime "^6.22.0"
175 | babel-types "^6.23.0"
176 | esutils "^2.0.0"
177 | lodash "^4.2.0"
178 |
179 | babel-helper-call-delegate@^6.22.0:
180 | version "6.22.0"
181 | resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.22.0.tgz#119921b56120f17e9dae3f74b4f5cc7bcc1b37ef"
182 | dependencies:
183 | babel-helper-hoist-variables "^6.22.0"
184 | babel-runtime "^6.22.0"
185 | babel-traverse "^6.22.0"
186 | babel-types "^6.22.0"
187 |
188 | babel-helper-define-map@^6.23.0:
189 | version "6.23.0"
190 | resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.23.0.tgz#1444f960c9691d69a2ced6a205315f8fd00804e7"
191 | dependencies:
192 | babel-helper-function-name "^6.23.0"
193 | babel-runtime "^6.22.0"
194 | babel-types "^6.23.0"
195 | lodash "^4.2.0"
196 |
197 | babel-helper-explode-assignable-expression@^6.24.1:
198 | version "6.24.1"
199 | resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa"
200 | dependencies:
201 | babel-runtime "^6.22.0"
202 | babel-traverse "^6.24.1"
203 | babel-types "^6.24.1"
204 |
205 | babel-helper-function-name@^6.22.0, babel-helper-function-name@^6.23.0:
206 | version "6.23.0"
207 | resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.23.0.tgz#25742d67175c8903dbe4b6cb9d9e1fcb8dcf23a6"
208 | dependencies:
209 | babel-helper-get-function-arity "^6.22.0"
210 | babel-runtime "^6.22.0"
211 | babel-template "^6.23.0"
212 | babel-traverse "^6.23.0"
213 | babel-types "^6.23.0"
214 |
215 | babel-helper-get-function-arity@^6.22.0:
216 | version "6.22.0"
217 | resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.22.0.tgz#0beb464ad69dc7347410ac6ade9f03a50634f5ce"
218 | dependencies:
219 | babel-runtime "^6.22.0"
220 | babel-types "^6.22.0"
221 |
222 | babel-helper-hoist-variables@^6.22.0:
223 | version "6.22.0"
224 | resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.22.0.tgz#3eacbf731d80705845dd2e9718f600cfb9b4ba72"
225 | dependencies:
226 | babel-runtime "^6.22.0"
227 | babel-types "^6.22.0"
228 |
229 | babel-helper-optimise-call-expression@^6.23.0:
230 | version "6.23.0"
231 | resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.23.0.tgz#f3ee7eed355b4282138b33d02b78369e470622f5"
232 | dependencies:
233 | babel-runtime "^6.22.0"
234 | babel-types "^6.23.0"
235 |
236 | babel-helper-replace-supers@^6.23.0:
237 | version "6.23.0"
238 | resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.23.0.tgz#eeaf8ad9b58ec4337ca94223bacdca1f8d9b4bfd"
239 | dependencies:
240 | babel-helper-optimise-call-expression "^6.23.0"
241 | babel-messages "^6.23.0"
242 | babel-runtime "^6.22.0"
243 | babel-template "^6.23.0"
244 | babel-traverse "^6.23.0"
245 | babel-types "^6.23.0"
246 |
247 | babel-helpers@^6.24.1:
248 | version "6.24.1"
249 | resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
250 | dependencies:
251 | babel-runtime "^6.22.0"
252 | babel-template "^6.24.1"
253 |
254 | babel-messages@^6.23.0:
255 | version "6.23.0"
256 | resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
257 | dependencies:
258 | babel-runtime "^6.22.0"
259 |
260 | babel-plugin-check-es2015-constants@^6.5.0:
261 | version "6.22.0"
262 | resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a"
263 | dependencies:
264 | babel-runtime "^6.22.0"
265 |
266 | babel-plugin-flow-react-proptypes@^3.4.3:
267 | version "3.4.3"
268 | resolved "https://registry.yarnpkg.com/babel-plugin-flow-react-proptypes/-/babel-plugin-flow-react-proptypes-3.4.3.tgz#4555b6ef1bafe4854548b4e9bf56871b765b8e35"
269 | dependencies:
270 | babel-core "^6.25.0"
271 | babel-template "^6.25.0"
272 | babel-traverse "^6.25.0"
273 | babel-types "^6.25.0"
274 |
275 | babel-plugin-react-transform@2.0.2:
276 | version "2.0.2"
277 | resolved "https://registry.yarnpkg.com/babel-plugin-react-transform/-/babel-plugin-react-transform-2.0.2.tgz#515bbfa996893981142d90b1f9b1635de2995109"
278 | dependencies:
279 | lodash "^4.6.1"
280 |
281 | babel-plugin-syntax-async-functions@^6.5.0:
282 | version "6.13.0"
283 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"
284 |
285 | babel-plugin-syntax-class-properties@^6.5.0, babel-plugin-syntax-class-properties@^6.8.0:
286 | version "6.13.0"
287 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de"
288 |
289 | babel-plugin-syntax-exponentiation-operator@^6.8.0:
290 | version "6.13.0"
291 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
292 |
293 | babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.5.0:
294 | version "6.18.0"
295 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d"
296 |
297 | babel-plugin-syntax-jsx@^6.5.0, babel-plugin-syntax-jsx@^6.8.0:
298 | version "6.18.0"
299 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
300 |
301 | babel-plugin-syntax-object-rest-spread@^6.8.0:
302 | version "6.13.0"
303 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
304 |
305 | babel-plugin-syntax-trailing-function-commas@^6.5.0:
306 | version "6.22.0"
307 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3"
308 |
309 | babel-plugin-transform-class-properties@^6.5.0:
310 | version "6.23.0"
311 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.23.0.tgz#187b747ee404399013563c993db038f34754ac3b"
312 | dependencies:
313 | babel-helper-function-name "^6.23.0"
314 | babel-plugin-syntax-class-properties "^6.8.0"
315 | babel-runtime "^6.22.0"
316 | babel-template "^6.23.0"
317 |
318 | babel-plugin-transform-es2015-arrow-functions@^6.5.0:
319 | version "6.22.0"
320 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221"
321 | dependencies:
322 | babel-runtime "^6.22.0"
323 |
324 | babel-plugin-transform-es2015-block-scoping@^6.5.0:
325 | version "6.23.0"
326 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.23.0.tgz#e48895cf0b375be148cd7c8879b422707a053b51"
327 | dependencies:
328 | babel-runtime "^6.22.0"
329 | babel-template "^6.23.0"
330 | babel-traverse "^6.23.0"
331 | babel-types "^6.23.0"
332 | lodash "^4.2.0"
333 |
334 | babel-plugin-transform-es2015-classes@^6.5.0:
335 | version "6.23.0"
336 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.23.0.tgz#49b53f326202a2fd1b3bbaa5e2edd8a4f78643c1"
337 | dependencies:
338 | babel-helper-define-map "^6.23.0"
339 | babel-helper-function-name "^6.23.0"
340 | babel-helper-optimise-call-expression "^6.23.0"
341 | babel-helper-replace-supers "^6.23.0"
342 | babel-messages "^6.23.0"
343 | babel-runtime "^6.22.0"
344 | babel-template "^6.23.0"
345 | babel-traverse "^6.23.0"
346 | babel-types "^6.23.0"
347 |
348 | babel-plugin-transform-es2015-computed-properties@^6.5.0:
349 | version "6.22.0"
350 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.22.0.tgz#7c383e9629bba4820c11b0425bdd6290f7f057e7"
351 | dependencies:
352 | babel-runtime "^6.22.0"
353 | babel-template "^6.22.0"
354 |
355 | babel-plugin-transform-es2015-destructuring@^6.5.0:
356 | version "6.23.0"
357 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
358 | dependencies:
359 | babel-runtime "^6.22.0"
360 |
361 | babel-plugin-transform-es2015-for-of@^6.5.0:
362 | version "6.23.0"
363 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
364 | dependencies:
365 | babel-runtime "^6.22.0"
366 |
367 | babel-plugin-transform-es2015-function-name@^6.5.0:
368 | version "6.22.0"
369 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz#f5fcc8b09093f9a23c76ac3d9e392c3ec4b77104"
370 | dependencies:
371 | babel-helper-function-name "^6.22.0"
372 | babel-runtime "^6.22.0"
373 | babel-types "^6.22.0"
374 |
375 | babel-plugin-transform-es2015-literals@^6.5.0:
376 | version "6.22.0"
377 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e"
378 | dependencies:
379 | babel-runtime "^6.22.0"
380 |
381 | babel-plugin-transform-es2015-modules-commonjs@^6.5.0:
382 | version "6.23.0"
383 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.23.0.tgz#cba7aa6379fb7ec99250e6d46de2973aaffa7b92"
384 | dependencies:
385 | babel-plugin-transform-strict-mode "^6.22.0"
386 | babel-runtime "^6.22.0"
387 | babel-template "^6.23.0"
388 | babel-types "^6.23.0"
389 |
390 | babel-plugin-transform-es2015-parameters@^6.5.0:
391 | version "6.23.0"
392 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.23.0.tgz#3a2aabb70c8af945d5ce386f1a4250625a83ae3b"
393 | dependencies:
394 | babel-helper-call-delegate "^6.22.0"
395 | babel-helper-get-function-arity "^6.22.0"
396 | babel-runtime "^6.22.0"
397 | babel-template "^6.23.0"
398 | babel-traverse "^6.23.0"
399 | babel-types "^6.23.0"
400 |
401 | babel-plugin-transform-es2015-shorthand-properties@^6.5.0:
402 | version "6.22.0"
403 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz#8ba776e0affaa60bff21e921403b8a652a2ff723"
404 | dependencies:
405 | babel-runtime "^6.22.0"
406 | babel-types "^6.22.0"
407 |
408 | babel-plugin-transform-es2015-spread@^6.5.0:
409 | version "6.22.0"
410 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"
411 | dependencies:
412 | babel-runtime "^6.22.0"
413 |
414 | babel-plugin-transform-es2015-template-literals@^6.5.0:
415 | version "6.22.0"
416 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"
417 | dependencies:
418 | babel-runtime "^6.22.0"
419 |
420 | babel-plugin-transform-exponentiation-operator@^6.24.1:
421 | version "6.24.1"
422 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"
423 | dependencies:
424 | babel-helper-builder-binary-assignment-operator-visitor "^6.24.1"
425 | babel-plugin-syntax-exponentiation-operator "^6.8.0"
426 | babel-runtime "^6.22.0"
427 |
428 | babel-plugin-transform-flow-strip-types@^6.5.0:
429 | version "6.22.0"
430 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf"
431 | dependencies:
432 | babel-plugin-syntax-flow "^6.18.0"
433 | babel-runtime "^6.22.0"
434 |
435 | babel-plugin-transform-object-assign@^6.5.0:
436 | version "6.22.0"
437 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.22.0.tgz#f99d2f66f1a0b0d498e346c5359684740caa20ba"
438 | dependencies:
439 | babel-runtime "^6.22.0"
440 |
441 | babel-plugin-transform-object-rest-spread@^6.5.0:
442 | version "6.23.0"
443 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921"
444 | dependencies:
445 | babel-plugin-syntax-object-rest-spread "^6.8.0"
446 | babel-runtime "^6.22.0"
447 |
448 | babel-plugin-transform-react-display-name@^6.5.0:
449 | version "6.23.0"
450 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.23.0.tgz#4398910c358441dc4cef18787264d0412ed36b37"
451 | dependencies:
452 | babel-runtime "^6.22.0"
453 |
454 | babel-plugin-transform-react-jsx-source@^6.5.0:
455 | version "6.22.0"
456 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6"
457 | dependencies:
458 | babel-plugin-syntax-jsx "^6.8.0"
459 | babel-runtime "^6.22.0"
460 |
461 | babel-plugin-transform-react-jsx@^6.5.0:
462 | version "6.23.0"
463 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.23.0.tgz#23e892f7f2e759678eb5e4446a8f8e94e81b3470"
464 | dependencies:
465 | babel-helper-builder-react-jsx "^6.23.0"
466 | babel-plugin-syntax-jsx "^6.8.0"
467 | babel-runtime "^6.22.0"
468 |
469 | babel-plugin-transform-regenerator@^6.5.0:
470 | version "6.22.0"
471 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz#65740593a319c44522157538d690b84094617ea6"
472 | dependencies:
473 | regenerator-transform "0.9.8"
474 |
475 | babel-plugin-transform-strict-mode@^6.22.0:
476 | version "6.22.0"
477 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.22.0.tgz#e008df01340fdc87e959da65991b7e05970c8c7c"
478 | dependencies:
479 | babel-runtime "^6.22.0"
480 | babel-types "^6.22.0"
481 |
482 | babel-preset-es2016@^6.24.1:
483 | version "6.24.1"
484 | resolved "https://registry.yarnpkg.com/babel-preset-es2016/-/babel-preset-es2016-6.24.1.tgz#f900bf93e2ebc0d276df9b8ab59724ebfd959f8b"
485 | dependencies:
486 | babel-plugin-transform-exponentiation-operator "^6.24.1"
487 |
488 | babel-preset-react-native@^2.1.0:
489 | version "2.1.0"
490 | resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-2.1.0.tgz#9013ebd82da1c88102bf588810ff59e209ca2b8a"
491 | dependencies:
492 | babel-plugin-check-es2015-constants "^6.5.0"
493 | babel-plugin-react-transform "2.0.2"
494 | babel-plugin-syntax-async-functions "^6.5.0"
495 | babel-plugin-syntax-class-properties "^6.5.0"
496 | babel-plugin-syntax-flow "^6.5.0"
497 | babel-plugin-syntax-jsx "^6.5.0"
498 | babel-plugin-syntax-trailing-function-commas "^6.5.0"
499 | babel-plugin-transform-class-properties "^6.5.0"
500 | babel-plugin-transform-es2015-arrow-functions "^6.5.0"
501 | babel-plugin-transform-es2015-block-scoping "^6.5.0"
502 | babel-plugin-transform-es2015-classes "^6.5.0"
503 | babel-plugin-transform-es2015-computed-properties "^6.5.0"
504 | babel-plugin-transform-es2015-destructuring "^6.5.0"
505 | babel-plugin-transform-es2015-for-of "^6.5.0"
506 | babel-plugin-transform-es2015-function-name "^6.5.0"
507 | babel-plugin-transform-es2015-literals "^6.5.0"
508 | babel-plugin-transform-es2015-modules-commonjs "^6.5.0"
509 | babel-plugin-transform-es2015-parameters "^6.5.0"
510 | babel-plugin-transform-es2015-shorthand-properties "^6.5.0"
511 | babel-plugin-transform-es2015-spread "^6.5.0"
512 | babel-plugin-transform-es2015-template-literals "^6.5.0"
513 | babel-plugin-transform-flow-strip-types "^6.5.0"
514 | babel-plugin-transform-object-assign "^6.5.0"
515 | babel-plugin-transform-object-rest-spread "^6.5.0"
516 | babel-plugin-transform-react-display-name "^6.5.0"
517 | babel-plugin-transform-react-jsx "^6.5.0"
518 | babel-plugin-transform-react-jsx-source "^6.5.0"
519 | babel-plugin-transform-regenerator "^6.5.0"
520 | react-transform-hmr "^1.0.4"
521 |
522 | babel-register@^6.24.1:
523 | version "6.24.1"
524 | resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f"
525 | dependencies:
526 | babel-core "^6.24.1"
527 | babel-runtime "^6.22.0"
528 | core-js "^2.4.0"
529 | home-or-tmp "^2.0.0"
530 | lodash "^4.2.0"
531 | mkdirp "^0.5.1"
532 | source-map-support "^0.4.2"
533 |
534 | babel-runtime@^6.18.0, babel-runtime@^6.22.0:
535 | version "6.23.0"
536 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b"
537 | dependencies:
538 | core-js "^2.4.0"
539 | regenerator-runtime "^0.10.0"
540 |
541 | babel-template@^6.22.0, babel-template@^6.23.0:
542 | version "6.23.0"
543 | resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.23.0.tgz#04d4f270adbb3aa704a8143ae26faa529238e638"
544 | dependencies:
545 | babel-runtime "^6.22.0"
546 | babel-traverse "^6.23.0"
547 | babel-types "^6.23.0"
548 | babylon "^6.11.0"
549 | lodash "^4.2.0"
550 |
551 | babel-template@^6.24.1, babel-template@^6.25.0:
552 | version "6.25.0"
553 | resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071"
554 | dependencies:
555 | babel-runtime "^6.22.0"
556 | babel-traverse "^6.25.0"
557 | babel-types "^6.25.0"
558 | babylon "^6.17.2"
559 | lodash "^4.2.0"
560 |
561 | babel-traverse@^6.22.0, babel-traverse@^6.23.0:
562 | version "6.23.1"
563 | resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.23.1.tgz#d3cb59010ecd06a97d81310065f966b699e14f48"
564 | dependencies:
565 | babel-code-frame "^6.22.0"
566 | babel-messages "^6.23.0"
567 | babel-runtime "^6.22.0"
568 | babel-types "^6.23.0"
569 | babylon "^6.15.0"
570 | debug "^2.2.0"
571 | globals "^9.0.0"
572 | invariant "^2.2.0"
573 | lodash "^4.2.0"
574 |
575 | babel-traverse@^6.23.1, babel-traverse@^6.24.1, babel-traverse@^6.25.0:
576 | version "6.25.0"
577 | resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1"
578 | dependencies:
579 | babel-code-frame "^6.22.0"
580 | babel-messages "^6.23.0"
581 | babel-runtime "^6.22.0"
582 | babel-types "^6.25.0"
583 | babylon "^6.17.2"
584 | debug "^2.2.0"
585 | globals "^9.0.0"
586 | invariant "^2.2.0"
587 | lodash "^4.2.0"
588 |
589 | babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.23.0:
590 | version "6.23.0"
591 | resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.23.0.tgz#bb17179d7538bad38cd0c9e115d340f77e7e9acf"
592 | dependencies:
593 | babel-runtime "^6.22.0"
594 | esutils "^2.0.2"
595 | lodash "^4.2.0"
596 | to-fast-properties "^1.0.1"
597 |
598 | babel-types@^6.24.1, babel-types@^6.25.0:
599 | version "6.25.0"
600 | resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e"
601 | dependencies:
602 | babel-runtime "^6.22.0"
603 | esutils "^2.0.2"
604 | lodash "^4.2.0"
605 | to-fast-properties "^1.0.1"
606 |
607 | babylon@^6.11.0, babylon@^6.15.0:
608 | version "6.15.0"
609 | resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.15.0.tgz#ba65cfa1a80e1759b0e89fb562e27dccae70348e"
610 |
611 | babylon@^6.17.0, babylon@^6.17.2:
612 | version "6.17.4"
613 | resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a"
614 |
615 | balanced-match@^0.4.1:
616 | version "0.4.2"
617 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
618 |
619 | balanced-match@^1.0.0:
620 | version "1.0.0"
621 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
622 |
623 | brace-expansion@^1.0.0:
624 | version "1.1.6"
625 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9"
626 | dependencies:
627 | balanced-match "^0.4.1"
628 | concat-map "0.0.1"
629 |
630 | brace-expansion@^1.1.7:
631 | version "1.1.8"
632 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
633 | dependencies:
634 | balanced-match "^1.0.0"
635 | concat-map "0.0.1"
636 |
637 | buffer-shims@^1.0.0:
638 | version "1.0.0"
639 | resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51"
640 |
641 | builtin-modules@^1.0.0, builtin-modules@^1.1.1:
642 | version "1.1.1"
643 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
644 |
645 | caller-path@^0.1.0:
646 | version "0.1.0"
647 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
648 | dependencies:
649 | callsites "^0.2.0"
650 |
651 | callsites@^0.2.0:
652 | version "0.2.0"
653 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
654 |
655 | chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3:
656 | version "1.1.3"
657 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
658 | dependencies:
659 | ansi-styles "^2.2.1"
660 | escape-string-regexp "^1.0.2"
661 | has-ansi "^2.0.0"
662 | strip-ansi "^3.0.0"
663 | supports-color "^2.0.0"
664 |
665 | chalk@^2.0.0:
666 | version "2.0.1"
667 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.0.1.tgz#dbec49436d2ae15f536114e76d14656cdbc0f44d"
668 | dependencies:
669 | ansi-styles "^3.1.0"
670 | escape-string-regexp "^1.0.5"
671 | supports-color "^4.0.0"
672 |
673 | circular-json@^0.3.1:
674 | version "0.3.1"
675 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d"
676 |
677 | cli-cursor@^2.1.0:
678 | version "2.1.0"
679 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
680 | dependencies:
681 | restore-cursor "^2.0.0"
682 |
683 | cli-width@^2.0.0:
684 | version "2.1.0"
685 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a"
686 |
687 | co@^4.6.0:
688 | version "4.6.0"
689 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
690 |
691 | color-convert@^1.9.0:
692 | version "1.9.0"
693 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a"
694 | dependencies:
695 | color-name "^1.1.1"
696 |
697 | color-name@^1.1.1:
698 | version "1.1.3"
699 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
700 |
701 | concat-map@0.0.1:
702 | version "0.0.1"
703 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
704 |
705 | concat-stream@^1.6.0:
706 | version "1.6.0"
707 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
708 | dependencies:
709 | inherits "^2.0.3"
710 | readable-stream "^2.2.2"
711 | typedarray "^0.0.6"
712 |
713 | contains-path@^0.1.0:
714 | version "0.1.0"
715 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
716 |
717 | convert-source-map@^1.1.0:
718 | version "1.5.0"
719 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5"
720 |
721 | core-js@^1.0.0:
722 | version "1.2.7"
723 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
724 |
725 | core-js@^2.4.0:
726 | version "2.4.1"
727 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e"
728 |
729 | core-util-is@~1.0.0:
730 | version "1.0.2"
731 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
732 |
733 | cross-spawn@^5.1.0:
734 | version "5.1.0"
735 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
736 | dependencies:
737 | lru-cache "^4.0.1"
738 | shebang-command "^1.2.0"
739 | which "^1.2.9"
740 |
741 | damerau-levenshtein@^1.0.0:
742 | version "1.0.3"
743 | resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.3.tgz#ae4f4ce0b62acae10ff63a01bb08f652f5213af2"
744 |
745 | debug@^2.1.1, debug@^2.2.0:
746 | version "2.6.1"
747 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.1.tgz#79855090ba2c4e3115cc7d8769491d58f0491351"
748 | dependencies:
749 | ms "0.7.2"
750 |
751 | debug@^2.6.8:
752 | version "2.6.8"
753 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
754 | dependencies:
755 | ms "2.0.0"
756 |
757 | deep-is@~0.1.3:
758 | version "0.1.3"
759 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
760 |
761 | define-properties@^1.1.2:
762 | version "1.1.2"
763 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
764 | dependencies:
765 | foreach "^2.0.5"
766 | object-keys "^1.0.8"
767 |
768 | del@^2.0.2:
769 | version "2.2.2"
770 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
771 | dependencies:
772 | globby "^5.0.0"
773 | is-path-cwd "^1.0.0"
774 | is-path-in-cwd "^1.0.0"
775 | object-assign "^4.0.1"
776 | pify "^2.0.0"
777 | pinkie-promise "^2.0.0"
778 | rimraf "^2.2.8"
779 |
780 | detect-indent@^4.0.0:
781 | version "4.0.0"
782 | resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
783 | dependencies:
784 | repeating "^2.0.0"
785 |
786 | doctrine@1.5.0:
787 | version "1.5.0"
788 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
789 | dependencies:
790 | esutils "^2.0.2"
791 | isarray "^1.0.0"
792 |
793 | doctrine@^2.0.0:
794 | version "2.0.0"
795 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63"
796 | dependencies:
797 | esutils "^2.0.2"
798 | isarray "^1.0.0"
799 |
800 | dom-walk@^0.1.0:
801 | version "0.1.1"
802 | resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018"
803 |
804 | emoji-regex@^6.1.0:
805 | version "6.1.0"
806 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.0.tgz#d14ef743a7dfa6eaf436882bd1920a4aed84dd94"
807 |
808 | encoding@^0.1.11:
809 | version "0.1.12"
810 | resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
811 | dependencies:
812 | iconv-lite "~0.4.13"
813 |
814 | error-ex@^1.2.0:
815 | version "1.3.1"
816 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
817 | dependencies:
818 | is-arrayish "^0.2.1"
819 |
820 | es-abstract@^1.7.0:
821 | version "1.7.0"
822 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c"
823 | dependencies:
824 | es-to-primitive "^1.1.1"
825 | function-bind "^1.1.0"
826 | is-callable "^1.1.3"
827 | is-regex "^1.0.3"
828 |
829 | es-to-primitive@^1.1.1:
830 | version "1.1.1"
831 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
832 | dependencies:
833 | is-callable "^1.1.1"
834 | is-date-object "^1.0.1"
835 | is-symbol "^1.0.1"
836 |
837 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
838 | version "1.0.5"
839 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
840 |
841 | eslint-config-airbnb-base@^11.3.0:
842 | version "11.3.1"
843 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-11.3.1.tgz#c0ab108c9beed503cb999e4c60f4ef98eda0ed30"
844 | dependencies:
845 | eslint-restricted-globals "^0.1.1"
846 |
847 | eslint-config-airbnb@^15.1.0:
848 | version "15.1.0"
849 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-15.1.0.tgz#fd432965a906e30139001ba830f58f73aeddae8e"
850 | dependencies:
851 | eslint-config-airbnb-base "^11.3.0"
852 |
853 | eslint-import-resolver-node@^0.3.1:
854 | version "0.3.1"
855 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz#4422574cde66a9a7b099938ee4d508a199e0e3cc"
856 | dependencies:
857 | debug "^2.6.8"
858 | resolve "^1.2.0"
859 |
860 | eslint-module-utils@^2.1.1:
861 | version "2.1.1"
862 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449"
863 | dependencies:
864 | debug "^2.6.8"
865 | pkg-dir "^1.0.0"
866 |
867 | eslint-plugin-import@^2.7.0:
868 | version "2.7.0"
869 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz#21de33380b9efb55f5ef6d2e210ec0e07e7fa69f"
870 | dependencies:
871 | builtin-modules "^1.1.1"
872 | contains-path "^0.1.0"
873 | debug "^2.6.8"
874 | doctrine "1.5.0"
875 | eslint-import-resolver-node "^0.3.1"
876 | eslint-module-utils "^2.1.1"
877 | has "^1.0.1"
878 | lodash.cond "^4.3.0"
879 | minimatch "^3.0.3"
880 | read-pkg-up "^2.0.0"
881 |
882 | eslint-plugin-jsx-a11y@^6.0.2:
883 | version "6.0.2"
884 | resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.2.tgz#659277a758b036c305a7e4a13057c301cd3be73f"
885 | dependencies:
886 | aria-query "^0.7.0"
887 | array-includes "^3.0.3"
888 | ast-types-flow "0.0.7"
889 | axobject-query "^0.1.0"
890 | damerau-levenshtein "^1.0.0"
891 | emoji-regex "^6.1.0"
892 | jsx-ast-utils "^1.4.0"
893 |
894 | eslint-plugin-react@^7.1.0:
895 | version "7.1.0"
896 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.1.0.tgz#27770acf39f5fd49cd0af4083ce58104eb390d4c"
897 | dependencies:
898 | doctrine "^2.0.0"
899 | has "^1.0.1"
900 | jsx-ast-utils "^1.4.1"
901 |
902 | eslint-restricted-globals@^0.1.1:
903 | version "0.1.1"
904 | resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7"
905 |
906 | eslint-scope@^3.7.1:
907 | version "3.7.1"
908 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
909 | dependencies:
910 | esrecurse "^4.1.0"
911 | estraverse "^4.1.1"
912 |
913 | eslint@^4.3.0:
914 | version "4.3.0"
915 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.3.0.tgz#fcd7c96376bbf34c85ee67ed0012a299642b108f"
916 | dependencies:
917 | ajv "^5.2.0"
918 | babel-code-frame "^6.22.0"
919 | chalk "^1.1.3"
920 | concat-stream "^1.6.0"
921 | cross-spawn "^5.1.0"
922 | debug "^2.6.8"
923 | doctrine "^2.0.0"
924 | eslint-scope "^3.7.1"
925 | espree "^3.4.3"
926 | esquery "^1.0.0"
927 | estraverse "^4.2.0"
928 | esutils "^2.0.2"
929 | file-entry-cache "^2.0.0"
930 | functional-red-black-tree "^1.0.1"
931 | glob "^7.1.2"
932 | globals "^9.17.0"
933 | ignore "^3.3.3"
934 | imurmurhash "^0.1.4"
935 | inquirer "^3.0.6"
936 | is-resolvable "^1.0.0"
937 | js-yaml "^3.8.4"
938 | json-stable-stringify "^1.0.1"
939 | levn "^0.3.0"
940 | lodash "^4.17.4"
941 | minimatch "^3.0.2"
942 | mkdirp "^0.5.1"
943 | natural-compare "^1.4.0"
944 | optionator "^0.8.2"
945 | path-is-inside "^1.0.2"
946 | pluralize "^4.0.0"
947 | progress "^2.0.0"
948 | require-uncached "^1.0.3"
949 | semver "^5.3.0"
950 | strip-json-comments "~2.0.1"
951 | table "^4.0.1"
952 | text-table "~0.2.0"
953 |
954 | espree@^3.4.3:
955 | version "3.4.3"
956 | resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.3.tgz#2910b5ccd49ce893c2ffffaab4fd8b3a31b82374"
957 | dependencies:
958 | acorn "^5.0.1"
959 | acorn-jsx "^3.0.0"
960 |
961 | esprima@^4.0.0:
962 | version "4.0.0"
963 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804"
964 |
965 | esquery@^1.0.0:
966 | version "1.0.0"
967 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa"
968 | dependencies:
969 | estraverse "^4.0.0"
970 |
971 | esrecurse@^4.1.0:
972 | version "4.1.0"
973 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220"
974 | dependencies:
975 | estraverse "~4.1.0"
976 | object-assign "^4.0.1"
977 |
978 | estraverse@^4.0.0, estraverse@^4.1.1, estraverse@^4.2.0:
979 | version "4.2.0"
980 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
981 |
982 | estraverse@~4.1.0:
983 | version "4.1.1"
984 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2"
985 |
986 | esutils@^2.0.0, esutils@^2.0.2:
987 | version "2.0.2"
988 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
989 |
990 | external-editor@^2.0.4:
991 | version "2.0.4"
992 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.4.tgz#1ed9199da9cbfe2ef2f7a31b2fde8b0d12368972"
993 | dependencies:
994 | iconv-lite "^0.4.17"
995 | jschardet "^1.4.2"
996 | tmp "^0.0.31"
997 |
998 | fast-deep-equal@^1.0.0:
999 | version "1.0.0"
1000 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff"
1001 |
1002 | fast-levenshtein@~2.0.4:
1003 | version "2.0.6"
1004 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
1005 |
1006 | fbjs@^0.8.9, fbjs@~0.8.9:
1007 | version "0.8.14"
1008 | resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.14.tgz#d1dbe2be254c35a91e09f31f9cd50a40b2a0ed1c"
1009 | dependencies:
1010 | core-js "^1.0.0"
1011 | isomorphic-fetch "^2.1.1"
1012 | loose-envify "^1.0.0"
1013 | object-assign "^4.1.0"
1014 | promise "^7.1.1"
1015 | setimmediate "^1.0.5"
1016 | ua-parser-js "^0.7.9"
1017 |
1018 | figures@^2.0.0:
1019 | version "2.0.0"
1020 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
1021 | dependencies:
1022 | escape-string-regexp "^1.0.5"
1023 |
1024 | file-entry-cache@^2.0.0:
1025 | version "2.0.0"
1026 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
1027 | dependencies:
1028 | flat-cache "^1.2.1"
1029 | object-assign "^4.0.1"
1030 |
1031 | find-up@^1.0.0:
1032 | version "1.1.2"
1033 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
1034 | dependencies:
1035 | path-exists "^2.0.0"
1036 | pinkie-promise "^2.0.0"
1037 |
1038 | find-up@^2.0.0:
1039 | version "2.1.0"
1040 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
1041 | dependencies:
1042 | locate-path "^2.0.0"
1043 |
1044 | flat-cache@^1.2.1:
1045 | version "1.2.2"
1046 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96"
1047 | dependencies:
1048 | circular-json "^0.3.1"
1049 | del "^2.0.2"
1050 | graceful-fs "^4.1.2"
1051 | write "^0.2.1"
1052 |
1053 | flow-bin@^0.51.1:
1054 | version "0.51.1"
1055 | resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.51.1.tgz#7929c6f0a94e765429fcb2ee6e468278faa9c732"
1056 |
1057 | foreach@^2.0.5:
1058 | version "2.0.5"
1059 | resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
1060 |
1061 | fs.realpath@^1.0.0:
1062 | version "1.0.0"
1063 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
1064 |
1065 | function-bind@^1.0.2, function-bind@^1.1.0:
1066 | version "1.1.0"
1067 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
1068 |
1069 | functional-red-black-tree@^1.0.1:
1070 | version "1.0.1"
1071 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
1072 |
1073 | glob@^7.0.3, glob@^7.0.5:
1074 | version "7.1.1"
1075 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8"
1076 | dependencies:
1077 | fs.realpath "^1.0.0"
1078 | inflight "^1.0.4"
1079 | inherits "2"
1080 | minimatch "^3.0.2"
1081 | once "^1.3.0"
1082 | path-is-absolute "^1.0.0"
1083 |
1084 | glob@^7.1.2:
1085 | version "7.1.2"
1086 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
1087 | dependencies:
1088 | fs.realpath "^1.0.0"
1089 | inflight "^1.0.4"
1090 | inherits "2"
1091 | minimatch "^3.0.4"
1092 | once "^1.3.0"
1093 | path-is-absolute "^1.0.0"
1094 |
1095 | global@^4.3.0:
1096 | version "4.3.1"
1097 | resolved "https://registry.yarnpkg.com/global/-/global-4.3.1.tgz#5f757908c7cbabce54f386ae440e11e26b7916df"
1098 | dependencies:
1099 | min-document "^2.19.0"
1100 | process "~0.5.1"
1101 |
1102 | globals@^9.0.0:
1103 | version "9.16.0"
1104 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.16.0.tgz#63e903658171ec2d9f51b1d31de5e2b8dc01fb80"
1105 |
1106 | globals@^9.17.0:
1107 | version "9.18.0"
1108 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
1109 |
1110 | globby@^5.0.0:
1111 | version "5.0.0"
1112 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d"
1113 | dependencies:
1114 | array-union "^1.0.1"
1115 | arrify "^1.0.0"
1116 | glob "^7.0.3"
1117 | object-assign "^4.0.1"
1118 | pify "^2.0.0"
1119 | pinkie-promise "^2.0.0"
1120 |
1121 | graceful-fs@^4.1.2:
1122 | version "4.1.11"
1123 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
1124 |
1125 | has-ansi@^2.0.0:
1126 | version "2.0.0"
1127 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
1128 | dependencies:
1129 | ansi-regex "^2.0.0"
1130 |
1131 | has-flag@^2.0.0:
1132 | version "2.0.0"
1133 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
1134 |
1135 | has@^1.0.1:
1136 | version "1.0.1"
1137 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
1138 | dependencies:
1139 | function-bind "^1.0.2"
1140 |
1141 | home-or-tmp@^2.0.0:
1142 | version "2.0.0"
1143 | resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
1144 | dependencies:
1145 | os-homedir "^1.0.0"
1146 | os-tmpdir "^1.0.1"
1147 |
1148 | hosted-git-info@^2.1.4:
1149 | version "2.5.0"
1150 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c"
1151 |
1152 | iconv-lite@^0.4.17, iconv-lite@~0.4.13:
1153 | version "0.4.18"
1154 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2"
1155 |
1156 | ignore@^3.3.3:
1157 | version "3.3.3"
1158 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d"
1159 |
1160 | immutable@~3.7.6:
1161 | version "3.7.6"
1162 | resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b"
1163 |
1164 | imurmurhash@^0.1.4:
1165 | version "0.1.4"
1166 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
1167 |
1168 | inflight@^1.0.4:
1169 | version "1.0.6"
1170 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
1171 | dependencies:
1172 | once "^1.3.0"
1173 | wrappy "1"
1174 |
1175 | inherits@2, inherits@^2.0.3, inherits@~2.0.1:
1176 | version "2.0.3"
1177 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
1178 |
1179 | inquirer@^3.0.6:
1180 | version "3.2.1"
1181 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.1.tgz#06ceb0f540f45ca548c17d6840959878265fa175"
1182 | dependencies:
1183 | ansi-escapes "^2.0.0"
1184 | chalk "^2.0.0"
1185 | cli-cursor "^2.1.0"
1186 | cli-width "^2.0.0"
1187 | external-editor "^2.0.4"
1188 | figures "^2.0.0"
1189 | lodash "^4.3.0"
1190 | mute-stream "0.0.7"
1191 | run-async "^2.2.0"
1192 | rx-lite "^4.0.8"
1193 | rx-lite-aggregates "^4.0.8"
1194 | string-width "^2.1.0"
1195 | strip-ansi "^4.0.0"
1196 | through "^2.3.6"
1197 |
1198 | invariant@^2.2.0:
1199 | version "2.2.2"
1200 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
1201 | dependencies:
1202 | loose-envify "^1.0.0"
1203 |
1204 | is-arrayish@^0.2.1:
1205 | version "0.2.1"
1206 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
1207 |
1208 | is-builtin-module@^1.0.0:
1209 | version "1.0.0"
1210 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
1211 | dependencies:
1212 | builtin-modules "^1.0.0"
1213 |
1214 | is-callable@^1.1.1, is-callable@^1.1.3:
1215 | version "1.1.3"
1216 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
1217 |
1218 | is-date-object@^1.0.1:
1219 | version "1.0.1"
1220 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
1221 |
1222 | is-finite@^1.0.0:
1223 | version "1.0.2"
1224 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
1225 | dependencies:
1226 | number-is-nan "^1.0.0"
1227 |
1228 | is-fullwidth-code-point@^2.0.0:
1229 | version "2.0.0"
1230 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
1231 |
1232 | is-path-cwd@^1.0.0:
1233 | version "1.0.0"
1234 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
1235 |
1236 | is-path-in-cwd@^1.0.0:
1237 | version "1.0.0"
1238 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc"
1239 | dependencies:
1240 | is-path-inside "^1.0.0"
1241 |
1242 | is-path-inside@^1.0.0:
1243 | version "1.0.0"
1244 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f"
1245 | dependencies:
1246 | path-is-inside "^1.0.1"
1247 |
1248 | is-promise@^2.1.0:
1249 | version "2.1.0"
1250 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
1251 |
1252 | is-regex@^1.0.3:
1253 | version "1.0.4"
1254 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
1255 | dependencies:
1256 | has "^1.0.1"
1257 |
1258 | is-resolvable@^1.0.0:
1259 | version "1.0.0"
1260 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62"
1261 | dependencies:
1262 | tryit "^1.0.1"
1263 |
1264 | is-stream@^1.0.1:
1265 | version "1.1.0"
1266 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
1267 |
1268 | is-symbol@^1.0.1:
1269 | version "1.0.1"
1270 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
1271 |
1272 | isarray@^1.0.0, isarray@~1.0.0:
1273 | version "1.0.0"
1274 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
1275 |
1276 | isexe@^2.0.0:
1277 | version "2.0.0"
1278 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
1279 |
1280 | isomorphic-fetch@^2.1.1:
1281 | version "2.2.1"
1282 | resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
1283 | dependencies:
1284 | node-fetch "^1.0.1"
1285 | whatwg-fetch ">=0.10.0"
1286 |
1287 | js-tokens@^3.0.0:
1288 | version "3.0.1"
1289 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
1290 |
1291 | js-yaml@^3.8.4:
1292 | version "3.9.0"
1293 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.0.tgz#4ffbbf25c2ac963b8299dc74da7e3740de1c18ce"
1294 | dependencies:
1295 | argparse "^1.0.7"
1296 | esprima "^4.0.0"
1297 |
1298 | jschardet@^1.4.2:
1299 | version "1.5.0"
1300 | resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.0.tgz#a61f310306a5a71188e1b1acd08add3cfbb08b1e"
1301 |
1302 | jsesc@^1.3.0:
1303 | version "1.3.0"
1304 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
1305 |
1306 | json-schema-traverse@^0.3.0:
1307 | version "0.3.1"
1308 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
1309 |
1310 | json-stable-stringify@^1.0.1:
1311 | version "1.0.1"
1312 | resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
1313 | dependencies:
1314 | jsonify "~0.0.0"
1315 |
1316 | json5@^0.5.0:
1317 | version "0.5.1"
1318 | resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
1319 |
1320 | jsonify@~0.0.0:
1321 | version "0.0.0"
1322 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
1323 |
1324 | jsx-ast-utils@^1.4.0, jsx-ast-utils@^1.4.1:
1325 | version "1.4.1"
1326 | resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz#3867213e8dd79bf1e8f2300c0cfc1efb182c0df1"
1327 |
1328 | levn@^0.3.0, levn@~0.3.0:
1329 | version "0.3.0"
1330 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
1331 | dependencies:
1332 | prelude-ls "~1.1.2"
1333 | type-check "~0.3.2"
1334 |
1335 | load-json-file@^2.0.0:
1336 | version "2.0.0"
1337 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
1338 | dependencies:
1339 | graceful-fs "^4.1.2"
1340 | parse-json "^2.2.0"
1341 | pify "^2.0.0"
1342 | strip-bom "^3.0.0"
1343 |
1344 | locate-path@^2.0.0:
1345 | version "2.0.0"
1346 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
1347 | dependencies:
1348 | p-locate "^2.0.0"
1349 | path-exists "^3.0.0"
1350 |
1351 | lodash.cond@^4.3.0:
1352 | version "4.5.2"
1353 | resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
1354 |
1355 | lodash@^4.0.0, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0, lodash@^4.6.1:
1356 | version "4.17.4"
1357 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
1358 |
1359 | loose-envify@^1.0.0, loose-envify@^1.3.1:
1360 | version "1.3.1"
1361 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
1362 | dependencies:
1363 | js-tokens "^3.0.0"
1364 |
1365 | lru-cache@^4.0.1:
1366 | version "4.1.1"
1367 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55"
1368 | dependencies:
1369 | pseudomap "^1.0.2"
1370 | yallist "^2.1.2"
1371 |
1372 | mimic-fn@^1.0.0:
1373 | version "1.1.0"
1374 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18"
1375 |
1376 | min-document@^2.19.0:
1377 | version "2.19.0"
1378 | resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
1379 | dependencies:
1380 | dom-walk "^0.1.0"
1381 |
1382 | minimatch@^3.0.2, minimatch@^3.0.3:
1383 | version "3.0.3"
1384 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774"
1385 | dependencies:
1386 | brace-expansion "^1.0.0"
1387 |
1388 | minimatch@^3.0.4:
1389 | version "3.0.4"
1390 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
1391 | dependencies:
1392 | brace-expansion "^1.1.7"
1393 |
1394 | minimist@0.0.8:
1395 | version "0.0.8"
1396 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
1397 |
1398 | mkdirp@^0.5.1:
1399 | version "0.5.1"
1400 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
1401 | dependencies:
1402 | minimist "0.0.8"
1403 |
1404 | ms@0.7.2:
1405 | version "0.7.2"
1406 | resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765"
1407 |
1408 | ms@2.0.0:
1409 | version "2.0.0"
1410 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1411 |
1412 | mute-stream@0.0.7:
1413 | version "0.0.7"
1414 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
1415 |
1416 | natural-compare@^1.4.0:
1417 | version "1.4.0"
1418 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
1419 |
1420 | node-fetch@^1.0.1:
1421 | version "1.7.1"
1422 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.1.tgz#899cb3d0a3c92f952c47f1b876f4c8aeabd400d5"
1423 | dependencies:
1424 | encoding "^0.1.11"
1425 | is-stream "^1.0.1"
1426 |
1427 | normalize-package-data@^2.3.2:
1428 | version "2.4.0"
1429 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
1430 | dependencies:
1431 | hosted-git-info "^2.1.4"
1432 | is-builtin-module "^1.0.0"
1433 | semver "2 || 3 || 4 || 5"
1434 | validate-npm-package-license "^3.0.1"
1435 |
1436 | number-is-nan@^1.0.0:
1437 | version "1.0.1"
1438 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
1439 |
1440 | object-assign@^4.0.1, object-assign@^4.1.0:
1441 | version "4.1.1"
1442 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
1443 |
1444 | object-keys@^1.0.8:
1445 | version "1.0.11"
1446 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
1447 |
1448 | once@^1.3.0:
1449 | version "1.4.0"
1450 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1451 | dependencies:
1452 | wrappy "1"
1453 |
1454 | onetime@^2.0.0:
1455 | version "2.0.1"
1456 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
1457 | dependencies:
1458 | mimic-fn "^1.0.0"
1459 |
1460 | optionator@^0.8.2:
1461 | version "0.8.2"
1462 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
1463 | dependencies:
1464 | deep-is "~0.1.3"
1465 | fast-levenshtein "~2.0.4"
1466 | levn "~0.3.0"
1467 | prelude-ls "~1.1.2"
1468 | type-check "~0.3.2"
1469 | wordwrap "~1.0.0"
1470 |
1471 | os-homedir@^1.0.0:
1472 | version "1.0.2"
1473 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
1474 |
1475 | os-tmpdir@^1.0.1, os-tmpdir@~1.0.1:
1476 | version "1.0.2"
1477 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
1478 |
1479 | p-limit@^1.1.0:
1480 | version "1.1.0"
1481 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc"
1482 |
1483 | p-locate@^2.0.0:
1484 | version "2.0.0"
1485 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
1486 | dependencies:
1487 | p-limit "^1.1.0"
1488 |
1489 | parse-json@^2.2.0:
1490 | version "2.2.0"
1491 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
1492 | dependencies:
1493 | error-ex "^1.2.0"
1494 |
1495 | path-exists@^2.0.0:
1496 | version "2.1.0"
1497 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
1498 | dependencies:
1499 | pinkie-promise "^2.0.0"
1500 |
1501 | path-exists@^3.0.0:
1502 | version "3.0.0"
1503 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
1504 |
1505 | path-is-absolute@^1.0.0:
1506 | version "1.0.1"
1507 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1508 |
1509 | path-is-inside@^1.0.1, path-is-inside@^1.0.2:
1510 | version "1.0.2"
1511 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
1512 |
1513 | path-parse@^1.0.5:
1514 | version "1.0.5"
1515 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
1516 |
1517 | path-type@^2.0.0:
1518 | version "2.0.0"
1519 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
1520 | dependencies:
1521 | pify "^2.0.0"
1522 |
1523 | pify@^2.0.0:
1524 | version "2.3.0"
1525 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
1526 |
1527 | pinkie-promise@^2.0.0:
1528 | version "2.0.1"
1529 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
1530 | dependencies:
1531 | pinkie "^2.0.0"
1532 |
1533 | pinkie@^2.0.0:
1534 | version "2.0.4"
1535 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
1536 |
1537 | pkg-dir@^1.0.0:
1538 | version "1.0.0"
1539 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
1540 | dependencies:
1541 | find-up "^1.0.0"
1542 |
1543 | pluralize@^4.0.0:
1544 | version "4.0.0"
1545 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762"
1546 |
1547 | prelude-ls@~1.1.2:
1548 | version "1.1.2"
1549 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
1550 |
1551 | private@^0.1.6:
1552 | version "0.1.7"
1553 | resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1"
1554 |
1555 | process-nextick-args@~1.0.6:
1556 | version "1.0.7"
1557 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
1558 |
1559 | process@~0.5.1:
1560 | version "0.5.2"
1561 | resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
1562 |
1563 | progress@^2.0.0:
1564 | version "2.0.0"
1565 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f"
1566 |
1567 | promise@^7.1.1:
1568 | version "7.3.1"
1569 | resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
1570 | dependencies:
1571 | asap "~2.0.3"
1572 |
1573 | prop-types@^15.5.10:
1574 | version "15.5.10"
1575 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154"
1576 | dependencies:
1577 | fbjs "^0.8.9"
1578 | loose-envify "^1.3.1"
1579 |
1580 | pseudomap@^1.0.2:
1581 | version "1.0.2"
1582 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
1583 |
1584 | react-deep-force-update@^1.0.0:
1585 | version "1.0.1"
1586 | resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.0.1.tgz#f911b5be1d2a6fe387507dd6e9a767aa2924b4c7"
1587 |
1588 | react-native-animated-overlay@^0.0.10:
1589 | version "0.0.10"
1590 | resolved "https://registry.yarnpkg.com/react-native-animated-overlay/-/react-native-animated-overlay-0.0.10.tgz#7dd4a7615605970b7057c7ccabe45c2b83d36da6"
1591 |
1592 | react-native-deprecated-custom-components@^0.1.1:
1593 | version "0.1.1"
1594 | resolved "https://registry.yarnpkg.com/react-native-deprecated-custom-components/-/react-native-deprecated-custom-components-0.1.1.tgz#bb911f01bf2f47f0a91764757bf918f3216e94e9"
1595 | dependencies:
1596 | fbjs "~0.8.9"
1597 | immutable "~3.7.6"
1598 | prop-types "^15.5.10"
1599 | react-timer-mixin "^0.13.2"
1600 | rebound "^0.0.13"
1601 |
1602 | react-native-root-siblings@^1.2.1:
1603 | version "1.2.1"
1604 | resolved "https://registry.yarnpkg.com/react-native-root-siblings/-/react-native-root-siblings-1.2.1.tgz#6f8d0e711dbf9aef4e57e73aea751372b5aefcff"
1605 | dependencies:
1606 | static-container "^1.0.0"
1607 |
1608 | react-proxy@^1.1.7:
1609 | version "1.1.8"
1610 | resolved "https://registry.yarnpkg.com/react-proxy/-/react-proxy-1.1.8.tgz#9dbfd9d927528c3aa9f444e4558c37830ab8c26a"
1611 | dependencies:
1612 | lodash "^4.6.1"
1613 | react-deep-force-update "^1.0.0"
1614 |
1615 | react-timer-mixin@^0.13.2:
1616 | version "0.13.3"
1617 | resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.3.tgz#0da8b9f807ec07dc3e854d082c737c65605b3d22"
1618 |
1619 | react-transform-hmr@^1.0.4:
1620 | version "1.0.4"
1621 | resolved "https://registry.yarnpkg.com/react-transform-hmr/-/react-transform-hmr-1.0.4.tgz#e1a40bd0aaefc72e8dfd7a7cda09af85066397bb"
1622 | dependencies:
1623 | global "^4.3.0"
1624 | react-proxy "^1.1.7"
1625 |
1626 | read-pkg-up@^2.0.0:
1627 | version "2.0.0"
1628 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
1629 | dependencies:
1630 | find-up "^2.0.0"
1631 | read-pkg "^2.0.0"
1632 |
1633 | read-pkg@^2.0.0:
1634 | version "2.0.0"
1635 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
1636 | dependencies:
1637 | load-json-file "^2.0.0"
1638 | normalize-package-data "^2.3.2"
1639 | path-type "^2.0.0"
1640 |
1641 | readable-stream@^2.2.2:
1642 | version "2.2.2"
1643 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e"
1644 | dependencies:
1645 | buffer-shims "^1.0.0"
1646 | core-util-is "~1.0.0"
1647 | inherits "~2.0.1"
1648 | isarray "~1.0.0"
1649 | process-nextick-args "~1.0.6"
1650 | string_decoder "~0.10.x"
1651 | util-deprecate "~1.0.1"
1652 |
1653 | rebound@^0.0.13:
1654 | version "0.0.13"
1655 | resolved "https://registry.yarnpkg.com/rebound/-/rebound-0.0.13.tgz#4a225254caf7da756797b19c5817bf7a7941fac1"
1656 |
1657 | regenerator-runtime@^0.10.0:
1658 | version "0.10.3"
1659 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e"
1660 |
1661 | regenerator-transform@0.9.8:
1662 | version "0.9.8"
1663 | resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.8.tgz#0f88bb2bc03932ddb7b6b7312e68078f01026d6c"
1664 | dependencies:
1665 | babel-runtime "^6.18.0"
1666 | babel-types "^6.19.0"
1667 | private "^0.1.6"
1668 |
1669 | repeating@^2.0.0:
1670 | version "2.0.1"
1671 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
1672 | dependencies:
1673 | is-finite "^1.0.0"
1674 |
1675 | require-uncached@^1.0.3:
1676 | version "1.0.3"
1677 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
1678 | dependencies:
1679 | caller-path "^0.1.0"
1680 | resolve-from "^1.0.0"
1681 |
1682 | resolve-from@^1.0.0:
1683 | version "1.0.1"
1684 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
1685 |
1686 | resolve@^1.2.0:
1687 | version "1.4.0"
1688 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86"
1689 | dependencies:
1690 | path-parse "^1.0.5"
1691 |
1692 | restore-cursor@^2.0.0:
1693 | version "2.0.0"
1694 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
1695 | dependencies:
1696 | onetime "^2.0.0"
1697 | signal-exit "^3.0.2"
1698 |
1699 | rimraf@^2.2.8:
1700 | version "2.6.0"
1701 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.0.tgz#89b8a0fe432b9ff9ec9a925a00b6cdb3a91bbada"
1702 | dependencies:
1703 | glob "^7.0.5"
1704 |
1705 | rimraf@^2.6.1:
1706 | version "2.6.1"
1707 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
1708 | dependencies:
1709 | glob "^7.0.5"
1710 |
1711 | run-async@^2.2.0:
1712 | version "2.3.0"
1713 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
1714 | dependencies:
1715 | is-promise "^2.1.0"
1716 |
1717 | rx-lite-aggregates@^4.0.8:
1718 | version "4.0.8"
1719 | resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be"
1720 | dependencies:
1721 | rx-lite "*"
1722 |
1723 | rx-lite@*, rx-lite@^4.0.8:
1724 | version "4.0.8"
1725 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
1726 |
1727 | "semver@2 || 3 || 4 || 5", semver@^5.3.0:
1728 | version "5.4.1"
1729 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
1730 |
1731 | setimmediate@^1.0.5:
1732 | version "1.0.5"
1733 | resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
1734 |
1735 | shebang-command@^1.2.0:
1736 | version "1.2.0"
1737 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
1738 | dependencies:
1739 | shebang-regex "^1.0.0"
1740 |
1741 | shebang-regex@^1.0.0:
1742 | version "1.0.0"
1743 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
1744 |
1745 | signal-exit@^3.0.2:
1746 | version "3.0.2"
1747 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
1748 |
1749 | slash@^1.0.0:
1750 | version "1.0.0"
1751 | resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
1752 |
1753 | slice-ansi@0.0.4:
1754 | version "0.0.4"
1755 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35"
1756 |
1757 | source-map-support@^0.4.2:
1758 | version "0.4.15"
1759 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1"
1760 | dependencies:
1761 | source-map "^0.5.6"
1762 |
1763 | source-map@^0.5.0, source-map@^0.5.6:
1764 | version "0.5.6"
1765 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
1766 |
1767 | spdx-correct@~1.0.0:
1768 | version "1.0.2"
1769 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
1770 | dependencies:
1771 | spdx-license-ids "^1.0.2"
1772 |
1773 | spdx-expression-parse@~1.0.0:
1774 | version "1.0.4"
1775 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
1776 |
1777 | spdx-license-ids@^1.0.2:
1778 | version "1.2.2"
1779 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
1780 |
1781 | sprintf-js@~1.0.2:
1782 | version "1.0.3"
1783 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
1784 |
1785 | static-container@^1.0.0:
1786 | version "1.2.0"
1787 | resolved "https://registry.yarnpkg.com/static-container/-/static-container-1.2.0.tgz#1c6e92b869da47d32abe47f45f50bf39661d9c2f"
1788 |
1789 | string-width@^2.0.0:
1790 | version "2.0.0"
1791 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.0.0.tgz#635c5436cc72a6e0c387ceca278d4e2eec52687e"
1792 | dependencies:
1793 | is-fullwidth-code-point "^2.0.0"
1794 | strip-ansi "^3.0.0"
1795 |
1796 | string-width@^2.1.0:
1797 | version "2.1.1"
1798 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
1799 | dependencies:
1800 | is-fullwidth-code-point "^2.0.0"
1801 | strip-ansi "^4.0.0"
1802 |
1803 | string_decoder@~0.10.x:
1804 | version "0.10.31"
1805 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
1806 |
1807 | strip-ansi@^3.0.0:
1808 | version "3.0.1"
1809 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1810 | dependencies:
1811 | ansi-regex "^2.0.0"
1812 |
1813 | strip-ansi@^4.0.0:
1814 | version "4.0.0"
1815 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
1816 | dependencies:
1817 | ansi-regex "^3.0.0"
1818 |
1819 | strip-bom@^3.0.0:
1820 | version "3.0.0"
1821 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
1822 |
1823 | strip-json-comments@~2.0.1:
1824 | version "2.0.1"
1825 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
1826 |
1827 | supports-color@^2.0.0:
1828 | version "2.0.0"
1829 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
1830 |
1831 | supports-color@^4.0.0:
1832 | version "4.2.1"
1833 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836"
1834 | dependencies:
1835 | has-flag "^2.0.0"
1836 |
1837 | table@^4.0.1:
1838 | version "4.0.1"
1839 | resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435"
1840 | dependencies:
1841 | ajv "^4.7.0"
1842 | ajv-keywords "^1.0.0"
1843 | chalk "^1.1.1"
1844 | lodash "^4.0.0"
1845 | slice-ansi "0.0.4"
1846 | string-width "^2.0.0"
1847 |
1848 | text-table@~0.2.0:
1849 | version "0.2.0"
1850 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
1851 |
1852 | through@^2.3.6:
1853 | version "2.3.8"
1854 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
1855 |
1856 | tmp@^0.0.31:
1857 | version "0.0.31"
1858 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"
1859 | dependencies:
1860 | os-tmpdir "~1.0.1"
1861 |
1862 | to-fast-properties@^1.0.1:
1863 | version "1.0.2"
1864 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320"
1865 |
1866 | trim-right@^1.0.1:
1867 | version "1.0.1"
1868 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
1869 |
1870 | tryit@^1.0.1:
1871 | version "1.0.3"
1872 | resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
1873 |
1874 | type-check@~0.3.2:
1875 | version "0.3.2"
1876 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
1877 | dependencies:
1878 | prelude-ls "~1.1.2"
1879 |
1880 | typedarray@^0.0.6:
1881 | version "0.0.6"
1882 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
1883 |
1884 | ua-parser-js@^0.7.9:
1885 | version "0.7.14"
1886 | resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.14.tgz#110d53fa4c3f326c121292bbeac904d2e03387ca"
1887 |
1888 | util-deprecate@~1.0.1:
1889 | version "1.0.2"
1890 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1891 |
1892 | validate-npm-package-license@^3.0.1:
1893 | version "3.0.1"
1894 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
1895 | dependencies:
1896 | spdx-correct "~1.0.0"
1897 | spdx-expression-parse "~1.0.0"
1898 |
1899 | whatwg-fetch@>=0.10.0:
1900 | version "2.0.3"
1901 | resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
1902 |
1903 | which@^1.2.9:
1904 | version "1.2.14"
1905 | resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5"
1906 | dependencies:
1907 | isexe "^2.0.0"
1908 |
1909 | wordwrap@~1.0.0:
1910 | version "1.0.0"
1911 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
1912 |
1913 | wrappy@1:
1914 | version "1.0.2"
1915 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1916 |
1917 | write@^0.2.1:
1918 | version "0.2.1"
1919 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
1920 | dependencies:
1921 | mkdirp "^0.5.1"
1922 |
1923 | yallist@^2.1.2:
1924 | version "2.1.2"
1925 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
1926 |
--------------------------------------------------------------------------------