Fix all eslint issues

This commit is contained in:
LordMathis 2019-02-16 21:37:41 +01:00
parent 14b8d32927
commit e265d0d16e
18 changed files with 224 additions and 137 deletions

View File

@ -6,6 +6,7 @@
"plugins":[ "plugins":[
"@babel/plugin-proposal-object-rest-spread", "@babel/plugin-proposal-object-rest-spread",
"@babel/plugin-transform-runtime", "@babel/plugin-transform-runtime",
"@babel/plugin-transform-template-literals" "@babel/plugin-transform-template-literals",
"@babel/plugin-proposal-class-properties"
] ]
} }

View File

@ -4,19 +4,17 @@
"es6": true, "es6": true,
"node": true "node": true
}, },
"extends": "standard", "extends": [
"standard",
"plugin:react/recommended"
],
"globals": { "globals": {
"Atomics": "readonly", "Atomics": "readonly",
"SharedArrayBuffer": "readonly" "SharedArrayBuffer": "readonly"
}, },
"parserOptions": { "parser": "babel-eslint",
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": [ "plugins": [
"babel",
"react" "react"
], ],
"rules": { "rules": {

View File

@ -21,18 +21,22 @@
"markdown-it": "^8.4.0", "markdown-it": "^8.4.0",
"moment": "^2.19.1", "moment": "^2.19.1",
"node-sass": "^4.9.0", "node-sass": "^4.9.0",
"prop-types": "^15.7.2",
"react": "^16.7.0", "react": "^16.7.0",
"react-dom": "^16.7.0", "react-dom": "^16.7.0",
"react-router-dom": "^4.1.1" "react-router-dom": "^4.1.1",
"serialize-javascript": "^1.6.1"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.2.2", "@babel/core": "^7.2.2",
"@babel/plugin-proposal-class-properties": "^7.3.3",
"@babel/plugin-proposal-object-rest-spread": "^7.2.0", "@babel/plugin-proposal-object-rest-spread": "^7.2.0",
"@babel/plugin-transform-runtime": "^7.2.0", "@babel/plugin-transform-runtime": "^7.2.0",
"@babel/plugin-transform-template-literals": "^7.2.0", "@babel/plugin-transform-template-literals": "^7.2.0",
"@babel/preset-env": "^7.2.3", "@babel/preset-env": "^7.2.3",
"@babel/preset-react": "^7.0.0", "@babel/preset-react": "^7.0.0",
"@babel/runtime": "^7.2.0", "@babel/runtime": "^7.2.0",
"babel-eslint": "^10.0.1",
"babel-loader": "^8.0.5", "babel-loader": "^8.0.5",
"clean-webpack-plugin": "^0.1.19", "clean-webpack-plugin": "^0.1.19",
"compression-webpack-plugin": "^1.1.11", "compression-webpack-plugin": "^1.1.11",
@ -40,6 +44,7 @@
"css-modules-require-hook": "^4.2.3", "css-modules-require-hook": "^4.2.3",
"eslint": "^5.14.0", "eslint": "^5.14.0",
"eslint-config-standard": "^12.0.0", "eslint-config-standard": "^12.0.0",
"eslint-plugin-babel": "^5.3.0",
"eslint-plugin-import": "^2.16.0", "eslint-plugin-import": "^2.16.0",
"eslint-plugin-node": "^8.0.1", "eslint-plugin-node": "^8.0.1",
"eslint-plugin-promise": "^4.0.1", "eslint-plugin-promise": "^4.0.1",

View File

@ -1,11 +1,11 @@
import React from 'react'; import React from 'react'
import {hydrate} from 'react-dom'; import { hydrate } from 'react-dom'
import {BrowserRouter as Router} from 'react-router-dom'; import { BrowserRouter as Router } from 'react-router-dom'
import {App} from './components'; import { App } from './components'
hydrate( hydrate(
<Router> <Router>
<App data={window.__INITIAL_DATA__}/> <App data={window.__INITIAL_DATA__}/>
</Router>, </Router>,
document.getElementById('root') document.getElementById('root')
); )

View File

@ -1,10 +1,14 @@
import React, {Component} from 'react'; import PropTypes from 'prop-types'
import {Spinner, Header} from '.'; import React, { Component } from 'react'
import '../static/stylesheets/globals.scss'; import { Spinner, Header } from '.'
import styles from './About.scss'; import '../static/stylesheets/globals.scss'
import contentStyle from '../static/stylesheets/content.scss'; import contentStyle from '../static/stylesheets/content.scss'
export default class About extends Component { export default class About extends Component {
static propTypes = {
isLoading: PropTypes.bool.isRequired,
about: PropTypes.object.isRequired
}
render () { render () {
if (this.props.isLoading) { if (this.props.isLoading) {
@ -12,13 +16,13 @@ export default class About extends Component {
<div className={contentStyle.contentWrapper} id="about"> <div className={contentStyle.contentWrapper} id="about">
<Spinner/> <Spinner/>
</div> </div>
); )
} }
return ( return (
<div className={contentStyle.contentWrapper} id="about"> <div className={contentStyle.contentWrapper} id="about">
<Header header={"About Me"} /> <Header header={'About Me'} />
<div className={contentStyle.content} dangerouslySetInnerHTML={{__html: this.props.about.body}}> <div className={contentStyle.content} dangerouslySetInnerHTML={{ __html: this.props.about.body }}>
</div> </div>
</div> </div>
) )

View File

@ -1,14 +1,14 @@
import { NotFoundWrapper } from '.' import { NotFoundWrapper } from '.'
import React, { Component } from 'react' import React, { Component } from 'react'
import routes from '../utils/routes' import routes from '../utils/routes'
import { Route, Link, Redirect, Switch } from 'react-router-dom' import { Route, Switch } from 'react-router-dom'
export default class App extends Component { export default class App extends Component {
render() { render () {
return ( return (
<div> <div>
<Switch> <Switch>
{routes.map(({ path, exact, component: C, ...rest }) => ( {routes.map(({ path, exact, component: C, ...rest }) => (
<Route <Route
key={path} key={path}
path={path} path={path}

View File

@ -1,18 +1,23 @@
import React, {Component} from 'react'; import PropTypes from 'prop-types'
import {Spinner, Header} from '.'; import React, { Component } from 'react'
import '../static/stylesheets/globals.scss'; import { Spinner, Header } from '.'
import styles from './Blog.scss'; import '../static/stylesheets/globals.scss'
import contentStyle from '../static/stylesheets/content.scss'; import styles from './Blog.scss'
import contentStyle from '../static/stylesheets/content.scss'
export default class Blog extends Component { export default class Blog extends Component {
static propTypes = {
isLoading: PropTypes.bool.isRequired,
posts: PropTypes.arrayOf(PropTypes.object).isRequired
}
render() { render () {
if (this.props.isLoading) { if (this.props.isLoading) {
return ( return (
<div className={contentStyle.contentWrapper} id="blog"> <div className={contentStyle.contentWrapper} id="blog">
<Spinner/> <Spinner/>
</div> </div>
); )
} }
let posts = this.props.posts.map((post) => let posts = this.props.posts.map((post) =>
@ -28,7 +33,7 @@ export default class Blog extends Component {
return ( return (
<div className={contentStyle.contentWrapper} id="blog"> <div className={contentStyle.contentWrapper} id="blog">
<Header header={"Blog"} /> <Header header={'Blog'} />
<div className={contentStyle.content}> <div className={contentStyle.content}>
<table> <table>
@ -39,6 +44,6 @@ export default class Blog extends Component {
</div> </div>
</div> </div>
); )
} }
}; };

View File

@ -1,14 +1,13 @@
import React, { Component } from 'react'; import React, { Component } from 'react'
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom'
import config from '../../config.json'; import config from '../../config.json'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import styles from './Home.scss'; import styles from './Home.scss'
export default class Home extends Component { export default class Home extends Component {
render () {
render() { let key = 0
let key = 0; const objKeys = Object.keys(config.social)
const objKeys = Object.keys(config.social);
const socialLinks = objKeys.map((val) => { const socialLinks = objKeys.map((val) => {
const link = ( const link = (
@ -16,17 +15,17 @@ export default class Home extends Component {
<i className={`fa fa-${val} fa-3x`} aria-hidden="true" /> <i className={`fa fa-${val} fa-3x`} aria-hidden="true" />
<span className="sr-only">{val}</span> <span className="sr-only">{val}</span>
</a> </a>
); )
key += 1; key += 1
return link; return link
}); })
socialLinks.push( socialLinks.push(
<a key={key} href={`mailto:${config.email}`}> <a key={key} href={`mailto:${config.email}`}>
<i className="fa fa-envelope-o fa-3x" aria-hidden="true" /> <i className="fa fa-envelope-o fa-3x" aria-hidden="true" />
<span className="sr-only">e-mail</span> <span className="sr-only">e-mail</span>
</a>, </a>
); )
return ( return (
<div id={styles.coverPage} className={styles.coverPageFull}> <div id={styles.coverPage} className={styles.coverPageFull}>
@ -53,6 +52,6 @@ export default class Home extends Component {
</div> </div>
</div> </div>
</div> </div>
); )
} }
} }

View File

@ -1,14 +1,12 @@
import React, {Component} from 'react'; import React, { Component } from 'react'
import config from '../../config.json'; import config from '../../config.json'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import styles from './Navbar.scss'; import styles from './Navbar.scss'
export default class Navbar extends Component { export default class Navbar extends Component {
render () { render () {
let key = 0
let key = 0; const objKeys = Object.keys(config.social)
const objKeys = Object.keys(config.social);
const socialLinks = objKeys.map((val) => { const socialLinks = objKeys.map((val) => {
const link = ( const link = (
@ -16,17 +14,18 @@ export default class Navbar extends Component {
<i className={`fa fa-${val}`} aria-hidden="true" /> <i className={`fa fa-${val}`} aria-hidden="true" />
<span className="sr-only">{val}</span> <span className="sr-only">{val}</span>
</a> </a>
); )
key += 1;
return link; key += 1
}); return link
})
socialLinks.push( socialLinks.push(
<a key={key} href={`mailto:${config.email}`}> <a key={key} href={`mailto:${config.email}`}>
<i className="fa fa-envelope-o" aria-hidden="true" /> <i className="fa fa-envelope-o" aria-hidden="true" />
<span className="sr-only">e-mail</span> <span className="sr-only">e-mail</span>
</a>, </a>
); )
return ( return (
<div className={styles.navbar}> <div className={styles.navbar}>

View File

@ -1,21 +1,21 @@
import React from 'react'; import React from 'react'
import {Navbar, Header} from '.'; import { Navbar, Header } from '.'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import contentStyle from '../static/stylesheets/content.scss'; import contentStyle from '../static/stylesheets/content.scss'
export const NotFoundPage = (props) => { export const NotFoundPage = (props) => {
return ( return (
<div> <div>
<Navbar /> <Navbar />
<div className={contentStyle.contentWrapper}> <div className={contentStyle.contentWrapper}>
<Header header={"Uhm... WHAT?"} /> <Header header={'Uhm... WHAT?'} />
<div className={contentStyle.content}> <div className={contentStyle.content}>
<p>Looks like you&apos;re lost</p> <p>Looks like you&apos;re lost</p>
<p>404 Page not found</p> <p>404 Page not found</p>
</div> </div>
</div> </div>
</div> </div>
); )
}; }
export default NotFoundPage; export default NotFoundPage

View File

@ -1,10 +1,8 @@
import React, {Component} from 'react'; import React, { Component } from 'react'
import {Wrapper, NotFoundPage} from '.'; import { Wrapper, NotFoundPage } from '.'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import styles from './Wrapper.scss';
export default class NotFoundWrapper extends Component { export default class NotFoundWrapper extends Component {
render () { render () {
return ( return (
<Wrapper> <Wrapper>

View File

@ -1,9 +1,9 @@
import React, {Component} from 'react'; import React, { Component } from 'react'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import styles from './Spinner.scss'; import styles from './Spinner.scss'
export default class Spinner extends Component { export default class Spinner extends Component {
render() { render () {
return ( return (
<div className={styles.spinnerWrapper}> <div className={styles.spinnerWrapper}>
<div className={styles.ldsEllipsis}> <div className={styles.ldsEllipsis}>

View File

@ -1,9 +1,15 @@
import React, {Component} from 'react'; import PropTypes from 'prop-types'
import {Spinner, Header} from '.'; import React, { Component } from 'react'
import '../static/stylesheets/globals.scss'; import '../static/stylesheets/globals.scss'
import styles from './Wrapper.scss'; import styles from './Wrapper.scss'
export default class Wrapper extends Component { export default class Wrapper extends Component {
static propTypes = {
children: PropTypes.oneOfType([
PropTypes.arrayOf(PropTypes.node),
PropTypes.node
]).isRequired
}
render () { render () {
return ( return (

View File

@ -1,11 +1,11 @@
export { default as Home } from './Home'; export { default as Home } from './Home'
export { default as Blog } from './Blog'; export { default as Blog } from './Blog'
export { default as About } from './About'; export { default as About } from './About'
export { default as Post } from './Post'; export { default as Post } from './Post'
export { default as NotFoundPage } from './NotFoundPage'; export { default as NotFoundPage } from './NotFoundPage'
export { default as NotFoundWrapper } from './NotFoundWrapper'; export { default as NotFoundWrapper } from './NotFoundWrapper'
export { default as Spinner } from './Spinner'; export { default as Spinner } from './Spinner'
export { default as Header } from './Header'; export { default as Header } from './Header'
export { default as Wrapper } from './Wrapper'; export { default as Wrapper } from './Wrapper'
export { default as Navbar } from './Navbar'; export { default as Navbar } from './Navbar'
export { default as App } from './App'; export { default as App } from './App'

View File

@ -1,20 +1,24 @@
import React, {Component} from 'react'; import React, { Component } from 'react'
import {About, Blog, Home, Wrapper} from '../components'; import PropTypes from 'prop-types'
import { About, Blog, Home, Wrapper } from '../components'
export default class MainContainer extends Component { export default class MainContainer extends Component {
static propTypes = {
data: PropTypes.object.isRequired
}
constructor() { constructor () {
super(); super()
this.state = { this.state = {
isLoadingBlog: true, isLoadingBlog: true,
isLoadingAbout: true, isLoadingAbout: true
} }
console.log(this.props.data); console.log(this.props.data)
} }
render() { render () {
return ( return (
<div> <div>
<Home/> <Home/>

View File

@ -1,20 +1,24 @@
import React, {Component} from 'react'; import React, { Component } from 'react'
import {Post, Wrapper, NotFoundPage} from '../components'; import PropTypes from 'prop-types'
import { Post, Wrapper, NotFoundPage } from '../components'
export default class PostContainer extends Component { export default class PostContainer extends Component {
constructor() { static propTypes = {
super(); data: PropTypes.object.isRequired
}
constructor () {
super()
this.state = { this.state = {
isLoading: true, isLoading: true,
error: false, error: false
}; }
console.log(this.props.data); console.log(this.props.data)
} }
render() { render () {
if (this.state.error) { if (this.state.error) {
return ( return (
<NotFoundPage /> <NotFoundPage />
@ -24,8 +28,8 @@ export default class PostContainer extends Component {
return ( return (
<Wrapper> <Wrapper>
<Post isLoading={this.state.isLoading} <Post isLoading={this.state.isLoading}
post={this.state.post} /> post={this.state.post} />
</Wrapper> </Wrapper>
); )
} }
} }

View File

@ -1,37 +1,34 @@
//import 'babel-polyfill' // import 'babel-polyfill'
import React from 'react' import React from 'react'
import { renderToString } from 'react-dom/server' import { renderToString } from 'react-dom/server'
import { StaticRouter as Router, matchPath } from 'react-router-dom' import { StaticRouter as Router, matchPath } from 'react-router-dom'
import { App } from '../components' import { App } from '../components'
import routes from './routes' import routes from './routes'
import serialize from 'serialize-javascript'
export function serverRender(req, res, next) { export function serverRender (req, res, next) {
const activeRoute = routes.find((route) => matchPath(req.url, route)) || {} const activeRoute = routes.find((route) => matchPath(req.url, route)) || {}
const promise = activeRoute.getData const promise = activeRoute.getData
? activeRoute.getData(req.path) ? activeRoute.getData(req.path)
: Promise.resolve() : Promise.resolve()
promise.then((data) => { promise.then((data) => {
console.log(data)
console.log(data);
const markup = renderToString( const markup = renderToString(
<Router location={req.url} context={{}}> <Router location={req.url} context={{}}>
<App data={data}/> <App data={data}/>
</Router>, </Router>
); )
res.status(200).send(renderFullPage(markup, data));
res.status(200).send(renderFullPage(markup, data))
}).catch(next) }).catch(next)
} }
function renderFullPage(html, data) { function renderFullPage (html, data) {
return ` return `
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>Matúš Námešný</title> <title>Matúš Námešný</title>

View File

@ -72,6 +72,17 @@
"@babel/traverse" "^7.1.0" "@babel/traverse" "^7.1.0"
"@babel/types" "^7.0.0" "@babel/types" "^7.0.0"
"@babel/helper-create-class-features-plugin@^7.3.0":
version "7.3.2"
resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.3.2.tgz#ba1685603eb1c9f2f51c9106d5180135c163fe73"
integrity sha512-tdW8+V8ceh2US4GsYdNVNoohq5uVwOf9k6krjwW4E1lINcHgttnWcNqgdoessn12dAy8QkbezlbQh2nXISNY+A==
dependencies:
"@babel/helper-function-name" "^7.1.0"
"@babel/helper-member-expression-to-functions" "^7.0.0"
"@babel/helper-optimise-call-expression" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/helper-replace-supers" "^7.2.3"
"@babel/helper-define-map@^7.1.0": "@babel/helper-define-map@^7.1.0":
version "7.1.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c"
@ -168,7 +179,7 @@
"@babel/traverse" "^7.1.0" "@babel/traverse" "^7.1.0"
"@babel/types" "^7.0.0" "@babel/types" "^7.0.0"
"@babel/helper-replace-supers@^7.1.0": "@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.2.3":
version "7.2.3" version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz#19970020cf22677d62b3a689561dbd9644d8c5e5" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz#19970020cf22677d62b3a689561dbd9644d8c5e5"
integrity sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA== integrity sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA==
@ -221,6 +232,11 @@
esutils "^2.0.2" esutils "^2.0.2"
js-tokens "^4.0.0" js-tokens "^4.0.0"
"@babel/parser@^7.0.0":
version "7.3.3"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.3.3.tgz#092d450db02bdb6ccb1ca8ffd47d8774a91aef87"
integrity sha512-xsH1CJoln2r74hR+y7cg2B5JCPaTh+Hd+EbBRk9nWGSNspuo6krjhX0Om6RnRQuIvFq8wVXCLKH3kwKDYhanSg==
"@babel/parser@^7.2.2", "@babel/parser@^7.2.3": "@babel/parser@^7.2.2", "@babel/parser@^7.2.3":
version "7.2.3" version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489"
@ -235,6 +251,14 @@
"@babel/helper-remap-async-to-generator" "^7.1.0" "@babel/helper-remap-async-to-generator" "^7.1.0"
"@babel/plugin-syntax-async-generators" "^7.2.0" "@babel/plugin-syntax-async-generators" "^7.2.0"
"@babel/plugin-proposal-class-properties@^7.3.3":
version "7.3.3"
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.3.3.tgz#e69ee114a834a671293ace001708cc1682ed63f9"
integrity sha512-XO9eeU1/UwGPM8L+TjnQCykuVcXqaO5J1bkRPIygqZ/A2L1xVMJ9aZXrY31c0U4H2/LHKL4lbFQLsxktSrc/Ng==
dependencies:
"@babel/helper-create-class-features-plugin" "^7.3.0"
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-proposal-json-strings@^7.2.0": "@babel/plugin-proposal-json-strings@^7.2.0":
version "7.2.0" version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317"
@ -634,7 +658,7 @@
"@babel/parser" "^7.2.2" "@babel/parser" "^7.2.2"
"@babel/types" "^7.2.2" "@babel/types" "^7.2.2"
"@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.2", "@babel/traverse@^7.2.3": "@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.2", "@babel/traverse@^7.2.3":
version "7.2.3" version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8"
integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw== integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==
@ -1001,6 +1025,18 @@ babel-core@^6.26.0:
slash "^1.0.0" slash "^1.0.0"
source-map "^0.5.7" source-map "^0.5.7"
babel-eslint@^10.0.1:
version "10.0.1"
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed"
integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ==
dependencies:
"@babel/code-frame" "^7.0.0"
"@babel/parser" "^7.0.0"
"@babel/traverse" "^7.0.0"
"@babel/types" "^7.0.0"
eslint-scope "3.7.1"
eslint-visitor-keys "^1.0.0"
babel-generator@^6.26.0: babel-generator@^6.26.0:
version "6.26.1" version "6.26.1"
resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
@ -2834,6 +2870,13 @@ eslint-module-utils@^2.3.0:
debug "^2.6.8" debug "^2.6.8"
pkg-dir "^2.0.0" pkg-dir "^2.0.0"
eslint-plugin-babel@^5.3.0:
version "5.3.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-5.3.0.tgz#2e7f251ccc249326da760c1a4c948a91c32d0023"
integrity sha512-HPuNzSPE75O+SnxHIafbW5QB45r2w78fxqwK3HmjqIUoPfPzVrq6rD+CINU3yzoDSzEhUkX07VUphbF73Lth/w==
dependencies:
eslint-rule-composer "^0.3.0"
eslint-plugin-es@^1.3.1: eslint-plugin-es@^1.3.1:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6"
@ -2893,7 +2936,12 @@ eslint-plugin-standard@^4.0.0:
resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz#f845b45109c99cd90e77796940a344546c8f6b5c" resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz#f845b45109c99cd90e77796940a344546c8f6b5c"
integrity sha512-OwxJkR6TQiYMmt1EsNRMe5qG3GsbjlcOhbGUBY4LtavF9DsLaTcoR+j2Tdjqi23oUwKNUqX7qcn5fPStafMdlA== integrity sha512-OwxJkR6TQiYMmt1EsNRMe5qG3GsbjlcOhbGUBY4LtavF9DsLaTcoR+j2Tdjqi23oUwKNUqX7qcn5fPStafMdlA==
eslint-scope@^3.7.1: eslint-rule-composer@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9"
integrity sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==
eslint-scope@3.7.1, eslint-scope@^3.7.1:
version "3.7.1" version "3.7.1"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
dependencies: dependencies:
@ -4838,7 +4886,7 @@ loglevelnext@^1.0.1:
es6-symbol "^3.1.1" es6-symbol "^3.1.1"
object.assign "^4.1.0" object.assign "^4.1.0"
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
@ -6204,6 +6252,15 @@ prop-types@^15.6.2:
loose-envify "^1.3.1" loose-envify "^1.3.1"
object-assign "^4.1.1" object-assign "^4.1.1"
prop-types@^15.7.2:
version "15.7.2"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
dependencies:
loose-envify "^1.4.0"
object-assign "^4.1.1"
react-is "^16.8.1"
proxy-addr@~2.0.3: proxy-addr@~2.0.3:
version "2.0.3" version "2.0.3"
resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341"
@ -6347,6 +6404,11 @@ react-dom@^16.7.0:
prop-types "^15.6.2" prop-types "^15.6.2"
scheduler "^0.12.0" scheduler "^0.12.0"
react-is@^16.8.1:
version "16.8.2"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.2.tgz#09891d324cad1cb0c1f2d91f70a71a4bee34df0f"
integrity sha512-D+NxhSR2HUCjYky1q1DwpNUD44cDpUXzSmmFyC3ug1bClcU/iDNy0YNn1iwme28fn+NFhpA13IndOd42CrFb+Q==
react-router-dom@^4.1.1: react-router-dom@^4.1.1:
version "4.2.2" version "4.2.2"
resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.2.2.tgz#c8a81df3adc58bba8a76782e946cbd4eae649b8d" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.2.2.tgz#c8a81df3adc58bba8a76782e946cbd4eae649b8d"
@ -6939,6 +7001,11 @@ serialize-javascript@^1.4.0:
version "1.5.0" version "1.5.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe"
serialize-javascript@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.6.1.tgz#4d1f697ec49429a847ca6f442a2a755126c4d879"
integrity sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw==
serve-static@1.13.2: serve-static@1.13.2:
version "1.13.2" version "1.13.2"
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1"