diff --git a/.DS_Store b/.DS_Store index e88aba3..3566748 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/app/.gitignore b/app/.gitignore index 79d6af4..2af0016 100755 --- a/app/.gitignore +++ b/app/.gitignore @@ -18,7 +18,6 @@ .env.test.local .env.production.local .eslintrc - npm-debug.log* yarn-debug.log* yarn-error.log* diff --git a/app/README.md b/app/README.md index 9d9614c..e69de29 100755 --- a/app/README.md +++ b/app/README.md @@ -1,68 +0,0 @@ -This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). - -## Available Scripts - -In the project directory, you can run: - -### `npm start` - -Runs the app in the development mode.
-Open [http://localhost:3000](http://localhost:3000) to view it in the browser. - -The page will reload if you make edits.
-You will also see any lint errors in the console. - -### `npm test` - -Launches the test runner in the interactive watch mode.
-See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. - -### `npm run build` - -Builds the app for production to the `build` folder.
-It correctly bundles React in production mode and optimizes the build for the best performance. - -The build is minified and the filenames include the hashes.
-Your app is ready to be deployed! - -See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. - -### `npm run eject` - -**Note: this is a one-way operation. Once you `eject`, you can’t go back!** - -If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. - -Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. - -You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. - -## Learn More - -You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). - -To learn React, check out the [React documentation](https://reactjs.org/). - -### Code Splitting - -This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting - -### Analyzing the Bundle Size - -This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size - -### Making a Progressive Web App - -This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app - -### Advanced Configuration - -This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration - -### Deployment - -This section has moved here: https://facebook.github.io/create-react-app/docs/deployment - -### `npm run build` fails to minify - -This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify diff --git a/app/package.json b/app/package.json index 01e8f05..67b3c06 100644 --- a/app/package.json +++ b/app/package.json @@ -1,22 +1,22 @@ { - "name": "app", + "name": "redux-starter", "version": "0.1.0", "private": true, "dependencies": { "@material-ui/core": "^3.9.2", + "@material-ui/icons": "^3.0.2", "axios": "^0.18.0", - "bootstrap": "^4.2.1", + "moment": "^2.24.0", + "node-sass": "^4.11.0", "react": "^16.7.0", "react-dom": "^16.7.0", + "react-loader-spinner": "^2.3.0", "react-redux": "^6.0.0", "react-router-dom": "^4.3.1", "react-scripts": "2.1.3", - "reactstrap": "^7.1.0", "redux": "^4.0.1", "redux-logger": "^3.0.6", "redux-thunk": "^2.3.0", - "semantic-ui-css": "^2.4.1", - "semantic-ui-react": "^0.84.0", "styled-components": "^4.1.3" }, "scripts": { diff --git a/app/public/favicon.ico b/app/public/favicon.ico new file mode 100755 index 0000000..a11777c Binary files /dev/null and b/app/public/favicon.ico differ diff --git a/app/public/index.html b/app/public/index.html index beb8241..861552b 100755 --- a/app/public/index.html +++ b/app/public/index.html @@ -7,15 +7,54 @@ name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> + + + + + + + + + React App
+ diff --git a/app/src/App.jsx b/app/src/App.jsx new file mode 100755 index 0000000..2e9ea7d --- /dev/null +++ b/app/src/App.jsx @@ -0,0 +1,48 @@ +import React, { Component } from "react"; +import NavigationView from "./views/NavigationView"; +import "./styles/App.scss"; +import MainView from "./views/MainView"; +import ActivityFormView from "./views/ActivityFormView"; +import LoginView from "./views/LoginView"; +import ReflectionFormView from "./views/ReflectionFormView"; +import { connect } from "react-redux"; +import { Route } from "react-router"; +import { logout } from "./store/actions/user"; + +// import { Link } from "react-router-dom"; + +class App extends Component { + render() { + return this.props.loggedIn ? ( + <> + + ( + + )} + /> + } + /> + } + /> + + ) : ( + + ); + } +} + +const mapStateToProps = state => { + return { loggedIn: state.user.loggedIn }; +}; + +export default connect( + mapStateToProps, + { logout } +)(App); diff --git a/app/src/actions/Activity.jsx b/app/src/actions/Activity.jsx deleted file mode 100644 index 1a8ee95..0000000 --- a/app/src/actions/Activity.jsx +++ /dev/null @@ -1,68 +0,0 @@ -import axios from "axios"; - -//Post variables -export const ADD_ACTIVITY = "ADD_ACTIVITY"; -export const ADD_ACTIVITY_SUCCESS = "ADD_ACTIVITY_SUCCESS"; -export const ADD_ACTIVITY_FAIL = "ADD_ACTIVITY_FAIL"; - -//Put variables -export const UPDATE_ACTIVITY = "UPDATE_ACTIVITY"; -export const UPDATE_ACTIVITY_SUCCESS = "UPDATE_ACTIVITY_SUCCESS"; -export const UPDATE_ACTIVITY_FAIL = "UPDATE_ACTIVITY_FAIL"; - -//Delete variables -export const DELETE_ACTIVITY = "DELETE_ACTIVITY"; -export const DELETE_ACTIVITY_SUCCESS = "DELETE_ACTIVITY_SUCCESS"; -export const DELETE_ACTIVITY_FAIL = "DELETE_ACTIVITY_FAIL"; - -//base URL -import { baseURL } from "./baseURL"; - -// DOES NOT WORK -- NEED TO GET API URL. -//Create -export const addActivity = activity => dispatch => { - dispatch({ type: ADD_ACTIVITY }); - axios - .post(`${baseURL}`, activity) - .then(res => - dispatch({ - type: ADD_ACTIVITY_SUCCESS, - payload: res.data - }) - ) - .catch(err => - dispatch({ - type: ADD_ACTIVITY_FAIL, - error: err - }) - ); -}; - -//Update -export const updateActivity = activity => dispatch => { - axios - .put(`${baseURL}`, activity) - .then(res => - dispatch({ - type: UPDATE_ACTIVITY_SUCCESS, - payload: res.data - }) - ) - .catch(err => - dispatch({ - type: UPDATE_ACTIVITY_FAIL, - error: err - }) - ); -}; - -//Delete - -export const deleteActivity = id => dispatch => { - axios.delete(`${baseURL}/${id}`).then(res => - dispatch({ - type: DELETE_ACTIVITY, - payload: res.data - }) - ); -}; diff --git a/app/src/actions/Reflection.jsx b/app/src/actions/Reflection.jsx deleted file mode 100644 index dbc3e1d..0000000 --- a/app/src/actions/Reflection.jsx +++ /dev/null @@ -1,67 +0,0 @@ -import axios from 'axios'; - -//Post variables -export const ADD_REFLECTION = 'ADD_REFLECTION'; -export const ADD_REFLECTION_SUCCESS = 'ADD_REFLECTION_SUCCESS'; -export const ADD_REFLECTION_FAIL = 'ADD_REFLECTION_FAIL'; - -//Put variables -export const UPDATE_REFLECTION = 'UPDATE_REFLECTION'; -export const UPDATE_REFLECTION_SUCCESS = 'UPDATE_REFLECTION_SUCCESS'; -export const UPDATE_REFLECTION_FAIL = 'UPDATE_REFLECTION_FAIL'; - -//Delete variables -export const DELETE_REFLECTION = 'DELETE_REFLECTION'; -export const DELETE_REFLECTION_SUCCESS = 'DELETE_REFLECTION_SUCCESS'; -export const DELETE_REFLECTION_FAIL = 'DELETE_REFLECTION_FAIL'; - -//base URL -import {baseURL} from './baseURL'; - -//Create -export const addReflection = (reflection) => (dispatch) => { - dispatch({ type: ADD_REFLECTION }); - axios - .post(`${baseURL}`, reflection) - .then((res) => - dispatch({ - type: ADD_REFLECTION_SUCCESS, - payload: res.data - }) - ) - .catch((err) => - dispatch({ - type: ADD_REFLECTION_FAIL, - error: err - }) - ); -}; - -//Update -export const updateReflection = (reflection) => (dispatch) => { - axios - .put(`${baseURL}`, reflection) - .then((res) => - dispatch({ - type: UPDATE_REFLECTION_SUCCESS, - payload: res.data - }) - ) - .catch((err) => - dispatch({ - type: UPDATE_REFLECTION_FAIL, - error: err - }) - ); -}; - -//Delete - -export const deleteReflection = (id) => (dispatch) => { - axios.delete(`${baseURL}/${id}`).then((res) => - dispatch({ - type: DELETE_REFLECTION, - payload: res.data - }) - ); -}; diff --git a/app/src/actions/User.jsx b/app/src/actions/User.jsx deleted file mode 100644 index 64d7a3d..0000000 --- a/app/src/actions/User.jsx +++ /dev/null @@ -1,23 +0,0 @@ -//Import axios for database calls -import axios from 'axios'; - -//Database URL -import { baseURL } from './baseURL'; - -//Action types -export const FETCH_START = 'FETCH_START'; -export const FETCH_SUCCESS = 'FETCH_SUCCESS'; -export const FETCH_FAILURE = 'FETCH_FAILURE'; - -export const getUser = dispatch => { - return dispatch => { - dispatch({ type: FETCH_START }); - axios.get(`${baseURL}`) - .then(response => { - dispatch({ type: FETCH_SUCCESS, payload: response.data }) - }) - .catch(err => { - dispatch({ type: FETCH_FAILURE, payload: err }) - }) - } -} \ No newline at end of file diff --git a/app/src/actions/baseURL.jsx b/app/src/actions/baseURL.jsx deleted file mode 100644 index a4cb0ad..0000000 --- a/app/src/actions/baseURL.jsx +++ /dev/null @@ -1,2 +0,0 @@ -//This file is solely for storing the database base URL. -export const baseURL = "http://localhost:5000/home"; diff --git a/app/src/assets/trianglify.png b/app/src/assets/trianglify.png deleted file mode 100644 index 113c90e..0000000 Binary files a/app/src/assets/trianglify.png and /dev/null differ diff --git a/app/src/components/App.jsx b/app/src/components/App.jsx deleted file mode 100755 index 4c662ba..0000000 --- a/app/src/components/App.jsx +++ /dev/null @@ -1,60 +0,0 @@ -//Library Imports -import React, { Component } from "react"; -import { connect } from "react-redux"; - -//File imports -import Login from "../views/Login"; -import Home from "../views/Home"; -// import NewJournal from "../views/NewJournal"; -// import NewReflection from "../views/NewReflection"; -// import Journals from "../views/Journals"; -// import Reflections from "../views/Reflections"; - -import { getUser } from "../actions/User"; - -class App extends Component { - constructor() { - super(); - this.state = { - isLoggedIn: false - }; - } - componentDidMount() { - //Get the user once this component mounts. - this.props.getUser(); - } - - logIn = e => { - e.preventDefault(); - this.setState({ isLoggedIn: true }); - }; - - logOut = e => { - e.preventDefault(); - this.setState({ isLoggedIn: false }); - }; - - render() { - return ( - //Need to implement single page functionality. -
- {this.state.isLoggedIn ? ( - - ) : ( - - )} -
- ); - } -} - -const mapStateToProps = state => { - return { - Accounts: state.Accounts - }; -}; - -export default connect( - mapStateToProps, - { getUser } -)(App); diff --git a/app/src/components/Journal/HomeComponent.jsx b/app/src/components/Journal/HomeComponent.jsx deleted file mode 100644 index 831bc8a..0000000 --- a/app/src/components/Journal/HomeComponent.jsx +++ /dev/null @@ -1,81 +0,0 @@ -import React from 'react'; -import { Link } from 'react-router-dom'; - -import { Button } from 'semantic-ui-react' -import styled from 'styled-components'; - - -export const HomeComponent = (props) => { - return ( - <> - Welcome to your dashboard. name! - - -

Activity Log

- - -
- -

Reflection Log

- - -
-
- - ); -}; - -//Styled Components - -const HeaderText = styled.h2` - font-size: 28px; - color: white; - text-align: center; -` - -const JournalStyling = styled.div` - display: flex; - margin: 100px auto 0; - justify-content: center; - align-items: center; - .ui.purple.button{ - margin: 10px 0; - } - .ui.green.button{ - margin: 10px 0; - } - text-align: center; - @media only screen and (max-width: 600px) { - flex-direction: column; - width: 100%; - margin 0; - } -` -const ActivityLogStyling = styled.div` - width: 45%; - border: 1px solid #E6E6E6; - margin-right: 30px; - background-color: white; - padding: 90px 10px; - max-width: 400px; - border-radius: 5px; - @media only screen and (max-width: 600px) { - margin: 5px 0; - width: 95%; - padding: 60px 10px - } - -` -const ReflectionLogStyling = styled.div` - width: 45%; - border: 1px solid #E6E6E6; - border-radius: 5px; - background-color: white - padding: 90px 10px; - max-width: 400px; - @media only screen and (max-width: 600px) { - margin: 5px 0; - width: 95%; - padding: 60px 10px; - } -` diff --git a/app/src/components/Journal/JournalComponent.jsx b/app/src/components/Journal/JournalComponent.jsx deleted file mode 100644 index e0153f8..0000000 --- a/app/src/components/Journal/JournalComponent.jsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react'; - -const JournalComponent = props => { - return ( - <> -

Journal

- - ) -} - - -export default JournalComponent; \ No newline at end of file diff --git a/app/src/components/Journal/NewJournalComponent.jsx b/app/src/components/Journal/NewJournalComponent.jsx deleted file mode 100644 index cbbc35d..0000000 --- a/app/src/components/Journal/NewJournalComponent.jsx +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react'; - -const NewJournalPost = props => { - return ( -
-

New Post

-
- ) -} - -export default NewJournalPost; \ No newline at end of file diff --git a/app/src/components/Journal/NewReflectionComponent.jsx b/app/src/components/Journal/NewReflectionComponent.jsx deleted file mode 100644 index ff4f37e..0000000 --- a/app/src/components/Journal/NewReflectionComponent.jsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react'; - - -const NewReflectionPost = props => { - return ( -
-

New Post

-
- ) -} - -export default NewReflectionPost; \ No newline at end of file diff --git a/app/src/components/Journal/ReflectionComponent.jsx b/app/src/components/Journal/ReflectionComponent.jsx deleted file mode 100644 index 5585df1..0000000 --- a/app/src/components/Journal/ReflectionComponent.jsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react'; - -const ReflectionComponent = props => { - return ( - <> -

Reflections

- - ) -} - - -export default ReflectionComponent; \ No newline at end of file diff --git a/app/src/components/Login/Login.jsx b/app/src/components/Login/Login.jsx new file mode 100644 index 0000000..a151d41 --- /dev/null +++ b/app/src/components/Login/Login.jsx @@ -0,0 +1,144 @@ +import React from "react"; +import styles from "styled-components"; +import Logo from "../../styles/nav-logo.png"; +import Loader from "react-loader-spinner"; + +const Login = props => { + return ( + + + + + + + {props.isLoading ?
Loading
: "Login"} +
+
+ Forgot your password? +
+ + Create Account + +
+ ); +}; + +export default Login; + +const LoginPageStyles = styles.div` + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + height: 100vh; + background: #FAFAFA; + `; +const LoginPageText = styles.h2` + font-size: 12px; + font-weight: 700; + color: #9A9A9A; + margin: 10px 0; + padding: 0 10px; + text-align: center; + line-height: 1.5; + + &:hover { + cursor: pointer; + } +`; +const LoginMenuStyles = styles.form` + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border: 1px solid #E6E6E6; + border-radius: 2px; + width: 340px; + background: #FFFFFF; + padding: 20px 0; +`; + +const LoginInputStyles = styles.input` + border: 1px solid #EFEFEF; + border-radius: 3px; + margin-bottom: 7px; + padding: 10px 0 10px 7px; + width: 270px; + background: #FAFAFA; + + &:focus { + outline: none; + } +`; + +const LoginButton = styles.button` + width: 272px; + border: 1px solid #4F86EC; + border-radius: 4px; + padding: 10px; + margin: 10px 0; + color: white; + font-weight: 700; + font-size: 14px; + background: #4F86EC; + &:hover { + cursor: pointer; + } +`; + +const SwitchMenuStyles = styles.form` + display: flex; + align-items: center; + justify-content: center; + border: 1px solid #E6E6E6; + border-radius: 2px; + width: 340px; + background: #FFFFFF; + padding: 20px 0; + margin-top: 15px; +`; + +const SeperateContent = styles.div` + display: flex; + align-items: center; + justify-content: center; + width: 250px; + margin: 5px auto; + hr { + height: 1px; + width: 100%; + color: #999999; + } + p { + margin: 0 10px; + font-size: 14px; + color: #999999; + } +`; + +const LogoImage = styles.img` + width: 200px; + margin-bottom: 10px; +`; + +const CreateAccount = styles.p` + font-size: 1.2rem; + font-weight: 600; + padding: 0; + cursor: pointer; +`; diff --git a/app/src/components/Login/LoginComponent.jsx b/app/src/components/Login/LoginComponent.jsx deleted file mode 100644 index 1e3411f..0000000 --- a/app/src/components/Login/LoginComponent.jsx +++ /dev/null @@ -1,169 +0,0 @@ -import React from "react"; -import styled from "styled-components"; -import { Link } from "react-router-dom"; - -import { Button, Form, FormGroup, Input } from "reactstrap"; -import "bootstrap/dist/css/bootstrap.min.css"; -import Logo from "../../assets/Logo.png"; - -const LoginPage = props => { - return ( - - - - {/* Form is styled with css instead of styled components */} - - Background -
props.logIn(e)} className="custom-form"> - - - - - - - -
- -
- - - Log in with Facebook - -
-
-
- -

Don't have an account?

{" "} - - {" "} - - -
-
-
-
- ); -}; - -export default LoginPage; - -//Styles - -const Container = styled.div` - width: 100vw; - height: 100vh; - margin: 0 auto; - background: linear-gradient( - 181deg, - rgba(66, 205, 255, 1) 0%, - rgba(66, 205, 255, 1) 0%, - rgba(66, 205, 255, 1) 7%, - rgba(0, 128, 128, 1) 100% - ); -`; - -const LoginContainerStyling = styled.div` - display: flex; - justify-content: center; - align-items: center; -`; - -const RightContainer = styled.div` - height: 600px; - width: 350px; - display: flex; - flex-direction: column; - text-align: center; - p { - font-size: 14px; - } -`; - -const LoginForm = styled.div` - border: 1px solid #e6e6e6; - height: 356px; - padding: 30px 30px; - padding-bottom: 10px; - margin-bottom: 10px; - margin-top: 25px; - border-radius: 3px; - background-color: white; - img { - width: 40%; - margin-bottom: 20px; - } - form { - font-size: 3px; - } -`; -const SignUpForm = styled.div` - border: 1px solid #e6e6e6; - height: 70px; - margin-bottom: 25px; - border-radius: 3px; - background-color: white; - display: flex; - justify-content: center; - align-items: center; - p { - margin: 0; - } - span { - margin-left: 5px; - } -`; - -const SeperateContent = styled.div` - display: flex; - align-items: center; - justify-content: center; - width: 250px; - margin: 5px auto; - hr { - height: 1px; - width: 100%; - color: #999999; - } - p { - margin: 0 10px; - color: #999999; - } -`; -const Signup = styled.div` - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - color: #3c5181; - margin-top: 20px; - a { - color: #3c5181; - font-size: 14px; - margin-left: 5px; - } - p { - color: #34547d; - font-size: 12px; - margin-top: 15px; - } -`; diff --git a/app/src/components/Login/Register.jsx b/app/src/components/Login/Register.jsx new file mode 100644 index 0000000..8b60b07 --- /dev/null +++ b/app/src/components/Login/Register.jsx @@ -0,0 +1,162 @@ +import React from "react"; +import styles from "styled-components"; +import Logo from "../../styles/nav-logo.png"; +import TextField from "@material-ui/core/TextField"; +import Loader from "react-loader-spinner"; + +const Register = props => { + return ( + + + + + + + + + + {props.isLoading ? ( + + ) : ( + "Create Account" + )} + + + By signing up, you agree to our Terms, Data Policy. + + + + + + Go Back + + + + ); +}; + +export default Register; + +const LoginPageStyles = styles.div` + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + height: 100vh; + background: #FAFAFA; + `; + +const LoginMenuStyles = styles.form` + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border: 1px solid #E6E6E6; + border-radius: 2px; + width: 340px; + background: #FFFFFF; + padding: 10px 0; + padding: 0 40px; + +`; + +const LoginButton = styles.button` + width: 272px; + height: 40px; + border: 1px solid #44e6d79; + border-radius: 4px; + padding: 0 10px; + margin-top: 15px; + color: white; + font-weight: 700; + font-size: 14px; + background: #4e6d79; + + &:hover { + cursor: pointer; + } +`; + +const LoginPageText = styles.h2` + font-size: 12px; + font-weight: 700; + color: #9A9A9A; + margin: 15px 0; + padding: 0 10px; + text-align: center; + line-height: 1.5; +`; + +const SwitchMenuStyles = styles.form` + display: flex; + align-items: center; + justify-content: center; + border: 1px solid #E6E6E6; + border-radius: 2px; + width: 340px; + background: #FFFFFF; + padding: 20px 0; + margin-top: 15px; +`; + +const LogoImage = styles.img` + width: 200px; +`; + +const GoBackContainer = styles.div` + cursor: pointer; + width: 60%; + justify-content: center; + align-items: center; + display: flex; +`; + +const CreateAccount = styles.p` + font-size: 1.2rem; + font-weight: 600; + padding: 0; + margin-left: 5px; +`; +const GoBackIcon = styles.i` + font-size: 18px + margin-right: 3px; + padding-bottom: .5px; +`; diff --git a/app/src/components/Login/SignupComponent.jsx b/app/src/components/Login/SignupComponent.jsx deleted file mode 100644 index 4d5cda2..0000000 --- a/app/src/components/Login/SignupComponent.jsx +++ /dev/null @@ -1,104 +0,0 @@ -import React from "react"; -import styled from "styled-components"; -import "bootstrap/dist/css/bootstrap.min.css"; -import Logo from "../../assets/Logo.png"; -import TextField from "@material-ui/core/TextField"; -import Button from "@material-ui/core/Button"; - -const SignupComponent = props => { - return ( - - - - {/* Form is styled with css instead of styled components */} - - -
- - - - - - - -
-
-
-
- ); -}; - -export default SignupComponent; - -//Styles - -const Container = styled.div` - width: 100vw; - height: 100vh; - margin: 0 auto; - background: linear-gradient( - 181deg, - rgba(66, 205, 255, 1) 0%, - rgba(66, 205, 255, 1) 0%, - rgba(66, 205, 255, 1) 7%, - rgba(0, 128, 128, 1) 100% - ); -`; - -const LoginContainerStyling = styled.div` - display: flex; - justify-content: center; - align-items: center; -`; - -const RightContainer = styled.div` - height: 600px; - width: 350px; - display: flex; - flex-direction: column; - text-align: center; - p { - font-size: 14px; - } -`; - -const LoginForm = styled.div` - border: 1px solid #e6e6e6; - - padding: 30px 30px; - padding-bottom: 20px; - margin-bottom: 10px; - margin-top: 25px; - border-radius: 3px; - background-color: white; - img { - width: 40%; - margin-bottom: 20px; - } - form { - font-size: 3px; - margin-bottom: 25px; - } -`; -const ButtonContainer = styled.div` - margin-top: 10px; -`; diff --git a/app/src/components/Main/ActionButtons.jsx b/app/src/components/Main/ActionButtons.jsx new file mode 100644 index 0000000..9239842 --- /dev/null +++ b/app/src/components/Main/ActionButtons.jsx @@ -0,0 +1,70 @@ +import React from "react"; +import Fab from "@material-ui/core/Fab"; +import { + AddCircle, + RemoveCircle, + NaturePeople, + DirectionsRun +} from "@material-ui/icons/"; + +import "../../styles/ActionButtons.scss"; + +class ActionButtons extends React.Component { + state = { + isButtonsOpen: false + }; + + openButtons = e => { + e.preventDefault(); + this.setState({ isButtonsOpen: !this.state.isButtonsOpen }); + }; + + routeToForm = (e, route) => { + e.preventDefault(); + this.props.history.push(`${route}`); + }; + + render() { + return ( +
+ {this.state.isButtonsOpen ? ( + <> + this.openButtons(e)} + aria-label="Add" + className="subtract-button" + > + + + this.routeToForm(e, "/reflection")} + aria-label="Add" + className="reflection-icon" + > + + +

Reflection

+ this.routeToForm(e, "/activity")} + aria-label="Add" + className="activity-icon" + > + + +

Activity

+ + ) : ( + this.openButtons(e)} + aria-label="Add" + className="add-button add-activity" + > + + + )} +
+ ); + } +} + +export default ActionButtons; diff --git a/app/src/components/Main/ActivityCard.jsx b/app/src/components/Main/ActivityCard.jsx new file mode 100644 index 0000000..207673c --- /dev/null +++ b/app/src/components/Main/ActivityCard.jsx @@ -0,0 +1,31 @@ +import React from "react"; +import { Button } from "@material-ui/core"; + +const ActivityCard = props => { + return ( +
+
+

{props.name}

+

{props.timestamp}

+
+
+

Engagement

+

Energy

+

Enjoyment

+
+
+

{props.energyLevel}

+

{props.enjoymentRating}

+

{props.engagement}

+
+ + +
+ ); +}; + +export default ActivityCard; diff --git a/app/src/components/Main/ActivityForm.jsx b/app/src/components/Main/ActivityForm.jsx new file mode 100644 index 0000000..de0839a --- /dev/null +++ b/app/src/components/Main/ActivityForm.jsx @@ -0,0 +1,52 @@ +import React from "react"; +import "../../styles/ActivityForm.scss"; + +const ActivityForm = props => { + return ( +
+
+ + + + + +
+
+ ); +}; + +export default ActivityForm; diff --git a/app/src/reducers/activityReducer.jsx b/app/src/components/Main/Reflection.jsx similarity index 100% rename from app/src/reducers/activityReducer.jsx rename to app/src/components/Main/Reflection.jsx diff --git a/app/src/components/Main/ReflectionFormOne.jsx b/app/src/components/Main/ReflectionFormOne.jsx new file mode 100644 index 0000000..916e331 --- /dev/null +++ b/app/src/components/Main/ReflectionFormOne.jsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { TextField } from '@material-ui/core'; + +const ReflectionFormOne = props => { + return ( +
+
+

Question 1

+

Question 2

+

Question 3

+

Summary

+
+ +
+

+ Ipsum enim consequat veniam magna cupidatat duis mollit esse do eu id + cillum consectetur cillum. +

+ + +
+ +
+ +
+ ); +}; + +export default ReflectionFormOne; diff --git a/app/src/components/Main/ReflectionFormSubmit.jsx b/app/src/components/Main/ReflectionFormSubmit.jsx new file mode 100644 index 0000000..c87ab3b --- /dev/null +++ b/app/src/components/Main/ReflectionFormSubmit.jsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { TextField } from '@material-ui/core'; + +const ReflectionFormSubmit = props => { + return ( +
+
+

Question 1

+

Question 2

+

Question 3

+

Summary

+
+ +
+

+ Ipsum enim consequat veniam magna cupidatat duis mollit esse do eu id + cillum consectetur cillum. +

+ +
+ + +
+ +
+ ); +}; + +export default ReflectionFormSubmit; diff --git a/app/src/components/Main/ReflectionFormThree.jsx b/app/src/components/Main/ReflectionFormThree.jsx new file mode 100644 index 0000000..c0ea996 --- /dev/null +++ b/app/src/components/Main/ReflectionFormThree.jsx @@ -0,0 +1,43 @@ +import React from 'react'; +import { TextField } from '@material-ui/core'; + +const ReflectionFormThree = props => { + return ( +
+
+

Question 1

+

Question 2

+

Question 3

+

Summary

+
+ +
+

+ Ipsum enim consequat veniam magna cupidatat duis mollit esse do eu id + cillum consectetur cillum. +

+ + +
+ + +
+ +
+ ); +}; + +export default ReflectionFormThree; diff --git a/app/src/components/Main/ReflectionFormTwo.jsx b/app/src/components/Main/ReflectionFormTwo.jsx new file mode 100644 index 0000000..f8ef2df --- /dev/null +++ b/app/src/components/Main/ReflectionFormTwo.jsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { TextField } from '@material-ui/core'; + +const ReflectionFormTwo = props => { + return ( +
+
+

Question 1

+

Question 2

+

Question 3

+

Summary

+
+ +
+

+ Ipsum enim consequat veniam magna cupidatat duis mollit esse do eu id + cillum consectetur cillum. +

+ +
+ + +
+ +
+ ); +}; + +export default ReflectionFormTwo; diff --git a/app/src/components/Main/SearchBar.jsx b/app/src/components/Main/SearchBar.jsx new file mode 100644 index 0000000..4bf87cb --- /dev/null +++ b/app/src/components/Main/SearchBar.jsx @@ -0,0 +1,13 @@ +import React from 'react'; + +const SearchBar = () => { + return ( + + ); +}; + +export default SearchBar; diff --git a/app/src/components/Main/SidebarLeft.jsx b/app/src/components/Main/SidebarLeft.jsx new file mode 100644 index 0000000..0bb1049 --- /dev/null +++ b/app/src/components/Main/SidebarLeft.jsx @@ -0,0 +1,22 @@ +import React from 'react'; + +const SidebarLeft = props => { + return ( +
+
+
+
recent reflection
+
+
+
overview
+
+
+
+
calendar
+
+
+
+ ); +}; + +export default SidebarLeft; diff --git a/app/src/components/Navigation/Navigation.jsx b/app/src/components/Navigation/Navigation.jsx new file mode 100644 index 0000000..21ed6c6 --- /dev/null +++ b/app/src/components/Navigation/Navigation.jsx @@ -0,0 +1,18 @@ +import React from "react"; +import logo from "../../styles/nav-logo.png"; +import { NavLink } from "react-router-dom"; + +const Navigation = props => { + return ( + + ); +}; + +export default Navigation; diff --git a/app/src/index.css b/app/src/index.css deleted file mode 100755 index 00dae9d..0000000 --- a/app/src/index.css +++ /dev/null @@ -1,16 +0,0 @@ - -body{ - font-family: 'Playfair Display', serif; -} - -.Journal{ - display: flex; -} - -.ui.button{ - margin: 10px 0; -} -/* Get rid of border-radius */ -.ui.inverted.menu{ - border-radius: 0; -} \ No newline at end of file diff --git a/app/src/index.js b/app/src/index.js index 088d7ed..34bd1ed 100755 --- a/app/src/index.js +++ b/app/src/index.js @@ -1,32 +1,19 @@ -//React imports import React from 'react'; import ReactDOM from 'react-dom'; -import { BrowserRouter as Router, withRouter } from "react-router-dom"; +import App from './App'; +import { BrowserRouter as Router, withRouter } from 'react-router-dom'; +import { Provider } from 'react-redux'; -//Redux Imports -import logger from 'redux-logger'; -import thunk from 'redux-thunk'; -import { createStore, applyMiddleware } from 'redux'; -import { Provider } from 'react-redux' +import store from './store'; -//Reducer -import rootReducer from './reducers'; - -//Custom file imports -import './index.css'; -import App from './components/App.jsx'; - -//Semantic UI -import 'semantic-ui-css/semantic.min.css' - -const store = createStore(rootReducer, applyMiddleware(thunk, logger)); const AppWithRouter = withRouter(App); - -ReactDOM.render( +const app = ( + - - - - , - document.getElementById('root')); + + + +); + +ReactDOM.render(app, document.getElementById('root')); diff --git a/app/src/reducers/index.jsx b/app/src/reducers/index.jsx deleted file mode 100644 index b5d8260..0000000 --- a/app/src/reducers/index.jsx +++ /dev/null @@ -1,11 +0,0 @@ -import { combineReducers } from 'redux' -import userReducer from './userReducer'; -import activityReducer from './activityReducer'; -import reflectionReducer from './reflectionReducer'; - -export default combineReducers({ - userReducer, - activityReducer, - reflectionReducer -}) - diff --git a/app/src/reducers/userReducer.jsx b/app/src/reducers/userReducer.jsx deleted file mode 100644 index 88efbd9..0000000 --- a/app/src/reducers/userReducer.jsx +++ /dev/null @@ -1,25 +0,0 @@ -import { FETCH_START, FETCH_SUCCESS, FETCH_FAILURE } from '../actions/User'; - -const initialState = { - user: {}, - error: '', - isLoading: false -}; - -export default (state = initialState, action) => { - switch (action.type) { - case FETCH_START: - return { ...state, isLoading: true, error: '' }; - case FETCH_SUCCESS: - return { - ...state, - user: action.payload, - isLoading: false, - error: '' - }; - case FETCH_FAILURE: - return { ...state, isLoading: false, error: action.payload }; - default: - return state; - } -}; diff --git a/app/src/store/actions/activity.js b/app/src/store/actions/activity.js new file mode 100644 index 0000000..89502d5 --- /dev/null +++ b/app/src/store/actions/activity.js @@ -0,0 +1,99 @@ +import axios from 'axios'; + +export const ADD_ACTIVITY = 'ADD_ACTIVITY'; +export const ADD_ACTIVITY_COMPLETE = 'ADD_ACTIVITY_COMPLETE'; +export const ADD_ACTIVITY_FAIL = 'ADD_ACTIVITY_FAIL'; +export const EDIT_ACTIVITY = 'EDIT_ACTIVITY'; +export const UPDATE_ACTIVITY = 'UPDATE_ACTIVITY'; +export const UPDATE_ACTIVITY_COMPLETE = 'UPDATE_ACTIVITY_COMPLETE'; +export const UPDATE_ACTIVITY_FAIL = 'UPDATE_ACTIVITY_FAIL'; +export const DELETE_ACTIVITY = 'DELETE_ACTIVITY'; +export const DELETE_ACTIVITY_COMPLETE = 'DELETE_ACTIVITY_COMPLETE'; +export const DELETE_ACTIVITY_FAIL = 'DELETE_ACTIVITY_FAIL'; +export const GET_ACTIVITIES = 'GET_ACTIVITIES'; +export const GET_ACTIVITIES_COMPLETE = 'GET_ACTIVITIES_COMPLETE'; +export const GET_ACTIVITIES_FAIL = 'GET_ACTIVITIES_FAIL'; +const baseURL = 'https://polar-plateau-24996.herokuapp.com'; + +export const addActivity = (token, activity) => dispatch => { + console.log(token, activity); + dispatch({ + type: ADD_ACTIVITY + }); + axios + .post(`${baseURL}/activities`, activity, { + headers: { Authorization: token } + }) + .then(res => + dispatch({ + type: ADD_ACTIVITY_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: ADD_ACTIVITY_FAIL, + error: err + }) + ); +}; + +export const editActivity = activity => { + return { + type: EDIT_ACTIVITY, + payload: activity + }; +}; + + +export const updateActivity = (token, activity) => dispatch => { + dispatch({ + type: UPDATE_ACTIVITY + }); + axios + .put(`${baseURL}/activities/${activity.id}`, activity, { + headers: { Authorization: token } + }) + .then(res => + dispatch({ + type: UPDATE_ACTIVITY_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: UPDATE_ACTIVITY_FAIL, + error: err + }) + ); +}; + + +export const deleteActivity = (token, id) => dispatch => { + axios + .delete(`${baseURL}/activities/${id}`, { + headers: { Authorization: token } + }) + .then(res => + dispatch({ + type: DELETE_ACTIVITY_COMPLETE, + payload: res.data + }) + ) + .catch(err => dispatch({type: DELETE_ACTIVITY_FAIL, error: err})) +}; + +export const getActivities = token => dispatch => { + dispatch({ + type: GET_ACTIVITIES + }); + axios + .get(`${baseURL}/activities`, { headers: { Authorization: token } }) + .then(res => + dispatch({ + type: GET_ACTIVITIES_COMPLETE, + payload: res.data + }) + ) + .catch(err => console.log(err)); +}; \ No newline at end of file diff --git a/app/src/store/actions/reflection.js b/app/src/store/actions/reflection.js new file mode 100644 index 0000000..bf79918 --- /dev/null +++ b/app/src/store/actions/reflection.js @@ -0,0 +1,89 @@ +import axios from 'axios'; + +export const ADD_REFLECTION = 'ADD_REFLECTION'; +export const ADD_REFLECTION_COMPLETE = 'ADD_REFLECTION_COMPLETE'; +export const ADD_REFLECTION_FAIL = 'ADD_REFLECTION_FAIL'; +export const OPEN_REFLECTION = 'OPEN_REFLECTION'; +export const UPDATE_REFLECTION = 'UPDATE_REFLECTION'; +export const UPDATE_REFLECTION_COMPLETE = 'UPDATE_REFLECTION_COMPLETE'; +export const UPDATE_REFLECTION_FAIL = 'UPDATE_REFLECTION_FAIL'; +export const DELETE_REFLECTION = 'DELETE_REFLECTION'; +export const DELETE_REFLECTION_COMPLETE = 'DELETE_REFLECTION_COMPLETE'; +export const DELETE_REFLECTION_FAIL = 'DELETE_REFLECTION_FAIL'; +export const GET_REFLECTIONS = 'GET_REFLECTIONS'; +export const GET_REFLECTIONS_COMPLETE = 'GET_REFLECTIONS_COMPLETE'; +export const GET_REFLECTIONS_FAIL = 'GET_REFLECTIONS_FAIL'; + +const baseURL = 'https://polar-plateau-24996.herokuapp.com'; + +export const addReflection = reflection => dispatch => { + dispatch({ + type: ADD_REFLECTION + }); + axios + .post(`http://localhost:5000/api/user/reflection`, reflection) + .then(res => + dispatch({ + type: ADD_REFLECTION_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: ADD_REFLECTION_FAIL, + error: err + }) + ); +}; +export const updateReflection = reflection => dispatch => { + axios + .put( + `http://localhost:5000/api/user/reflection/${reflection.id}`, + reflection + ) + .then(res => + dispatch({ + type: UPDATE_REFLECTION_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: UPDATE_REFLECTION_FAIL, + error: err + }) + ); +}; + +export const openReflection = reflection => { + return { + type: OPEN_REFLECTION, + payload: reflection + }; +}; +export const getReflections = token => dispatch => { + dispatch({ + type: GET_REFLECTIONS + }); + + axios + .get(`${baseURL}/reflections`, { headers: { Authorization: token } }) + .then(res => + dispatch({ + type: GET_REFLECTIONS_COMPLETE, + payload: res.data + }) + ) + .catch(err => console.log(err)); +}; + + +export const deleteReflection = id => dispatch => { + axios.delete(`http://localhost:5000/api/user/reflection/${id}`).then(res => + dispatch({ + type: DELETE_REFLECTION, + payload: res.data + }) + ); +}; + diff --git a/app/src/store/actions/user.js b/app/src/store/actions/user.js new file mode 100644 index 0000000..6b37979 --- /dev/null +++ b/app/src/store/actions/user.js @@ -0,0 +1,56 @@ +import axios from 'axios'; + +export const LOGIN_USER = 'LOGIN_USER'; +export const LOGIN_USER_COMPLETE = 'LOGIN_USER_COMPLETE'; +export const LOGIN_USER_FAIL = 'LOGIN_USER_FAIL'; +export const REGISTER_USER = 'REGISTER_USER'; +export const REGISTER_USER_COMPLETE = 'REGISTER_USER_COMPLETE'; +export const REGISTER_USER_FAIL = 'REGISTER_USER_FAIL'; +export const LOG_OUT = 'LOG_OUT'; + +const baseURL = 'https://polar-plateau-24996.herokuapp.com'; +export const loginUser = user => dispatch => { + dispatch({ + type: LOGIN_USER + }); + axios + .post(`${baseURL}/api/login`, user) + .then(res => + dispatch({ + type: LOGIN_USER_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: LOGIN_USER_FAIL, + error: err + }) + ); +}; + +export const logout = () => { + return { + type: LOG_OUT + }; +}; + +export const registerUser = user => dispatch => { + dispatch({ + type: REGISTER_USER + }); + axios + .post(`${baseURL}/api/register`, user) + .then(res => + dispatch({ + type: REGISTER_USER_COMPLETE, + payload: res.data + }) + ) + .catch(err => + dispatch({ + type: REGISTER_USER_FAIL, + payload: err + }) + ); +}; \ No newline at end of file diff --git a/app/src/store/index.js b/app/src/store/index.js new file mode 100644 index 0000000..3953119 --- /dev/null +++ b/app/src/store/index.js @@ -0,0 +1,16 @@ +import { createStore, applyMiddleware, compose } from 'redux'; +import logger from 'redux-logger'; +import thunk from 'redux-thunk'; +// import logger from 'redux-logger'; +import rootReducer from './reducers'; + +const middlewares = [thunk, logger]; + +const store = createStore( + rootReducer, + compose( + applyMiddleware(...middlewares) + ) +); + +export default store; diff --git a/app/src/store/reducers/activity.js b/app/src/store/reducers/activity.js new file mode 100644 index 0000000..2af08ee --- /dev/null +++ b/app/src/store/reducers/activity.js @@ -0,0 +1,87 @@ +// import CONSTANT_VARIABLE from actions +import { + ADD_ACTIVITY, + ADD_ACTIVITY_COMPLETE, + ADD_ACTIVITY_FAIL, + EDIT_ACTIVITY, + UPDATE_ACTIVITY, + UPDATE_ACTIVITY_COMPLETE, + UPDATE_ACTIVITY_FAIL, + DELETE_ACTIVITY, + DELETE_ACTIVITY_COMPLETE, + DELETE_ACTIVITY_FAIL, + GET_ACTIVITIES, GET_ACTIVITIES_COMPLETE, GET_ACTIVITIES_FAIL +} from '../actions/activity'; + +const initialState = { + activities: [], + activeEdit: {}, + isLoading: false, + error: '', + isEditing: false +}; + +export default function(state = initialState, action) { + switch (action.type) { + + case GET_ACTIVITIES: + return { ...state, isLoading: true, error: '' }; + case GET_ACTIVITIES_COMPLETE: + console.log(action.payload); + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + case GET_ACTIVITIES_FAIL: + return { ...state, isLoading: false, error: action.payload }; + case ADD_ACTIVITY: + return { ...state, isLoading: true, error: '' }; + case ADD_ACTIVITY_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + case ADD_ACTIVITY_FAIL: + return { ...state, isLoading: false, error: action.payload }; + case EDIT_ACTIVITY: + return { + ...state, + isEditing: true, + error: '', + activeEdit: action.payload + }; + case UPDATE_ACTIVITY: + return { ...state, isLoading: true, error: '' }; + case UPDATE_ACTIVITY_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '', + activeEdit: {}, + isEditing: false + }; + case UPDATE_ACTIVITY_FAIL: + return { ...state, isLoading: false, error: action.payload }; + case DELETE_ACTIVITY: + return { ...state, isLoading: true, error: '' }; + + case DELETE_ACTIVITY_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + + case DELETE_ACTIVITY_FAIL: + return { ...state, isLoading: false, error: action.payload }; + + default: + return state; + } +} diff --git a/app/src/store/reducers/index.js b/app/src/store/reducers/index.js new file mode 100644 index 0000000..9ff83a2 --- /dev/null +++ b/app/src/store/reducers/index.js @@ -0,0 +1,11 @@ +import { combineReducers } from 'redux'; + +import activity from './activity'; +import reflection from './reflection'; +import user from './user'; + +export default combineReducers({ + activity, + reflection, + user +}); diff --git a/app/src/store/reducers/reflection.js b/app/src/store/reducers/reflection.js new file mode 100644 index 0000000..458a1a6 --- /dev/null +++ b/app/src/store/reducers/reflection.js @@ -0,0 +1,68 @@ +// import CONSTANT_VARIABLE from actions +import { + ADD_REFLECTION, + ADD_REFLECTION_COMPLETE, + ADD_REFLECTION_FAIL, + UPDATE_REFLECTION, + UPDATE_REFLECTION_COMPLETE, + UPDATE_REFLECTION_FAIL, + DELETE_REFLECTION, + DELETE_REFLECTION_COMPLETE, + DELETE_REFLECTION_FAIL, + GET_REFLECTIONS,GET_REFLECTIONS_COMPLETE,GET_REFLECTIONS_FAIL +} from '../actions/reflection'; + +const initialState = { + reflections: [], + isLoading: false, + error: '' +}; + +export default function(state = initialState, action) { + switch (action.type) { + case ADD_REFLECTION: + return { ...state, isLoading: true, error: '' }; + + case ADD_REFLECTION_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + + case ADD_REFLECTION_FAIL: + return { ...state, isLoading: false, error: action.payload }; + + case UPDATE_REFLECTION: + return { ...state, isLoading: true, error: '' }; + + case UPDATE_REFLECTION_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + + case UPDATE_REFLECTION_FAIL: + return { ...state, isLoading: false, error: action.payload }; + + case DELETE_REFLECTION: + return { ...state, isLoading: true, error: '' }; + + case DELETE_REFLECTION_COMPLETE: + return { + ...state, + activities: action.payload, + isLoading: false, + error: '' + }; + + case DELETE_REFLECTION_FAIL: + return { ...state, isLoading: false, error: action.payload }; + + default: + return state; + } +} diff --git a/app/src/store/reducers/user.js b/app/src/store/reducers/user.js new file mode 100644 index 0000000..235ce43 --- /dev/null +++ b/app/src/store/reducers/user.js @@ -0,0 +1,51 @@ +import { + LOGIN_USER, + LOGIN_USER_COMPLETE, + LOGIN_USER_FAIL, + REGISTER_USER, + REGISTER_USER_COMPLETE, + REGISTER_USER_FAIL, + LOG_OUT +} from '../actions/user'; + +const initialState = { + user: {}, + isLoading: false, + error: '', + loggedIn: false +}; + +export default (state = initialState, action) => { + switch (action.type) { + case LOGIN_USER: + return { ...state, isLoading: true, error: '' }; + case LOGIN_USER_COMPLETE: + localStorage.setItem('token', action.payload.token); + localStorage.setItem('id', action.payload.userId); + return { + ...state, + user: action.payload, + isLoading: false, + loggedIn: true, + error: '' + }; + case LOGIN_USER_FAIL: + return { ...state, isLoading: false, error: action.payload }; + case LOG_OUT: + return { ...state, loggedIn: false, token: '' }; + case REGISTER_USER: + return { ...state, isLoading: true, error: '' }; + case REGISTER_USER_COMPLETE: + return { + ...state, + user: action.payload, + isLoading: false, + error: '' + }; + case REGISTER_USER_FAIL: + return { ...state, isLoading: false, error: action.payload }; + + default: + return state; + } +}; diff --git a/app/src/styles/ActionButtons.scss b/app/src/styles/ActionButtons.scss new file mode 100644 index 0000000..b251fa3 --- /dev/null +++ b/app/src/styles/ActionButtons.scss @@ -0,0 +1,66 @@ +.buttons { + position: fixed; + bottom: 3%; + left: 3%; + .add-button { + position: fixed; + bottom: 5px; + left: 5px; + background: #4f86ec; + color: #aaefc8; + margin: 10px; + &:hover { + background: #aaefc8; + color: #4f86ec; + } + } + .subtract-button { + position: fixed; + bottom: 5px; + left: 5px; + background: #aaefc8; + color: white; + margin: 10px; + &:hover { + background: #4f86ec; + color: #aaefc8; + } + } + p { + font-size: 10px; + } + .reflection-icon { + position: fixed; + bottom: 25px; + left: 85px; + background: #aaefc8; + color: white; + margin: 10px; + &:hover { + background: #4f86ec; + color: #aaefc8; + } + } + .reflection-text { + position: fixed; + bottom: 8px; + left: 99px; + } + .activity-icon { + position: fixed; + bottom: 85px; + left: 25px; + background: #aaefc8; + color: white; + margin: 10px; + &:hover { + background: #4f86ec; + color: #aaefc8; + } + } + .activity-text { + position: fixed; + bottom: 69px; + left: 44px; + } +} diff --git a/app/src/styles/ActivityForm.scss b/app/src/styles/ActivityForm.scss new file mode 100644 index 0000000..ff27567 --- /dev/null +++ b/app/src/styles/ActivityForm.scss @@ -0,0 +1,37 @@ +.form-page { + display: flex; + justify-content: center; + align-items: center; + margin-top: 50px; +} + +.activity-form { + display: flex; + flex-direction: column; + width: 400px; + + input { + border: none; + border-bottom: 1px solid grey; + background: #fafafa; + margin: 10px 0; + padding: 5px; + font-size: 1.6rem; + font-weight: 500; + + &:focus { + outline: none; + } + } + + button { + margin-top: 20px; + padding: 10px 0; + background: transparent; + border-radius: 3px; + + &:focus { + outline: none; + } + } +} diff --git a/app/src/styles/App.scss b/app/src/styles/App.scss new file mode 100755 index 0000000..b12f00d --- /dev/null +++ b/app/src/styles/App.scss @@ -0,0 +1,52 @@ +@import './libs/reset'; +@import './libs/global'; +@import './libs/variables'; +@import './libs/mixins'; +@import './Navigation'; + +.home-display { + display: flex; + justify-content: space-evenly; + max-width: 1000px; + margin: auto; +} + +.sidebar-fixed { + position: relative; + + .sidebar { + position: fixed; + left: 5%; + width: 300px; + margin-top: 100px; + + .box { + height: 150px; + background: white; + border: 1px solid #7c7c7c; + border-radius: 3px; + box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05); + margin-bottom: 20px; + + h5 { + font-weight: 700; + font-size: 14px; + padding: 15px; + } + + p { + padding: 15px; + font-size: 14px; + } + } + + hr { + width: 180px; + } + + .calendar { + height: 200px; + margin-top: 20px; + } + } +} diff --git a/app/src/styles/BeFunky-photo (1).jpg b/app/src/styles/BeFunky-photo (1).jpg new file mode 100644 index 0000000..7088a11 Binary files /dev/null and b/app/src/styles/BeFunky-photo (1).jpg differ diff --git a/app/src/styles/Feed.scss b/app/src/styles/Feed.scss new file mode 100644 index 0000000..182b108 --- /dev/null +++ b/app/src/styles/Feed.scss @@ -0,0 +1,69 @@ +.loader-div { + display: flex; + justify-content: center; + margin-top: 45%; +} + +.feed { + margin: 0 auto; + margin-top: 100px; + + .search-input { + width: 600px; + text-align: center; + border: none; + border-bottom: 1px solid grey; + background: #fafafa; + padding: 5px; + font-size: 1.6rem; + font-weight: 500; + + &:focus { + outline: none; + } + } + + .activity-card { + width: 600px; + margin: 20px 0; + border: 1px solid #2b3039; + border-radius: 3px; + box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.2); + background: white; + + .title-date { + display: flex; + justify-content: space-between; + align-items: center; + margin: 25px 35px 15px 35px; + padding-bottom: 10px; + border-bottom: 1px solid lightgray; + } + + .ratings { + display: flex; + justify-content: space-around; + } + + .rating-titles { + text-transform: uppercase; + + p { + font-size: 1.2rem; + font-weight: 500; + } + } + + .rating-numbers { + p { + font-size: 2.4rem; + } + } + + .card-buttons { + display: flex; + justify-content: space-between; + margin: 10px 50px; + } + } +} diff --git a/app/src/styles/ReflectionForm.scss b/app/src/styles/ReflectionForm.scss new file mode 100644 index 0000000..c6ed601 --- /dev/null +++ b/app/src/styles/ReflectionForm.scss @@ -0,0 +1,57 @@ +.reflection-form-page { + display: flex; + justify-content: center; + align-items: center; + margin: 50px auto; + // width: 80%; + + .reflection-progress { + .active { + color: black; + } + + h3 { + margin: 50px 0; + color: lightgrey; + } + } +} + +.reflection-form { + display: flex; + flex-direction: column; + margin-left: 100px; + width: 600px; + + textarea { + border: none; + // border: 1px solid grey; + background: #fafafa; + // margin: 10px 0; + // padding: 5px; + font-size: 1.6rem; + max-height: 400px; + line-height: 1.4; + + &:focus { + outline: none; + } + } + + button { + margin-top: 20px; + padding: 10px 0; + background: transparent; + border-radius: 3px; + width: 250px; + + &:focus { + outline: none; + } + } + + .reflection-buttons { + display: flex; + justify-content: space-around; + } +} diff --git a/app/src/styles/_Navigation.scss b/app/src/styles/_Navigation.scss new file mode 100644 index 0000000..d1a59e8 --- /dev/null +++ b/app/src/styles/_Navigation.scss @@ -0,0 +1,37 @@ +nav { + border-bottom: 1px solid lightgrey; + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + padding: 0 20px; + text-transform: uppercase; + background: white; + position: fixed; + top: 0; + z-index: 1; + width: 100%; + + .logo { + height: 70px; + } + + .primary-nav { + display: flex; + + .active { + text-decoration: none; + } + + i { + margin: 0 15px; + font-size: 2.4rem; + color: #4f86ec; + + &:hover { + color: #b8edcb; + cursor: pointer; + } + } + } +} diff --git a/app/src/styles/btn_google_signin_dark_normal_web@2x.png b/app/src/styles/btn_google_signin_dark_normal_web@2x.png new file mode 100644 index 0000000..f27bb24 Binary files /dev/null and b/app/src/styles/btn_google_signin_dark_normal_web@2x.png differ diff --git a/app/src/styles/libs/_global.scss b/app/src/styles/libs/_global.scss new file mode 100644 index 0000000..18c5d6d --- /dev/null +++ b/app/src/styles/libs/_global.scss @@ -0,0 +1,56 @@ +* { + box-sizing: border-box; +} + +html { + font-size: 62.5%; +} + +body { + width: 100%; + margin: 0 auto; + padding: 0; + font-family: -apple-system, 'Verdana', 'Oxygen', 'Ubuntu', 'Cantarell', + 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + color: #2b3039; + background: #fafafa; +} + +code { + font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', + monospace; +} + +h1 { + font-size: 4rem; +} + +h2 { + font-size: 3.2rem; + padding-bottom: 10px; +} +h3 { + font-size: 2.4rem; +} + +h4 { + font-size: 2rem; + padding-bottom: 10px; +} + +h5 { + font-size: 1.6rem; +} + +p { + line-height: 1.5; + font-size: 1.6rem; + padding-bottom: 10px; +} + +img { + max-width: 100%; + height: auto; +} diff --git a/app/src/reducers/reflectionReducer.jsx b/app/src/styles/libs/_mixins.scss similarity index 100% rename from app/src/reducers/reflectionReducer.jsx rename to app/src/styles/libs/_mixins.scss diff --git a/app/src/styles/libs/_reset.scss b/app/src/styles/libs/_reset.scss new file mode 100644 index 0000000..a3f7681 --- /dev/null +++ b/app/src/styles/libs/_reset.scss @@ -0,0 +1,129 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, +body, +div, +span, +applet, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +big, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +b, +u, +i, +center, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +embed, +figure, +figcaption, +footer, +header, +hgroup, +menu, +nav, +output, +ruby, +section, +summary, +time, +mark, +audio, +video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section { + display: block; +} +body { + line-height: 1; +} +ol, +ul { + list-style: none; +} +blockquote, +q { + quotes: none; +} +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/app/src/styles/libs/_variables.scss b/app/src/styles/libs/_variables.scss new file mode 100644 index 0000000..e69de29 diff --git a/app/src/assets/Logo.png b/app/src/styles/nav-logo.png similarity index 100% rename from app/src/assets/Logo.png rename to app/src/styles/nav-logo.png diff --git a/app/src/views/ActivityFormView.jsx b/app/src/views/ActivityFormView.jsx new file mode 100644 index 0000000..a39e5b4 --- /dev/null +++ b/app/src/views/ActivityFormView.jsx @@ -0,0 +1,83 @@ +import React, { Component } from "react"; +import ActivityForm from "../components/Main/ActivityForm"; +import { connect } from "react-redux"; +import { addActivity, updateActivity } from "../store/actions/activity"; + +class ActivityFormView extends Component { + state = { + activity: { + name: "", + fk: "", + enjoymentRating: "", + energyLevel: "", + engagement: "" + } + }; + + componentDidMount = () => { + this.setState({ + ...this.state, + activity: { + ...this.state.activity, + fk: parseInt(localStorage.getItem("id")) + } + }); + }; + + handleChange = e => { + if (isNaN(e.target.value) || e.target.value === "") { + this.setState({ + ...this.state, + activity: { + ...this.state.activity, + [e.target.name]: e.target.value + } + }); + } else + this.setState({ + ...this.state, + activity: { + ...this.state.activity, + [e.target.name]: parseInt(e.target.value) + } + }); + }; + + handleSubmit = e => { + const token = localStorage.getItem("token"); + e.preventDefault(); + this.props.isEditing // isEditing coming from Redux store + ? this.props.updateActivity(this.state.activity) + : this.props.addActivity(token, this.state.activity); + + this.props.history.push("/"); + }; + + render() { + console.log(this.state.activity); + return ( + + ); + } +} + +const mapStateToProps = state => { + return { + isEditing: state.activity.isEditing, + activeEdit: state.activity.activeEdit + }; +}; + +export default connect( + mapStateToProps, + { addActivity, updateActivity } +)(ActivityFormView); diff --git a/app/src/views/Home.jsx b/app/src/views/Home.jsx deleted file mode 100644 index 688698f..0000000 --- a/app/src/views/Home.jsx +++ /dev/null @@ -1,32 +0,0 @@ -import React, { Component } from "react"; - -import { HomeComponent } from "../components/Journal/HomeComponent"; -import Navigation from "./Navigation"; - -import NewJournal from "../views/NewJournal"; -import NewReflection from "../views/NewReflection"; - -class Home extends Component { - constructor() { - super(); - this.state = { - views: { - Homepage: HomeComponent, - newJournal: NewJournal, - newReflection: NewReflection - }, - currentView: "Home" - }; - } - - render() { - return ( - <> - - - - ); - } -} - -export default Home; diff --git a/app/src/views/Journals.jsx b/app/src/views/Journals.jsx deleted file mode 100644 index c77f6e6..0000000 --- a/app/src/views/Journals.jsx +++ /dev/null @@ -1,15 +0,0 @@ -import React, { Component } from 'react' - -import Navigation from './Navigation'; -import JournalComponent from '../components/Journal/JournalComponent' - -export default class Journals extends Component { - render() { - return( - <> - - - - ) - } -} diff --git a/app/src/views/Login.jsx b/app/src/views/Login.jsx deleted file mode 100644 index 7074c19..0000000 --- a/app/src/views/Login.jsx +++ /dev/null @@ -1,30 +0,0 @@ -import React, { Component } from "react"; -import LoginComponent from "../components/Login/LoginComponent"; -import SignupComponent from "../components/Login/SignupComponent"; - -export default class Login extends Component { - state = { - signUp: false - }; - - redirect = e => { - e.preventDefault(); - this.setState({ signUp: !this.state.signUp }); - }; - - render() { - return ( - <> - {this.state.signUp ? ( - - ) : ( - - )} - - ); - } -} diff --git a/app/src/views/LoginView.jsx b/app/src/views/LoginView.jsx new file mode 100644 index 0000000..101b405 --- /dev/null +++ b/app/src/views/LoginView.jsx @@ -0,0 +1,74 @@ +import React, { Component } from "react"; + +import Login from "../components/Login/Login"; +import Register from "../components/Login/Register"; +import { connect } from "react-redux"; +import { registerUser, loginUser } from "../store/actions/user"; + +class LoginView extends Component { + state = { + isNewUser: false, + user: { + fullname: "", + email: "", + username: "", + password: "" + } + }; + + switchView = e => { + e.preventDefault(); + this.setState(prevState => ({ + isNewUser: !prevState.isNewUser + })); + }; + + registerUser = e => { + e.preventDefault(); + this.props.registerUser(this.state.user); + this.setState({ + isNewUser: false + }); + }; + + loginUser = e => { + e.preventDefault(); + this.props.loginUser(this.state.user); + }; + + handleChange = e => { + e.preventDefault(); + this.setState({ + ...this.state, + user: { ...this.state.user, [e.target.name]: e.target.value } + }); + }; + + render() { + return this.state.isNewUser ? ( + + ) : ( + + ); + } +} + +const mapStateToProps = state => { + return { + isLoading: state.user.isLoading + }; +}; + +export default connect( + mapStateToProps, + { registerUser, loginUser } +)(LoginView); diff --git a/app/src/views/MainView.jsx b/app/src/views/MainView.jsx new file mode 100644 index 0000000..21bd8d4 --- /dev/null +++ b/app/src/views/MainView.jsx @@ -0,0 +1,80 @@ +import React, { Component } from "react"; +import ActivityCard from "../components/Main/ActivityCard"; +import Loader from "react-loader-spinner"; +import { connect } from "react-redux"; +import { + deleteActivity, + editActivity, + getActivities +} from "../store/actions/activity"; +import { getReflections } from "../store/actions/reflection"; +import ActionButtons from "../components/Main/ActionButtons"; +import SidebarLeft from "../components/Main/SidebarLeft"; +import SearchBar from "../components/Main/SearchBar"; +import "../styles/Feed.scss"; +const token = localStorage.getItem("token"); + +class MainView extends Component { + state = { + isExpanded: false + }; + + componentDidMount = () => { + setTimeout(() => this.props.getActivities(token), 500); + }; + + editActivity = id => { + const selected = this.props.activities.find(activity => activity.id === id); + this.props.history.push("/activity"); + this.props.editActivity(selected); + }; + + deleteActivity = id => { + const token = localStorage.getItem("token"); + this.props.deleteActivity(token, id); + setTimeout(() => this.props.getActivities(token), 1000); + }; + + render() { + let mappedActivities; + if (Array.isArray(this.props.activities)) { + mappedActivities = this.props.activities.map(activity => ( + + )); + } + + return this.props.isLoading ? ( +
loading
+ ) : ( + <> +
+
{mappedActivities}
+
+ + + ); + } +} +const mapStateToProps = state => { + return { + isLoading: state.user.isLoading, + activeEdit: state.activity.activeEdit, + activities: state.activity.activities + }; +}; +export default connect( + mapStateToProps, + { deleteActivity, editActivity, getActivities, getReflections } +)(MainView); diff --git a/app/src/views/Navigation.jsx b/app/src/views/Navigation.jsx deleted file mode 100644 index a64b38c..0000000 --- a/app/src/views/Navigation.jsx +++ /dev/null @@ -1,32 +0,0 @@ -import React, { Component } from "react"; -import { Link } from "react-router-dom"; - -//Semantic UI -import { Menu } from "semantic-ui-react"; -import styled from "styled-components"; - -import Logo from "../assets/Logo.png"; - -export default class MenuExampleSecondaryPointing extends Component { - render() { - console.log(this.props); - return ( -
- -
- -
- {/* */} - - this.props.logOut(e)} name="logout" /> - -
-
- ); - } -} - -const LogoStyle = styled.img` - width: 45px; - margin-left: 15px; -`; diff --git a/app/src/views/NavigationView.jsx b/app/src/views/NavigationView.jsx new file mode 100644 index 0000000..a31c6b3 --- /dev/null +++ b/app/src/views/NavigationView.jsx @@ -0,0 +1,8 @@ +import React from "react"; +import Navigation from "../components/Navigation/Navigation"; + +const NavigationView = props => { + return ; +}; + +export default NavigationView; diff --git a/app/src/views/NewJournal.jsx b/app/src/views/NewJournal.jsx deleted file mode 100644 index baf0506..0000000 --- a/app/src/views/NewJournal.jsx +++ /dev/null @@ -1,14 +0,0 @@ -import React, { Component } from 'react' -import NewJournalComponent from '../components/Journal/NewJournalComponent'; -import Navigation from './Navigation' - -export default class NewJournal extends Component { - render() { - return ( - <> - - - - ) - } -} diff --git a/app/src/views/NewReflection.jsx b/app/src/views/NewReflection.jsx deleted file mode 100644 index 47a3e5c..0000000 --- a/app/src/views/NewReflection.jsx +++ /dev/null @@ -1,14 +0,0 @@ -import React, { Component } from 'react' -import Navigation from './Navigation'; -import NewReflectionComponent from '../components/Journal/NewReflectionComponent'; - -export default class NewReflection extends Component { - render() { - return ( - <> - - - - ) - } -} diff --git a/app/src/views/ReflectionFormView.jsx b/app/src/views/ReflectionFormView.jsx new file mode 100644 index 0000000..89f02ee --- /dev/null +++ b/app/src/views/ReflectionFormView.jsx @@ -0,0 +1,95 @@ +import React, { Component } from "react"; +import { connect } from "react-redux"; +import ReflectionFormOne from "../components/Main/ReflectionFormOne"; +import ReflectionFormTwo from "../components/Main/ReflectionFormTwo"; +import ReflectionFormThree from "../components/Main/ReflectionFormThree"; +import ReflectionFormSubmit from "../components/Main/ReflectionFormSubmit"; +import "../styles/ReflectionForm.scss"; + +import { addReflection } from "../store/actions/reflection"; + +class ReflectionFormView extends Component { + state = { + page: 1, + reflection: { + q1: "", + q2: "", + q3: "", + summary: "" + } + }; + + handleChange = e => { + this.setState({ + ...this.state, + reflection: { ...this.state.reflection, [e.target.name]: e.target.value } + }); + }; + + nextStep = e => { + e.preventDefault(); + this.setState(prevState => ({ page: prevState.page + 1 })); + }; + + previousStep = e => { + e.preventDefault(); + this.setState(prevState => ({ page: prevState.page - 1 })); + }; + + addReflection = e => { + e.preventDefault(); + this.props.addReflection(this.state.reflection); + this.props.history.push("/"); + }; + + render() { + switch (this.state.page) { + case 1: + return ( + + ); + case 2: + return ( + + ); + case 3: + return ( + + ); + case 4: + return ( + + ); + default: + return

An error has occured

; + } + } +} + +// const mapStateToProps = state => { +// // need state to props? +// }; + +export default connect( + null, + { addReflection } +)(ReflectionFormView); diff --git a/app/src/views/Reflections.jsx b/app/src/views/Reflections.jsx deleted file mode 100644 index 37c265f..0000000 --- a/app/src/views/Reflections.jsx +++ /dev/null @@ -1,14 +0,0 @@ -import React, { Component } from 'react' -import Navigation from './Navigation'; -import ReflectionComponent from '../components/Journal/ReflectionComponent'; - -export default class Reflections extends Component { - render() { - return ( - <> - - - - ) - } -} diff --git a/app/yarn.lock b/app/yarn.lock old mode 100755 new mode 100644 index 561b64c..c919191 --- a/app/yarn.lock +++ b/app/yarn.lock @@ -50,11 +50,11 @@ source-map "^0.5.0" "@babel/generator@^7.1.6", "@babel/generator@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz#18c816c70962640eab42fe8cae5f3947a5c65ccc" - integrity sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg== + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.3.0.tgz#f663838cd7b542366de3aa608a657b8ccb2a99eb" + integrity sha512-dZTwMvTgWfhmibq4V9X+LMf6Bgl7zAodRn9PvcPdhlzFMbvUutx74dbEv7Atz3ToeEpevYEJtAwfxq/bDCzHWg== dependencies: - "@babel/types" "^7.2.2" + "@babel/types" "^7.3.0" jsesc "^2.5.1" lodash "^4.17.10" source-map "^0.5.0" @@ -75,12 +75,12 @@ "@babel/helper-explode-assignable-expression" "^7.1.0" "@babel/types" "^7.0.0" -"@babel/helper-builder-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" - integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== +"@babel/helper-builder-react-jsx@^7.3.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.3.0.tgz#a1ac95a5d2b3e88ae5e54846bf462eeb81b318a4" + integrity sha512-MjA9KgwCuPEkQd9ncSXvSyJ5y+j2sICHyrI0M3L+6fnS4wMSNDc1ARXsbTfbb2cXHn17VisSnU/sHFTCxVxSMw== dependencies: - "@babel/types" "^7.0.0" + "@babel/types" "^7.3.0" esutils "^2.0.0" "@babel/helper-call-delegate@^7.1.0": @@ -224,13 +224,13 @@ "@babel/types" "^7.2.0" "@babel/helpers@^7.1.5", "@babel/helpers@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.2.0.tgz#8335f3140f3144270dc63c4732a4f8b0a50b7a21" - integrity sha512-Fr07N+ea0dMcMN8nFpuK6dUIT7/ivt9yKQdEEnjVS83tG2pHwPi03gYmk/tyuwONnZ+sY+GFFPlWGgCtW1hF9A== + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.3.1.tgz#949eec9ea4b45d3210feb7dc1c22db664c9e44b9" + integrity sha512-Q82R3jKsVpUV99mgX50gOPCWwco9Ec5Iln/8Vyu4osNIOQgSrd9RFrQeUvmvddFNoLwMyOUWU+5ckioEKpDoGA== dependencies: "@babel/template" "^7.1.2" "@babel/traverse" "^7.1.5" - "@babel/types" "^7.2.0" + "@babel/types" "^7.3.0" "@babel/highlight@^7.0.0": version "7.0.0" @@ -242,9 +242,9 @@ js-tokens "^4.0.0" "@babel/parser@^7.0.0", "@babel/parser@^7.1.6", "@babel/parser@^7.2.2", "@babel/parser@^7.2.3": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" - integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA== + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.3.1.tgz#8f4ffd45f779e6132780835ffa7a215fa0b2d181" + integrity sha512-ATz6yX/L8LEnC3dtLQnIx4ydcPxhLcoy9Vl6re00zb2w5lG6itY6Vhnr1KFRPq/FHNsgl/gh2mjNN20f9iJTTA== "@babel/plugin-proposal-async-generator-functions@^7.1.0", "@babel/plugin-proposal-async-generator-functions@^7.2.0": version "7.2.0" @@ -293,10 +293,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.0.0" -"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.2.0.tgz#88f5fec3e7ad019014c97f7ee3c992f0adbf7fb8" - integrity sha512-1L5mWLSvR76XYUQJXkd/EEQgjq8HHRP6lQuZTTg0VA4tTGPpGemmCdAfQIz1rzEuWAm+ecP8PyyEm30jC1eQCg== +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.3.1": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.3.1.tgz#f69fb6a1ea6a4e1c503994a91d9cf76f3c4b36e8" + integrity sha512-Nmmv1+3LqxJu/V5jU9vJmxR/KIRWFk2qLHmbB56yRRRFhlaSuOVXscX3gUmhaKgUhzA3otOHVubbIEVYsZ0eZg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" @@ -555,6 +555,13 @@ "@babel/helper-module-transforms" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-named-capturing-groups-regex@^7.3.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.3.0.tgz#140b52985b2d6ef0cb092ef3b29502b990f9cd50" + integrity sha512-NxIoNVhk9ZxS+9lSoAQ/LM0V2UEvARLttEHUrRDGKFaAxOYQcrkN/nLRE+BbbicCAvZPl7wMP0X60HsHE5DtQw== + dependencies: + regexp-tree "^0.1.0" + "@babel/plugin-transform-new-target@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" @@ -626,11 +633,11 @@ "@babel/plugin-syntax-jsx" "^7.2.0" "@babel/plugin-transform-react-jsx@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.2.0.tgz#ca36b6561c4d3b45524f8efb6f0fbc9a0d1d622f" - integrity sha512-h/fZRel5wAfCqcKgq3OhbmYaReo7KkoJBpt8XnvpS7wqaNMqtw5xhxutzcm35iMUWucfAdT/nvGTsWln0JTg2Q== + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz#f2cab99026631c767e2745a5368b331cfe8f5290" + integrity sha512-a/+aRb7R06WcKvQLOu4/TpjKOdvVEKRLWFpKcNuHhiREPgGRB4TQJxq07+EZLS8LFVYpfq1a5lDUnuMdcCpBKg== dependencies: - "@babel/helper-builder-react-jsx" "^7.0.0" + "@babel/helper-builder-react-jsx" "^7.3.0" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" @@ -753,18 +760,19 @@ semver "^5.3.0" "@babel/preset-env@^7.0.0": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.2.3.tgz#948c8df4d4609c99c7e0130169f052ea6a7a8933" - integrity sha512-AuHzW7a9rbv5WXmvGaPX7wADxFkZIqKlbBh1dmZUQp4iwiPpkE/Qnrji6SC4UQCQzvWY/cpHET29eUhXS9cLPw== + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.3.1.tgz#389e8ca6b17ae67aaf9a2111665030be923515db" + integrity sha512-FHKrD6Dxf30e8xgHQO0zJZpUPfVZg+Xwgz5/RdSWCbza9QLNk4Qbp40ctRoqDxml3O8RMzB1DU55SXeDG6PqHQ== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-async-generator-functions" "^7.2.0" "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.3.1" "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" "@babel/plugin-proposal-unicode-property-regex" "^7.2.0" "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" "@babel/plugin-transform-arrow-functions" "^7.2.0" @@ -784,6 +792,7 @@ "@babel/plugin-transform-modules-commonjs" "^7.2.0" "@babel/plugin-transform-modules-systemjs" "^7.2.0" "@babel/plugin-transform-modules-umd" "^7.2.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.3.0" "@babel/plugin-transform-new-target" "^7.0.0" "@babel/plugin-transform-object-super" "^7.2.0" "@babel/plugin-transform-parameters" "^7.2.0" @@ -825,6 +834,13 @@ dependencies: regenerator-runtime "^0.12.0" +"@babel/runtime@7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.2.0.tgz#b03e42eeddf5898e00646e4c840fa07ba8dcad7f" + integrity sha512-oouEibCbHMVdZSDlJBO6bZmID/zA/G/Qx3H1d3rSNPTD+L8UNKvCat7aKWSJ74zYbm5zWGh0GQN0hKj8zYFTCg== + dependencies: + regenerator-runtime "^0.12.0" + "@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.2.0": version "7.3.1" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.3.1.tgz#574b03e8e8a9898eaf4a872a92ea20b7846f6f2a" @@ -856,10 +872,10 @@ globals "^11.1.0" lodash "^4.17.10" -"@babel/types@^7.0.0", "@babel/types@^7.1.6", "@babel/types@^7.2.0", "@babel/types@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e" - integrity sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg== +"@babel/types@^7.0.0", "@babel/types@^7.1.6", "@babel/types@^7.2.0", "@babel/types@^7.2.2", "@babel/types@^7.3.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.3.0.tgz#61dc0b336a93badc02bf5f69c4cd8e1353f2ffc0" + integrity sha512-QkFPw68QqWU1/RVPyBe8SO7lXbPfjtqAxRYQKpFpaB8yMq7X2qAqfwK5LKoQufEkSmO5NQ70O6Kc3Afk03RwXw== dependencies: esutils "^2.0.2" lodash "^4.17.10" @@ -920,6 +936,14 @@ recompose "0.28.0 - 0.30.0" warning "^4.0.1" +"@material-ui/icons@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@material-ui/icons/-/icons-3.0.2.tgz#d67a6dd1ec8312d3a88ec97944a63daeef24fe10" + integrity sha512-QY/3gJnObZQ3O/e6WjH+0ah2M3MOgLOzCy8HTUoUx9B6dDrS18vP7Ycw3qrDEKlB6q1KNxy6CZHm5FCauWGy2g== + dependencies: + "@babel/runtime" "^7.2.0" + recompose "0.28.0 - 0.30.0" + "@material-ui/system@^3.0.0-alpha.0": version "3.0.0-alpha.2" resolved "https://registry.yarnpkg.com/@material-ui/system/-/system-3.0.0-alpha.2.tgz#096e80c8bb0f70aea435b9e38ea7749ee77b4e46" @@ -952,14 +976,6 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== -"@semantic-ui-react/event-stack@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@semantic-ui-react/event-stack/-/event-stack-3.0.1.tgz#41d0b095ac94cc5e1607a4fed4d0f8860d0d2e60" - integrity sha512-9YNRr0z9GEvk/yvIzAzv0sbYa/FPrtWTYibu+chJ0CEMQjYDjUdRSqtxXOvP0eM6kZjD1G/Oy1LhPiHG7DRHsg== - dependencies: - exenv "^1.2.2" - prop-types "^15.6.2" - "@svgr/core@^2.4.1": version "2.4.1" resolved "https://registry.yarnpkg.com/@svgr/core/-/core-2.4.1.tgz#03a407c28c4a1d84305ae95021e8eabfda8fa731" @@ -1229,9 +1245,9 @@ acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== acorn@^6.0.1, acorn@^6.0.2, acorn@^6.0.4: - version "6.0.5" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.5.tgz#81730c0815f3f3b34d8efa95cb7430965f4d887a" - integrity sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg== + version "6.0.6" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.6.tgz#cd75181670d5b99bdb1b1c993941d3a239ab1f56" + integrity sha512-5M3G/A4uBSMIlfJ+h9W125vJvPFH/zirISsW5qfxF5YzEvXJCtolLoQvM5yZft0DvMcUrPGKPOlgEu55I6iUtA== address@1.0.3, address@^1.0.1: version "1.0.3" @@ -1244,14 +1260,14 @@ ajv-errors@^1.0.0: integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== ajv-keywords@^3.0.0, ajv-keywords@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= + version "3.3.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.3.0.tgz#cb6499da9b83177af8bc1732b2f0a1a1a3aacf8c" + integrity sha512-CMzN9S62ZOO4sA/mJZIO4S++ZM7KFWzH3PPWkveLhy4OZ9i1/VatgwWMD46w/XbGCBy7Ye0gCk+Za6mmyfKK7g== ajv@^6.0.1, ajv@^6.1.0, ajv@^6.5.3, ajv@^6.5.5: - version "6.6.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.6.2.tgz#caceccf474bf3fc3ce3b147443711a24063cc30d" - integrity sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g== + version "6.7.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.7.0.tgz#e3ce7bb372d6577bb1839f1dfdfcbf5ad2948d96" + integrity sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg== dependencies: fast-deep-equal "^2.0.1" fast-json-stable-stringify "^2.0.0" @@ -1263,15 +1279,20 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + ansi-colors@^3.0.0: version "3.2.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== +ansi-escapes@^3.0.0, ansi-escapes@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" + integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== ansi-html@0.0.7: version "0.0.7" @@ -1380,6 +1401,11 @@ array-filter@~0.0.0: resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -1488,6 +1514,11 @@ async-each@^1.0.0: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" integrity sha1-GdOGodntxufByF04iu28xW0zYC0= +async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= + async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" @@ -1516,15 +1547,15 @@ atob@^2.1.1: integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== autoprefixer@^9.3.1: - version "9.4.4" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.4.4.tgz#40c42b335bdb22efe8cd80389ca82ffb5e32d68d" - integrity sha512-7tpjBadJyHKf+gOJEmKhZIksWxdZCSrnKbbTJNsw+/zX9+f//DLELRQPWjjjVoDbbWlCuNRkN7RfmZwDVgWMLw== + version "9.4.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.4.7.tgz#f997994f9a810eae47b38fa6d8a119772051c4ff" + integrity sha512-qS5wW6aXHkm53Y4z73tFGsUhmZu4aMPV9iHXYlF0c/wxjknXNHuj/1cIQb+6YH692DbJGGWcckAXX+VxKvahMA== dependencies: - browserslist "^4.3.7" - caniuse-lite "^1.0.30000926" + browserslist "^4.4.1" + caniuse-lite "^1.0.30000932" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^7.0.7" + postcss "^7.0.14" postcss-value-parser "^3.3.1" aws-sign2@~0.7.0: @@ -1880,6 +1911,13 @@ binary-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= + dependencies: + inherits "~2.0.0" + bluebird@^3.5.1, bluebird@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" @@ -1923,11 +1961,6 @@ boolbase@^1.0.0, boolbase@~1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= -bootstrap@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.2.1.tgz#8f8bdca024dbf0e8644da32e918c8a03a90a5757" - integrity sha512-tt/7vIv3Gm2mnd/WeDx36nfGGHleil0Wg8IeB7eMrVkY0fZ5iTaBisSh8oNANc2IBsCc6vCgCNTIM/IEN0+50Q== - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2051,13 +2084,13 @@ browserslist@4.1.1: electron-to-chromium "^1.3.62" node-releases "^1.0.0-alpha.11" -browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.3.4, browserslist@^4.3.7: - version "4.3.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.7.tgz#f1de479a6466ea47a0a26dcc725e7504817e624a" - integrity sha512-pWQv51Ynb0MNk9JGMCZ8VkM785/4MQNXiFYtPqI7EEP0TJO+/d/NqRVn1uiAN0DNbnlUSpL2sh16Kspasv3pUQ== +browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.3.4, browserslist@^4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.4.1.tgz#42e828954b6b29a7a53e352277be429478a69062" + integrity sha512-pEBxEXg7JwaakBXjATYw/D1YZh4QUSCX/Mnd/wnqSRPPSi1U39iDhDoKGoBUcraKdxDlrYqJxSI5nNvD+dWP2A== dependencies: - caniuse-lite "^1.0.30000925" - electron-to-chromium "^1.3.96" + caniuse-lite "^1.0.30000929" + electron-to-chromium "^1.3.103" node-releases "^1.1.3" bser@^2.0.0: @@ -2204,6 +2237,24 @@ camel-case@3.0.x: no-case "^2.2.0" upper-case "^1.1.1" +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= + camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -2224,10 +2275,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000905, caniuse-lite@^1.0.30000925, caniuse-lite@^1.0.30000926: - version "1.0.30000927" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000927.tgz#114a9de4ff1e01f5790fe578ecd93421c7524665" - integrity sha512-ogq4NbUWf1uG/j66k0AmiO3GjqJAlQyF8n4w8a954cbCyFKmYGvRtgz6qkq2fWuduTXHibX7GyYL5Pg58Aks2g== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000905, caniuse-lite@^1.0.30000929, caniuse-lite@^1.0.30000932: + version "1.0.30000933" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000933.tgz#5871ff54b3177675ae1c2a275b2aae7abf2b9222" + integrity sha512-d3QXv7eFTU40DSedSP81dV/ajcGSKpT+GW+uhtWmLvQm9bPk0KK++7i1e2NSW/CXGZhWFt2mFbFtCJ5I5bMuVA== capture-exit@^1.2.0: version "1.2.0" @@ -2246,7 +2297,7 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chalk@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1: +chalk@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== @@ -2255,7 +2306,7 @@ chalk@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^1.1.3: +chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= @@ -2266,6 +2317,15 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + change-emitter@^0.1.2: version "0.1.6" resolved "https://registry.yarnpkg.com/change-emitter/-/change-emitter-0.1.6.tgz#e8b2fe3d7f1ab7d69a32199aff91ea6931409515" @@ -2341,7 +2401,7 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" -classnames@^2.2.3, classnames@^2.2.5, classnames@^2.2.6: +classnames@^2.2.5: version "2.2.6" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== @@ -2360,11 +2420,30 @@ cli-cursor@^2.1.0: dependencies: restore-cursor "^2.0.0" +cli-table3@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + cliui@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" @@ -2455,6 +2534,11 @@ color@^3.0.0: color-convert "^1.9.1" color-string "^1.5.2" +colors@^1.1.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" + integrity sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg== + colors@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" @@ -2538,9 +2622,9 @@ confusing-browser-globals@^1.0.5: integrity sha512-tHo1tQL/9Ox5RELbkCAJhnViqWlzBz3MG1bB2czbHjH2mWd4aYUgNCNLfysFL7c4LoDws7pjg2tj48Gmpw4QHA== connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= + version "1.6.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" + integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== console-browserify@^1.1.0: version "1.1.0" @@ -2619,9 +2703,9 @@ core-js@^1.0.0: integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= core-js@^2.4.0, core-js@^2.5.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.1.tgz#87416ae817de957a3f249b3b5ca475d4aaed6042" - integrity sha512-L72mmmEayPJBejKIWe2pYtGis5r0tQ5NaJekdhyXgeMQTpJoBsH0NL4ElY2LfSoV15xeQWKQ+XTTOZdyero5Xg== + version "2.6.3" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.3.tgz#4b70938bdffdaf64931e66e2db158f0892289c49" + integrity sha512-l00tmFFZOBHtYhN4Cz7k32VM7vTn3rE2ANjQDxdEN6zmXZ/xq1jQuutnmHvMG1ZJ7xd72+TA5YpUK8wz3rWsfQ== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -2690,6 +2774,14 @@ cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" + integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + cross-spawn@^5.0.1: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -2940,6 +3032,13 @@ csstype@^2.0.0, csstype@^2.2.0, csstype@^2.5.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.2.tgz#3043d5e065454579afc7478a18de41909c8a2f01" integrity sha512-Rl7PvTae0pflc1YtxtKbiSqq20Ts6vpIYOD5WBafl4y123DyHUeLrRdQP66sQW8/6gmX8jrYJLXwNeMqYVJcow== +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + dependencies: + array-find-index "^1.0.1" + cyclist@~0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" @@ -3004,7 +3103,7 @@ debug@^4.1.0: dependencies: ms "^2.1.1" -decamelize@^1.1.1: +decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -3175,11 +3274,10 @@ diffie-hellman@^5.0.0: randombytes "^2.0.0" dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== + version "2.2.2" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== dependencies: - arrify "^1.0.1" path-type "^3.0.0" dns-equal@^1.0.0: @@ -3336,10 +3434,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.62, electron-to-chromium@^1.3.96: - version "1.3.96" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.96.tgz#25770ec99b8b07706dedf3a5f43fa50cb54c4f9a" - integrity sha512-ZUXBUyGLeoJxp4Nt6G/GjBRLnyz8IKQGexZ2ndWaoegThgMGFO1tdDYID5gBV32/1S83osjJHyfzvanE/8HY4Q== +electron-to-chromium@^1.3.103, electron-to-chromium@^1.3.62: + version "1.3.111" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.111.tgz#9bde11c953425c1756f85c66e61de2b74ced75d0" + integrity sha512-I2QjmmxWULp89fEHlFwRpKXSw4Y/Igo3u41py4MkzJTrgDOf/S4oq/IMuTUHze/5TTPpwem74oQiPMEgFtuDRA== elliptic@^6.0.0: version "6.4.1" @@ -3481,12 +3579,12 @@ eslint-loader@2.1.1: rimraf "^2.6.1" eslint-module-utils@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" - integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y= + version "2.3.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.3.0.tgz#546178dab5e046c8b562bbb50705e2456d7bda49" + integrity sha512-lmDJgeOOjk8hObTysjqH7wyMi+nsHwwvfBykwfhjR1LNdd7C2uFJBvx4OpWYpXOw4df1yE1cDEVd1yLHitk34w== dependencies: debug "^2.6.8" - pkg-dir "^1.0.0" + pkg-dir "^2.0.0" eslint-plugin-flowtype@2.50.1: version "2.50.1" @@ -3659,10 +3757,10 @@ eventemitter3@^3.0.0: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= +events@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88" + integrity sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA== eventsource@0.1.6: version "0.1.6" @@ -3732,11 +3830,6 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -exenv@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" - integrity sha1-KueOhdmJQVhnCwPUe+wfA72Ru50= - exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -3844,7 +3937,7 @@ extend@~3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -external-editor@^3.0.0: +external-editor@^3.0.0, external-editor@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== @@ -3890,9 +3983,9 @@ fast-deep-equal@^2.0.1: integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= fast-glob@^2.0.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.4.tgz#e54f4b66d378040e0e4d6a68ec36bbc5b04363c0" - integrity sha512-FjK2nCGI/McyzgNtTESqaWP3trPvHyRyoyY70hxjc3oKPNmDe8taohLZpoVKoUjW85tbU5txaYUZCNtVzygl1g== + version "2.2.6" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.6.tgz#a5d5b697ec8deda468d85a74035290a025a95295" + integrity sha512-0BvMaZc1k9F+MeWWMe8pL6YltFzZYcJsYU7D4JyDA6PAczaXvxqQQ/z+mDF7/4Mw01DeUc+i3CTKajnkANkV4w== dependencies: "@mrmlnc/readdir-enhanced" "^2.2.1" "@nodelib/fs.stat" "^1.1.2" @@ -4235,7 +4328,7 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@1.2.4, fsevents@^1.2.2, fsevents@^1.2.3: +fsevents@1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== @@ -4243,6 +4336,24 @@ fsevents@1.2.4, fsevents@^1.2.2, fsevents@^1.2.3: nan "^2.9.2" node-pre-gyp "^0.10.0" +fsevents@^1.2.2, fsevents@^1.2.3: + version "1.2.7" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.7.tgz#4851b664a3783e52003b3c66eb0eee1074933aa4" + integrity sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw== + dependencies: + nan "^2.9.2" + node-pre-gyp "^0.10.0" + +fstream@^1.0.0, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + integrity sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE= + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -4267,6 +4378,13 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" +gaze@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" + integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== + dependencies: + globule "^1.0.0" + get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" @@ -4277,6 +4395,11 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= + get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" @@ -4329,7 +4452,7 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= -glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@~7.1.1: version "7.1.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== @@ -4362,9 +4485,9 @@ global-prefix@^1.0.1: which "^1.2.14" globals@^11.1.0, globals@^11.7.0: - version "11.9.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249" - integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg== + version "11.10.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.10.0.tgz#1e09776dffda5e01816b3bb4077c8b59c24eaa50" + integrity sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ== globals@^9.18.0: version "9.18.0" @@ -4395,6 +4518,15 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" +globule@^1.0.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" + integrity sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ== + dependencies: + glob "~7.1.1" + lodash "~4.17.10" + minimatch "~3.0.2" + graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: version "4.1.15" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" @@ -4882,6 +5014,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +in-publish@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" + integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= + indefinite-observable@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/indefinite-observable/-/indefinite-observable-1.0.2.tgz#0a328793ab2385d4b9dca23eaab4afe6936a73f8" @@ -4889,6 +5026,13 @@ indefinite-observable@^1.0.1: dependencies: symbol-observable "1.2.0" +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= + dependencies: + repeating "^2.0.0" + indexes-of@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" @@ -4907,7 +5051,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= @@ -4942,20 +5086,20 @@ inquirer@6.2.0: through "^2.3.6" inquirer@^6.1.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.1.tgz#9943fc4882161bdb0b0c9276769c75b32dbfcd52" - integrity sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg== + version "6.2.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.2.tgz#46941176f65c9eb20804627149b743a218f25406" + integrity sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA== dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" + ansi-escapes "^3.2.0" + chalk "^2.4.2" cli-cursor "^2.1.0" cli-width "^2.0.0" - external-editor "^3.0.0" + external-editor "^3.0.3" figures "^2.0.0" - lodash "^4.17.10" + lodash "^4.17.11" mute-stream "0.0.7" run-async "^2.2.0" - rxjs "^6.1.0" + rxjs "^6.4.0" string-width "^2.1.0" strip-ansi "^5.0.0" through "^2.3.6" @@ -4990,6 +5134,11 @@ ip-regex@^2.1.0: resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= +ip-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-3.0.0.tgz#0a934694b4066558c46294244a23cc33116bf732" + integrity sha512-T8wDtjy+Qf2TAPDQmBp0eGKJ8GavlWlUnamr3wRn6vvdZlKVuJXXMlSncYFRYgVHOM3If5NR1H4+OvVQU9Idvg== + ip@^1.1.0, ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" @@ -5777,15 +5926,15 @@ joi@^11.1.1: isemail "3.x.x" topo "2.x.x" -jquery@x.*: - version "3.3.1" - resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.3.1.tgz#958ce29e81c9790f31be7792df5d4d95fc57fbca" - integrity sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg== +js-base64@^2.1.8: + version "2.5.1" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121" + integrity sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw== js-levenshtein@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" - integrity sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow== + version "1.1.6" + resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" + integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -5798,9 +5947,9 @@ js-tokens@^3.0.2: integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" - integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== + version "3.12.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.1.tgz#295c8632a18a23e054cf5c9d3cecafe678167600" + integrity sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -5811,9 +5960,9 @@ jsbn@~0.1.0: integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= jsdom@>=11.0.0: - version "13.1.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-13.1.0.tgz#fa7356f0cc8111d0f1077cb7800d06f22f1d66c7" - integrity sha512-C2Kp0qNuopw0smXFaHeayvharqF3kkcNqlcIlSX71+3XrsOFwkEPLt/9f5JksMmaul2JZYIQuY+WTpqHpQQcLg== + version "13.2.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-13.2.0.tgz#b1a0dbdadc255435262be8ea3723d2dba0d7eb3a" + integrity sha512-cG1NtMWO9hWpqRNRR3dSvEQa8bFI6iLlqU2x4kwX51FQjp0qus8T9aBaAO6iGp3DeBrhdwuKxckknohkmfvsFw== dependencies: abab "^2.0.0" acorn "^6.0.4" @@ -5830,7 +5979,7 @@ jsdom@>=11.0.0: pn "^1.1.0" request "^2.88.0" request-promise-native "^1.0.5" - saxes "^3.1.4" + saxes "^3.1.5" symbol-tree "^3.2.2" tough-cookie "^2.5.0" w3c-hr-time "^1.0.1" @@ -6019,11 +6168,6 @@ jsx-ast-utils@^2.0.1: dependencies: array-includes "^3.0.3" -keyboard-key@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/keyboard-key/-/keyboard-key-1.0.4.tgz#52d8fa07b7e17757072aa22a67fb4ae85e4c46b0" - integrity sha512-my04dE6BCwPpwoe4KYKfPxWiwgDYQOHrVmtzn1CfzmoEsGG/ef4oZGaXCzi1+iFhG7CN5JkOuxmei5OABY8/ag== - killable@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" @@ -6145,9 +6289,9 @@ loader-fs-cache@^1.0.0: mkdirp "0.5.1" loader-runner@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" - integrity sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw== + version "2.4.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== loader-utils@1.1.0: version "1.1.0" @@ -6188,31 +6332,36 @@ lodash._reinterpolate@~3.0.0: resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= +lodash.assign@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= +lodash.clonedeep@^4.3.2: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= -lodash.isfunction@^3.0.9: - version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" - integrity sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw== - -lodash.isobject@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-3.0.2.tgz#3c8fb8d5b5bf4bf90ae06e14f2a530a4ed935e1d" - integrity sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0= - lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= +lodash.mergewith@^4.6.0: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" + integrity sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ== + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -6238,17 +6387,12 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "~3.0.0" -lodash.tonumber@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/lodash.tonumber/-/lodash.tonumber-4.0.3.tgz#0b96b31b35672793eb7f5a63ee791f1b9e9025d9" - integrity sha1-C5azGzVnJ5Prf1pj7nkfG56QJdk= - lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -"lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5: +"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@~4.17.10: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== @@ -6265,6 +6409,14 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3 dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + lower-case@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" @@ -6316,6 +6468,11 @@ map-cache@^0.2.2: resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + map-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" @@ -6324,9 +6481,9 @@ map-visit@^1.0.0: object-visit "^1.0.0" math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= + version "1.0.4" + resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.4.tgz#5dd6943c938548267016d4e34f057583080c514c" + integrity sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== md5.js@^1.3.4: version "1.3.5" @@ -6355,13 +6512,13 @@ mem@^1.1.0: mimic-fn "^1.0.0" mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== + version "4.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.1.0.tgz#aeb9be2d21f47e78af29e4ac5978e8afa2ca5b8a" + integrity sha512-I5u6Q1x7wxO0kdOpYBB28xueHADYps5uty/zg936CiG8NTe5sJL8EjrCuLneuDW3PlMdZBGDIn8BirEVdovZvg== dependencies: map-age-cleaner "^0.1.1" mimic-fn "^1.0.0" - p-is-promise "^1.1.0" + p-is-promise "^2.0.0" memoize-one@^4.0.0: version "4.1.0" @@ -6376,6 +6533,22 @@ memory-fs@^0.4.0, memory-fs@~0.4.1: errno "^0.1.3" readable-stream "^2.0.1" +meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + merge-deep@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" @@ -6504,7 +6677,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= -minimatch@3.0.4, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@3.0.4, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -6516,7 +6689,7 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@^1.1.1, minimist@^1.2.0: +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= @@ -6589,13 +6762,18 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" +moment@^2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" + integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -6636,7 +6814,7 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= -nan@^2.9.2: +nan@^2.10.0, nan@^2.9.2: version "2.12.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.12.1.tgz#7b1aa193e9aa86057e3c7bbd0ac448e770925552" integrity sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw== @@ -6707,15 +6885,33 @@ node-forge@0.7.5: resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== +node-gyp@^3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" + integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "^2.87.0" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== + version "2.2.0" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.0.tgz#c72f60d9d46de08a940dedbb25f3ffa2f9bbaa77" + integrity sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA== dependencies: assert "^1.1.1" browserify-zlib "^0.2.0" @@ -6724,7 +6920,7 @@ node-libs-browser@^2.0.0: constants-browserify "^1.0.0" crypto-browserify "^3.11.0" domain-browser "^1.1.1" - events "^1.0.0" + events "^3.0.0" https-browserify "^1.0.0" os-browserify "^0.3.0" path-browserify "0.0.0" @@ -6738,7 +6934,7 @@ node-libs-browser@^2.0.0: timers-browserify "^2.0.4" tty-browserify "0.0.0" url "^0.11.0" - util "^0.10.3" + util "^0.11.0" vm-browserify "0.0.4" node-notifier@^5.2.1: @@ -6768,12 +6964,44 @@ node-pre-gyp@^0.10.0: tar "^4" node-releases@^1.0.0-alpha.11, node-releases@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.3.tgz#aad9ce0dcb98129c753f772c0aa01360fb90fbd2" - integrity sha512-6VrvH7z6jqqNFY200kdB6HdzkgM96Oaj9v3dqGfgp6mF+cHmU4wyQKZ2/WPDRVoR0Jz9KqbamaBN0ZhdUaysUQ== + version "1.1.6" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.6.tgz#47d160033e24a64e79487a62de63cf691052ec54" + integrity sha512-lODUVHEIZutZx+TDdOk47qLik8FJMXzJ+WnyUGci1MTvTOyzZrz5eVPIIpc5Hb3NfHZGeGHeuwrRYVI1PEITWg== dependencies: semver "^5.3.0" +node-sass@^4.11.0: + version "4.11.0" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.11.0.tgz#183faec398e9cbe93ba43362e2768ca988a6369a" + integrity sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA== + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + lodash.mergewith "^4.6.0" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.10.0" + node-gyp "^3.8.0" + npmlog "^4.0.0" + request "^2.88.0" + sass-graph "^2.2.4" + stdout-stream "^1.4.0" + "true-case-path" "^1.0.2" + +"nopt@2 || 3": + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= + dependencies: + abbrev "1" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -6782,10 +7010,10 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-package-data@^2.3.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.4.2" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.2.tgz#6b2abd85774e51f7936f1395e45acb905dc849b2" + integrity sha512-YcMnjqeoUckXTPKZSAsPjUPLxH85XotbpqK3w4RyCwdFQSU5FxxBys8buehkSfg0j9fKvV1hn7O0+8reEgkAiw== dependencies: hosted-git-info "^2.1.4" is-builtin-module "^1.0.0" @@ -6820,9 +7048,9 @@ npm-bundled@^1.0.1: integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== + version "1.2.0" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.2.0.tgz#55a60e793e272f00862c7089274439a4cc31fc7f" + integrity sha512-7Mni4Z8Xkx0/oegoqlcao/JpPCPEMtUvsmB0q7mgvlMinykJLSRTYuFqoQLYgGY8biuxIeiHO+QNJKbCfljewQ== dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" @@ -6834,7 +7062,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^4.0.2: +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -7028,6 +7256,13 @@ os-homedir@^1.0.0: resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= + dependencies: + lcid "^1.0.0" + os-locale@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" @@ -7051,7 +7286,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@^0.1.4: +osenv@0, osenv@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -7069,10 +7304,10 @@ p-finally@^1.0.0: resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= +p-is-promise@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.0.0.tgz#7554e3d572109a87e1f3f53f6a7d85d1b194f4c5" + integrity sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg== p-limit@^1.1.0: version "1.3.0" @@ -7118,9 +7353,9 @@ p-try@^2.0.0: integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== pako@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.7.tgz#2473439021b57f1516c82f58be7275ad8ef1bb27" - integrity sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ== + version "1.0.8" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.8.tgz#6844890aab9c635af868ad5fecc62e8acbba3ea4" + integrity sha512-6i0HVbUfcKaTv+EG8ZTr75az7GFXcLYk9UyLEg7Notv/Ma+z/UG3TCoz6GiNeOrn1E/e63I0X/Hpw18jHOTUnA== parallel-transform@^1.1.0: version "1.1.0" @@ -7139,15 +7374,16 @@ param-case@2.1.x: no-case "^2.2.0" parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== + version "5.1.3" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.3.tgz#1600c6cc0727365d68b97f3aa78939e735a75204" + integrity sha512-VrPoetlz7B/FqjBLD2f5wBVZvsZVLnRUrxVLfRYhGXCODa/NWE4p3Wp+6+aV3ZPL3KM7/OZmxDIwwijD7yuucg== dependencies: asn1.js "^4.0.0" browserify-aes "^1.0.0" create-hash "^1.1.0" evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" + safe-buffer "^5.1.1" parse-glob@^3.0.4: version "3.0.4" @@ -7377,12 +7613,12 @@ posix-character-classes@^0.1.0: integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= postcss-attribute-case-insensitive@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.0.tgz#807b6a797ad8bf1c821b2d51cf641e9dd3837624" - integrity sha512-K/zqdg0/UgUgC8qR0lDuxYzmowPpnvrrNC5YuoqzhHMubR9AuhsPlpVu3jjkLHgDAzR+ohD/m7//iGnN9WxbzQ== + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.1.tgz#b2a721a0d279c2f9103a36331c88981526428cc7" + integrity sha512-L2YKB3vF4PetdTIthQVeT+7YiSzMoNMLLYxPXXppOOP7NoazEAy45sh2LvJ8leCQjfBcfkYQs8TtCcQjeZTp8A== dependencies: postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" + postcss-selector-parser "^5.0.0" postcss-calc@^7.0.0: version "7.0.1" @@ -7941,7 +8177,7 @@ postcss-selector-parser@^3.0.0: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: +postcss-selector-parser@^5.0.0, postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: version "5.0.0" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== @@ -7975,9 +8211,9 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^ integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== postcss-values-parser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.0.tgz#1ba42cae31367c44f96721cb5eb99462bfb39705" - integrity sha512-cyRdkgbRRefu91ByAlJow4y9w/hnBmmWgLpWmlFQ2bpIy2eKrqowt3VeYcaHQ08otVXmC9V2JtYW1Z/RpvYR8A== + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" + integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== dependencies: flatten "^1.0.2" indexes-of "^1.0.1" @@ -7992,14 +8228,14 @@ postcss@^6.0.1, postcss@^6.0.23: source-map "^0.6.1" supports-color "^5.4.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.5, postcss@^7.0.7: - version "7.0.7" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.7.tgz#2754d073f77acb4ef08f1235c36c5721a7201614" - integrity sha512-HThWSJEPkupqew2fnuQMEI2YcTj/8gMV3n80cMdJsKxfIh5tHf7nM5JigNX6LxVMqo6zkgQNAI88hyFvBk41Pg== +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.5: + version "7.0.14" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5" + integrity sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg== dependencies: - chalk "^2.4.1" + chalk "^2.4.2" source-map "^0.6.1" - supports-color "^5.5.0" + supports-color "^6.1.0" prelude-ls@~1.1.2: version "1.1.2" @@ -8012,9 +8248,9 @@ preserve@^0.2.0: integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= prettier@^1.14.2: - version "1.15.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.15.3.tgz#1feaac5bdd181237b54dbe65d874e02a1472786a" - integrity sha512-gAU9AGAPMaKb3NNSUUuhhFAS7SCO4ALTN4nRIn6PJ075Qd28Yn2Ig2ahEJWdJwJmlEBTUfC7mMUSFy8MwsOCfg== + version "1.16.3" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.16.3.tgz#8c62168453badef702f34b45b6ee899574a6a65d" + integrity sha512-kn/GU6SMRYPxUakNXhpP0EedT/KmaPzr0H5lIsDogrykbaxOpOfAFfk5XA7DZrJyMAv1wlMV3CPcZruGXVVUZw== pretty-bytes@^4.0.2: version "4.0.2" @@ -8084,7 +8320,7 @@ prompts@^0.1.9: kleur "^2.0.1" sisteransi "^0.1.1" -prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2: +prop-types@^15.5.4, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2: version "15.6.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== @@ -8305,11 +8541,11 @@ react-error-overlay@^5.1.2: integrity sha512-7kEBKwU9R8fKnZJBRa5RSIfay4KJwnYvKB6gODGicUmDSAhQJ7Tdnll5S0RLtYrzRfMVXlqYw61rzrSpP4ThLQ== react-event-listener@^0.6.2: - version "0.6.6" - resolved "https://registry.yarnpkg.com/react-event-listener/-/react-event-listener-0.6.6.tgz#758f7b991cad9086dd39fd29fad72127e1d8962a" - integrity sha512-+hCNqfy7o9wvO6UgjqFmBzARJS7qrNoda0VqzvOuioEpoEXKutiKuv92dSz6kP7rYLmyHPyYNLesi5t/aH1gfw== + version "0.6.5" + resolved "https://registry.yarnpkg.com/react-event-listener/-/react-event-listener-0.6.5.tgz#d374dbe5da485c9f9d4702f0e76971afbe9b6b2e" + integrity sha512-//lCxOM3DQ0+xmTa/u9mI9mm55zCPdIKp89d8MGjlNsOOnXQ5sFDD1eed+sMBzQXKiRBLBMtSg/2T9RJFtfovw== dependencies: - "@babel/runtime" "^7.2.0" + "@babel/runtime" "7.2.0" prop-types "^15.6.0" warning "^4.0.1" @@ -8323,13 +8559,13 @@ react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4: resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== -react-popper@^0.10.4: - version "0.10.4" - resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-0.10.4.tgz#af2a415ea22291edd504678d7afda8a6ee3295aa" - integrity sha1-rypBXqIike3VBGeNev2opu4ylao= +react-loader-spinner@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/react-loader-spinner/-/react-loader-spinner-2.3.0.tgz#0f14da82f42cdfdf6567f8ddac3d4bd150cea231" + integrity sha512-Nu7RXMyAnvdGoZLH5boXaHbqLkgBEIPO1u75zOZkZNp2V+Dg8RvvlZ05SU3ajtmsFNteFe8BJbFd0samH0tXcw== dependencies: - popper.js "^1.14.1" - prop-types "^15.6.1" + babel-runtime "^6.26.0" + prop-types "^15.6.2" react-redux@^6.0.0: version "6.0.0" @@ -8423,7 +8659,7 @@ react-scripts@2.1.3: optionalDependencies: fsevents "1.2.4" -react-transition-group@^2.2.1, react-transition-group@^2.3.1: +react-transition-group@^2.2.1: version "2.5.3" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.5.3.tgz#26de363cab19e5c88ae5dbae105c706cf953bb92" integrity sha512-2DGFck6h99kLNr8pOFk+z4Soq3iISydwOFeeEVPjTN6+Y01CmvbWmnN02VuTWyFdnRtIDPe+wy2q6Ui8snBPZg== @@ -8443,21 +8679,6 @@ react@^16.7.0: prop-types "^15.6.2" scheduler "^0.12.0" -reactstrap@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/reactstrap/-/reactstrap-7.1.0.tgz#fd7125901737a3001c8564c0f8b40e319eec23b2" - integrity sha512-wtc4RkgnGn1TsZ0AxOZ2OqT+b8YmCWZj/tErPujWLepxzlEEhveZGC+uDerdaHVSAzJUP2DTk605iper7hutQQ== - dependencies: - "@babel/runtime" "^7.2.0" - classnames "^2.2.3" - lodash.isfunction "^3.0.9" - lodash.isobject "^3.0.2" - lodash.tonumber "^4.0.3" - prop-types "^15.5.8" - react-lifecycles-compat "^3.0.4" - react-popper "^0.10.4" - react-transition-group "^2.3.1" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -8559,6 +8780,14 @@ recursive-readdir@2.2.2: dependencies: minimatch "3.0.4" +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + redux-logger@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/redux-logger/-/redux-logger-3.0.6.tgz#f7555966f3098f3c88604c449cf0baf5778274bf" @@ -8623,6 +8852,15 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +regexp-tree@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.1.tgz#27b455f9b138ca2e84c090e9aff1ffe2a04d97fa" + integrity sha512-HwRjOquc9QOwKTgbxvZTcddS5mlNlwePMQ3NFL8broajMLD5CXDAqas8Y5yxJH5QtZp5iRor3YCILd5pz71Cgw== + dependencies: + cli-table3 "^0.5.0" + colors "^1.1.2" + yargs "^12.0.5" + regexpp@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" @@ -8829,9 +9067,9 @@ resolve@1.8.1: path-parse "^1.0.5" resolve@^1.3.2, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.8.1: - version "1.9.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz#a14c6fdfa8f92a7df1d996cb7105fa744658ea06" - integrity sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ== + version "1.10.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba" + integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg== dependencies: path-parse "^1.0.6" @@ -8858,7 +9096,7 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@~2.6.2: +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@~2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== @@ -8892,10 +9130,10 @@ run-queue@^1.0.0, run-queue@^1.0.3: dependencies: aproba "^1.1.1" -rxjs@^6.1.0: - version "6.3.3" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" - integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== +rxjs@^6.1.0, rxjs@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.4.0.tgz#f3bb0fe7bda7fb69deac0c16f17b50b0b8790504" + integrity sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw== dependencies: tslib "^1.9.0" @@ -8932,6 +9170,16 @@ sane@^2.0.0: optionalDependencies: fsevents "^1.2.3" +sass-graph@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" + integrity sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k= + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^7.0.0" + sass-loader@7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" @@ -8949,10 +9197,10 @@ sax@^1.2.4, sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -saxes@^3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.4.tgz#4ad5c53eb085ac0570ea1071a07aaf22ad29cebd" - integrity sha512-GVZmLJnkS4Vl8Pe9o4nc5ALZ615VOVxCmea8Cs0l+8GZw3RQ5XGOSUomIUfuZuk4Todo44v4y+HY1EATkDDiZg== +saxes@^3.1.5: + version "3.1.6" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.6.tgz#2d948a47b54918516c5a64096f08865deb5bd8cd" + integrity sha512-LAYs+lChg1v5uKNzPtsgTxSS5hLo8aIhSMCJt1WMpefAxm3D1RTpMwSpb6ebdL31cubiLTnhokVktBW+cv9Y9w== dependencies: xmlchars "^1.3.1" @@ -8981,6 +9229,14 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" +scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" + integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" @@ -8993,31 +9249,16 @@ selfsigned@^1.9.1: dependencies: node-forge "0.7.5" -semantic-ui-css@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/semantic-ui-css/-/semantic-ui-css-2.4.1.tgz#f5aea39fafb787cbd905ec724272a3f9cba9004a" - integrity sha512-Pkp0p9oWOxlH0kODx7qFpIRYpK1T4WJOO4lNnpNPOoWKCrYsfHqYSKgk5fHfQtnWnsAKy7nLJMW02bgDWWFZFg== - dependencies: - jquery x.* - -semantic-ui-react@^0.84.0: - version "0.84.0" - resolved "https://registry.yarnpkg.com/semantic-ui-react/-/semantic-ui-react-0.84.0.tgz#43f908fd547b1e8b2b108675a93cd7d7460bcdbe" - integrity sha512-OOqdtH+hBxVlh/lQa+zet9MEPcA8cBUo7ePVYZhx82hwF5Ky47FiWrgLk3ZSNie7bb4VkuiuLR9y5cY0EooRlw== - dependencies: - "@babel/runtime" "^7.1.2" - "@semantic-ui-react/event-stack" "^3.0.1" - classnames "^2.2.6" - keyboard-key "^1.0.2" - lodash "^4.17.11" - prop-types "^15.6.2" - shallowequal "^1.1.0" - "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: version "5.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== +semver@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= + send@0.16.2: version "0.16.2" resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" @@ -9127,11 +9368,6 @@ shallow-clone@^1.0.0: kind-of "^5.0.0" mixin-object "^2.0.1" -shallowequal@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" - integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== - shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -9274,9 +9510,9 @@ source-map-support@^0.4.15: source-map "^0.5.6" source-map-support@^0.5.6, source-map-support@~0.5.6: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== + version "0.5.10" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.10.tgz#2214080bc9d51832511ee2bab96e3c2f9353120c" + integrity sha512-YfQ3tQFTK/yzlGJuX8pTwa4tifQj4QS2Mj7UegOu8jAz59MqIiMGPXxQhVQiIMNzayuUSF/jEuVnfFF5JqybmQ== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -9286,6 +9522,13 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= +source-map@^0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + integrity sha1-66T12pwNyZneaAMti092FzZSA2s= + dependencies: + amdefine ">=0.0.4" + source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -9358,9 +9601,9 @@ sprintf-js@~1.0.2: integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sshpk@^1.7.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.0.tgz#1d4963a2fbffe58050aa9084ca20be81741c07de" - integrity sha512-Zhev35/y7hRMcID/upReIvRse+I9SVhyVre/KTJSJQWMz3C3+G+HpO7m1wK/yckEtujKZ7dS4hkVxAnmHaIGVQ== + version "1.16.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -9414,15 +9657,22 @@ statuses@~1.4.0: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== +stdout-stream@^1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" + integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== + dependencies: + readable-stream "^2.0.1" + stealthy-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= + version "2.0.2" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== dependencies: inherits "~2.0.1" readable-stream "^2.0.2" @@ -9459,7 +9709,7 @@ string-length@^2.0.0: astral-regex "^1.0.0" strip-ansi "^4.0.0" -string-width@^1.0.1: +string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= @@ -9550,6 +9800,13 @@ strip-eof@^1.0.0: resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + dependencies: + get-stdin "^4.0.1" + strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -9618,6 +9875,13 @@ supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-co dependencies: has-flag "^3.0.0" +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + svgo@^1.0.0, svgo@^1.0.5: version "1.1.1" resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985" @@ -9665,6 +9929,15 @@ tapable@^1.0.0, tapable@^1.1.0: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.1.tgz#4d297923c5a72a42360de2ab52dadfaaec00018e" integrity sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA== +tar@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + integrity sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE= + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + tar@^4: version "4.4.8" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d" @@ -9811,7 +10084,16 @@ topo@2.x.x: dependencies: hoek "4.x.x" -tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0: +tough-cookie@>=2.3.3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.0.tgz#d2bceddebde633153ff20a52fa844a0dc71dacef" + integrity sha512-LHMvg+RBP/mAVNqVbOX8t+iJ+tqhBA/t49DuI7+IDAWHrASnesqSu1vWbKB7UrE2yk+HMFUBMadRGMkB4VCfog== + dependencies: + ip-regex "^3.0.0" + psl "^1.1.28" + punycode "^2.1.1" + +tough-cookie@^2.3.4, tough-cookie@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== @@ -9834,11 +10116,23 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= +"true-case-path@^1.0.2": + version "1.0.3" + resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" + integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== + dependencies: + glob "^7.1.2" + tryer@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" @@ -10073,10 +10367,10 @@ util@0.10.3: dependencies: inherits "2.0.1" -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== +util@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== dependencies: inherits "2.0.3" @@ -10349,12 +10643,17 @@ whatwg-url@^7.0.0: tr46 "^1.0.1" webidl-conversions "^4.0.2" +which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= + which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: +which@1, which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -10526,9 +10825,9 @@ wrappy@1: integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= write-file-atomic@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== + version "2.4.2" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.2.tgz#a7181706dfba17855d221140a9c06e15fcdd87b9" + integrity sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g== dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" @@ -10549,9 +10848,9 @@ ws@^5.2.0: async-limiter "~1.0.0" ws@^6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.2.tgz#3cc7462e98792f0ac679424148903ded3b9c3ad8" - integrity sha512-rfUqzvz0WxmSXtJpPMX2EeASXabOrSMk1ruMOV3JBTBjo4ac2lDjGGsbQSyxj8Odhw5fBib8ZKEjDNvgouNKYw== + version "6.1.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.3.tgz#d2d2e5f0e3c700ef2de89080ebc0ac6e1bf3a72d" + integrity sha512-tbSxiT+qJI223AP4iLfQbkbxkwdFcneYinM2+x46Gx2wgvbaOMO36czfdfVUBRTHvzAMRhDd98sA5d/BuWbQdg== dependencies: async-limiter "~1.0.0" @@ -10602,6 +10901,21 @@ yargs-parser@^10.1.0: dependencies: camelcase "^4.1.0" +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= + dependencies: + camelcase "^3.0.0" + yargs-parser@^9.0.2: version "9.0.2" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" @@ -10644,3 +10958,40 @@ yargs@^11.0.0: which-module "^2.0.0" y18n "^3.2.1" yargs-parser "^9.0.2" + +yargs@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== + dependencies: + cliui "^4.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" + get-caller-file "^1.0.1" + os-locale "^3.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1" + +yargs@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^5.0.0"