about summary refs log tree commit diff
path: root/.eslintrc.yml
diff options
context:
space:
mode:
authorKoala Yeung <koalay@gmail.com>2017-05-07 03:26:54 +0800
committerEugen Rochko <eugen@zeonfederated.com>2017-05-06 21:26:54 +0200
commit6f71cfeff9bfffb479ea2dd8feb4f357e81a0676 (patch)
tree2a698f1ff478b0fdafc95607f640f09a1ff578ce /.eslintrc.yml
parent59ca634b890f304275a8a36001e879fac929efee (diff)
Eslintrc fix (#2850)
* eslintrc: adapt changes in eslint-plugin-jsx-a11y

* Replace 'jsx-a11y/img-has-alt' with 'jsx-a11y/alt-text'.
  Reference: evcohen/eslint-plugin-jsx-a11y@24b6193

* Replace 'jsx-a11y/onclick-has-focus' with 'jsx-a11y/interactive-supports-focus'
  Reference: evcohen/eslint-plugin-jsx-a11y@cbdfeb8

* Replace 'jsx-a11y/onclick-has-role' with 'jsx-a11y/no-noninteractive-element-interactions'
  Reference: evcohen/eslint-plugin-jsx-a11y@18c9b71

* Update eslint-plugin-jsx-a11y to 5.0.0

Follow the change in Code Climate. Make sure the same eslintrc
can be executed locally and in Code Climate.

* Convert .eslintrc.json to equivlant .eslintrc.yml

* Less quotes and commas, more readability, allow comment.
Diffstat (limited to '.eslintrc.yml')
-rw-r--r--.eslintrc.yml80
1 files changed, 80 insertions, 0 deletions
diff --git a/.eslintrc.yml b/.eslintrc.yml
new file mode 100644
index 000000000..ac7c8a0c7
--- /dev/null
+++ b/.eslintrc.yml
@@ -0,0 +1,80 @@
+---
+env:
+  browser: true
+  node: false
+  es6: true
+
+parser: babel-eslint
+
+plugins:
+- react
+- jsx-a11y
+
+parserOptions:
+  sourceType: module
+  ecmaFeatures:
+    arrowFunctions: true
+    jsx: true
+    destructuring: true
+    modules: true
+    spread: true
+
+rules:
+
+  no-cond-assign: error
+  no-console: warn
+  no-irregular-whitespace: error
+  no-unreachable: error
+  valid-typeof: error
+  consistent-return: error
+  dot-notation: error
+  eqeqeq: error
+  no-fallthrough: error
+  no-unused-expressions: error
+  strict: off
+  no-catch-shadow: error
+  indent:
+  - warn
+  - 2
+  brace-style: warn
+  comma-spacing:
+  - warn
+  - before: false
+    after: true
+  comma-style:
+  - warn
+  - last
+  no-mixed-spaces-and-tabs: warn
+  no-nested-ternary: warn
+  no-trailing-spaces: warn
+
+  react/jsx-wrap-multilines: error
+  react/self-closing-comp: error
+  react/prop-types: error
+  react/no-multi-comp: off
+
+  jsx-a11y/accessible-emoji: warn
+  jsx-a11y/anchor-has-content: warn
+  jsx-a11y/alt-text: warn
+  jsx-a11y/aria-activedescendant-has-tabindex: warn
+  jsx-a11y/aria-props: warn
+  jsx-a11y/aria-proptypes: warn
+  jsx-a11y/aria-role: warn
+  jsx-a11y/aria-unsupported-elements: warn
+  jsx-a11y/heading-has-content: warn
+  jsx-a11y/href-no-hash: warn
+  jsx-a11y/html-has-lang: warn
+  jsx-a11y/iframe-has-title: warn
+  jsx-a11y/img-redundant-alt: warn
+  jsx-a11y/interactive-supports-focus: warn
+  jsx-a11y/label-has-for: warn
+  jsx-a11y/mouse-events-have-key-events: warn
+  jsx-a11y/no-access-key: warn
+  jsx-a11y/no-distracting-elements: warn
+  jsx-a11y/no-noninteractive-element-interactions: warn
+  jsx-a11y/no-onchange: warn
+  jsx-a11y/no-redundant-roles: warn
+  jsx-a11y/role-has-required-aria-props: warn
+  jsx-a11y/role-supports-aria-props: warn
+  jsx-a11y/scope: warn
+  jsx-a11y/tabindex-no-positive: warn