fuel-web/nailgun/.eslintrc

168 lines
4.0 KiB
Plaintext

---
plugins:
- react
ecmaFeatures:
arrowFunctions: true
classes: true
defaultParams: true
destructuring: true
jsx: true
objectLiteralComputedProperties: true
objectLiteralShorthandMethods: true
objectLiteralShorthandProperties: true
restParams: true
spread: true
superInFunctions: true
rules:
# possible errors
comma-dangle: 2
no-cond-assign: 2
no-console: 2
no-constant-condition: 2
no-debugger: 2
no-dupe-args: 2
no-dupe-keys: 2
no-duplicate-case: 2
no-empty-character-class: 2
no-ex-assign: 2
no-extra-boolean-cast: 2
no-extra-parens: 0
no-extra-semi: 2
no-func-assign: 2
no-inner-declarations: 2
no-invalid-regexp: 2
no-irregular-whitespace: 2
no-negated-in-lhs: 2
no-obj-calls: 2
no-regex-spaces: 2
no-sparse-arrays: 2
no-unexpected-multiline: 2
no-unreachable: 2
use-isnan: 2
valid-typeof: 2
# best practices
block-scoped-var: 2
complexity: 0
consistent-return: 0
dot-location: [2, property]
dot-notation: 2
no-alert: 2
no-caller: 2
no-else-return: 0
no-empty-label: 2
no-empty-pattern: 2
no-eq-null: 2
no-eval: 2
no-implied-eval: 2
no-extend-native: 2
no-extra-bind: 2
no-fallthrough: 2
no-floating-decimal: 2
no-lone-blocks: 2
no-loop-func: 2
no-multi-spaces: 2
no-native-reassign: 2
no-new-wrappers: 2
no-new-func: 2
no-new: 2
no-octal-escape: 2
no-octal: 2
no-param-reassign: 0
no-proto: 2
no-redeclare: 2
no-return-assign: 2
no-script-url: 0
no-self-compare: 2
no-sequences: 2
no-throw-literal: 2
no-unused-expressions: 2
no-useless-call: 2
no-with: 2
radix: 0
yoda: 2
# strict mode
strict: 2
# variables
no-delete-var: 2
no-shadow-restricted-names: 2
no-undef-init: 2
no-undef: 2
no-unused-vars: 2
no-use-before-define: 2
# stylistic issues
array-bracket-spacing: [2, never]
brace-style: [2, 1tbs, {allowSingleLine: true}]
camelcase: [2, {properties: never}]
comma-style: [2, last]
comma-spacing: [2, {before: false, after: true}]
computed-property-spacing: [2, never]
eol-last: 2
id-length: [0, {min: 2, exceptions: ['$', '_', 'e']}]
id-match: [2, '^([A-Za-z\d_$]+)$', {properties: true}]
key-spacing: [2, {beforeColon: false, afterColon: true}]
linebreak-style: [2, unix]
max-nested-callbacks: [0, 5]
new-cap: [2, {newIsCap: true, capIsNew: false}]
no-array-constructor: 2
no-new-object: 2
no-lonely-if: 2
no-spaced-func: 2
no-unneeded-ternary: 2
object-curly-spacing: 2
operator-linebreak: [0, after, {overrides: {':': null}}]
padded-blocks: [2, never]
quote-props: [2, as-needed]
quotes: [2, single, avoid-escape]
semi-spacing: [2, {before: false, after: true}]
semi: [0, always]
space-after-keywords: [2, always]
space-before-blocks: [2, always]
space-before-function-paren: [2, never]
space-before-keywords: [2, always]
space-in-parens: [2, never]
space-infix-ops: 2
space-return-throw-case: 2
space-unary-ops: [2, {words: true, nonwords: false}]
spaced-comment: [0, always]
# es6
arrow-parens: [2, always]
arrow-spacing: [2, {before: true, after: true}]
constructor-super: 2
#no-arrow-condition: 2
no-class-assign: 2
no-const-assign: 2
no-dupe-class-members: 2
no-this-before-super: 2
no-var: 0
object-shorthand: 0
prefer-arrow-callback: 0
prefer-const: 0
prefer-spread: 0
prefer-template: 0
# react
react/jsx-curly-spacing: [2, never]
react/jsx-no-duplicate-props: 2
react/jsx-no-undef: 2
react/jsx-quotes: [2, single, avoid-escape]
react/jsx-uses-react: 2
react/jsx-uses-vars: 2
react/no-unknown-property: 2
react/prop-types: 0
react/self-closing-comp: 0
react/sort-comp: 0
env:
browser: true
node: true
mocha: true
amd: true
globals:
app: false
assert: false
sinon: false