commit be660f6d5a413078a83bdd2ce8f946b2dfef0147
parent 6606f1a247b163531793c28115adadf6e4bd2408
Author: Vladimir Kutepov <frenzzy.man@gmail.com>
Date: Fri, 9 Sep 2016 21:02:23 +0400
Clean up eslint rules and update airbnb config (#842)
Diffstat:
7 files changed, 25 insertions(+), 29 deletions(-)
diff --git a/docs/recipes/how-to-integrate-disqus.md b/docs/recipes/how-to-integrate-disqus.md
@@ -47,12 +47,10 @@ class DisqusThread {
let { id, title, path, ...other} = this.props;
if (process.env.BROWSER) {
- /* eslint-disable camelcase */
window.disqus_shortname = SHORTNAME;
window.disqus_identifier = id;
window.disqus_title = title;
window.disqus_url = WEBSITE_URL + path;
- /* eslint-enable camelcase */
}
return <div {...other} id="disqus_thread" />;
diff --git a/package.json b/package.json
@@ -7,7 +7,7 @@
"dependencies": {
"babel-polyfill": "6.13.0",
"babel-runtime": "6.11.6",
- "bluebird": "3.4.5",
+ "bluebird": "3.4.6",
"body-parser": "1.15.2",
"classnames": "2.2.5",
"cookie-parser": "1.4.3",
@@ -15,7 +15,7 @@
"eventemitter3": "1.2.0",
"express": "4.14.0",
"express-graphql": "0.5.4",
- "express-jwt": "3.4.0",
+ "express-jwt": "5.0.0",
"fastclick": "1.0.6",
"fbjs": "0.8.4",
"front-matter": "2.1.0",
@@ -32,7 +32,7 @@
"pretty-error": "2.0.0",
"react": "15.3.1",
"react-dom": "15.3.1",
- "sequelize": "3.24.1",
+ "sequelize": "3.24.2",
"source-map-support": "0.4.2",
"sqlite3": "3.1.4",
"universal-router": "1.2.2",
@@ -60,11 +60,11 @@
"babel-types": "^6.15.0",
"browser-sync": "^2.14.3",
"chai": "^3.5.0",
- "css-loader": "^0.24.0",
+ "css-loader": "^0.25.0",
"del": "^2.2.2",
"enzyme": "^2.4.1",
"eslint": "^3.4.0",
- "eslint-config-airbnb": "^10.0.1",
+ "eslint-config-airbnb": "^11.0.0",
"eslint-loader": "^1.5.0",
"eslint-plugin-import": "^1.14.0",
"eslint-plugin-jsx-a11y": "^2.2.1",
@@ -80,7 +80,7 @@
"ncp": "^2.0.0",
"pixrem": "^3.0.2",
"pleeease-filters": "^3.0.0",
- "postcss": "^5.1.2",
+ "postcss": "^5.2.0",
"postcss-calc": "^5.3.1",
"postcss-color-function": "^2.0.1",
"postcss-custom-media": "^5.0.1",
@@ -88,11 +88,11 @@
"postcss-custom-selectors": "^3.0.0",
"postcss-flexbugs-fixes": "^2.0.0",
"postcss-import": "^8.1.2",
- "postcss-loader": "^0.11.1",
+ "postcss-loader": "^0.13.0",
"postcss-media-minmax": "^2.1.2",
"postcss-nesting": "^2.3.1",
"postcss-pseudoelements": "^3.0.0",
- "postcss-selector-matches": "^2.0.3",
+ "postcss-selector-matches": "^2.0.4",
"postcss-selector-not": "^2.0.0",
"raw-loader": "^0.5.1",
"react-addons-test-utils": "15.3.1",
@@ -131,16 +131,13 @@
"browser": true
},
"rules": {
- "generator-star-spacing": 0,
- "import/no-extraneous-dependencies": 0,
- "jsx-quotes": [
- 2,
- "prefer-double"
- ],
- "no-confusing-arrow": 0,
- "react/jsx-filename-extension": 0,
- "react/jsx-quotes": 0,
- "react/require-extension": 0
+ "generator-star-spacing": "off",
+ "import/no-extraneous-dependencies": "off",
+ "react/forbid-prop-types": "off",
+ "react/jsx-filename-extension": "off",
+ "react/no-danger": "off",
+ "react/no-unused-prop-types": "off",
+ "react/require-extension": "off"
}
},
"stylelint": {
diff --git a/src/client.js b/src/client.js
@@ -121,7 +121,7 @@ function run() {
query: location.query,
state: location.state,
context,
- render: render.bind(undefined, container, location), // eslint-disable-line react/jsx-no-bind, max-len
+ render: render.bind(undefined, container, location),
}).catch(err => console.error(err)); // eslint-disable-line no-console
}
diff --git a/src/components/Link/Link.js b/src/components/Link/Link.js
@@ -18,10 +18,11 @@ function isModifiedEvent(event) {
return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
}
-class Link extends Component { // eslint-disable-line react/prefer-stateless-function
+class Link extends Component {
static propTypes = {
to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,
+ children: PropTypes.node,
onClick: PropTypes.func,
};
@@ -55,8 +56,8 @@ class Link extends Component { // eslint-disable-line react/prefer-stateless-fun
};
render() {
- const { to, ...props } = this.props; // eslint-disable-line no-use-before-define
- return <a href={history.createHref(to)} {...props} onClick={this.handleClick} />;
+ const { to, children, ...props } = this.props;
+ return <a href={history.createHref(to)} {...props} onClick={this.handleClick}>{children}</a>;
}
}
diff --git a/src/components/withViewport.js b/src/components/withViewport.js
@@ -7,7 +7,7 @@
* LICENSE.txt file in the root directory of this source tree.
*/
-import React, { Component } from 'react'; // eslint-disable-line no-unused-vars
+import React, { Component } from 'react';
import EventEmitter from 'eventemitter3';
import { canUseDOM } from 'fbjs/lib/ExecutionEnvironment';
@@ -57,7 +57,7 @@ function withViewport(ComposedComponent) {
}
handleResize(value) {
- this.setState({ viewport: value }); // eslint-disable-line react/no-set-state
+ this.setState({ viewport: value });
}
};
diff --git a/tools/copy.js b/tools/copy.js
@@ -35,7 +35,7 @@ async function copy({ watch } = {}) {
if (watch) {
const watcher = await new Promise((resolve, reject) => {
- gaze('src/content/**/*.*', (err, val) => err ? reject(err) : resolve(val));
+ gaze('src/content/**/*.*', (err, val) => (err ? reject(err) : resolve(val)));
});
const cp = async (file) => {
diff --git a/tools/lib/fs.js b/tools/lib/fs.js
@@ -11,11 +11,11 @@ import fs from 'fs';
import mkdirp from 'mkdirp';
const writeFile = (file, contents) => new Promise((resolve, reject) => {
- fs.writeFile(file, contents, 'utf8', err => err ? reject(err) : resolve());
+ fs.writeFile(file, contents, 'utf8', err => (err ? reject(err) : resolve()));
});
const makeDir = (name) => new Promise((resolve, reject) => {
- mkdirp(name, err => err ? reject(err) : resolve());
+ mkdirp(name, err => (err ? reject(err) : resolve()));
});
export default { writeFile, makeDir };