UNPKG

@kfed/eslint-plugin-i18n

Version:

Plugin for eslint, that should reduce (for me) monkey job on implementing i18n for Contentmart

231 lines (230 loc) 5.56 kB
module.exports = { env: { es6: true, node: true }, parserOptions: { ecmaVersion: 6, ecmaFeatures: { jsx: true } }, rules: { // Possible Errors 'comma-dangle': [ 2, 'never' ], 'computed-property-spacing': [ 2, 'never' ], 'no-cond-assign': 2, 'no-console': 2, 'no-constant-condition': 2, 'no-control-regex': 2, 'no-debugger': 2, 'no-dupe-keys': 2, 'no-empty': 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-reserved-keys': 0, 'no-sparse-arrays': 2, 'no-unreachable': 2, 'use-isnan': 2, 'valid-jsdoc': 0, 'valid-typeof': 2, // Best Practices 'block-scoped-var': 2, complexity: 0, 'consistent-return': 2, curly: 2, 'default-case': 2, 'dot-notation': 2, eqeqeq: 2, 'guard-for-in': 2, 'no-alert': 2, 'no-caller': 2, 'no-confusing-arrow': 2, 'no-div-regex': 2, 'no-else-return': 2, 'no-eq-null': 2, 'no-eval': 2, 'no-extend-native': 2, 'no-extra-bind': 2, 'no-fallthrough': 2, 'no-floating-decimal': 2, 'no-implied-eval': 2, 'no-iterator': 2, 'no-labels': 2, 'no-lone-blocks': 2, 'no-loop-func': 2, 'no-multi-spaces': 2, 'no-multi-str': 2, 'no-native-reassign': 2, 'no-new': 2, 'no-new-func': 2, 'no-new-wrappers': 2, 'no-octal': 2, 'no-octal-escape': 2, 'no-process-env': 2, 'no-proto': 2, 'no-redeclare': 2, 'no-return-assign': 2, 'no-script-url': 2, 'no-self-compare': 2, 'no-sequences': 2, 'no-unused-expressions': 2, 'no-void': 0, 'no-warning-comments': 2, 'no-with': 2, 'prefer-arrow-callback': 2, radix: 2, 'vars-on-top': 0, 'wrap-iife': 2, yoda: 2, // Variables 'prefer-const': 2, 'no-catch-shadow': 2, 'no-const-assign': 2, 'no-delete-var': 2, 'no-label-var': 2, 'no-shadow': 2, 'no-shadow-restricted-names': 2, 'no-undef': 2, 'no-undef-init': 2, 'no-undefined': 2, 'no-unused-vars': 2, 'no-use-before-define': 2, 'no-var': 2, // Stylistic Issues indent: [ 'error', 4, { SwitchCase: 1 } ], 'arrow-body-style': [ 2, 'as-needed' ], 'arrow-parens': [ 2, 'as-needed' ], 'arrow-spacing': 2, 'brace-style': 2, camelcase: 0, 'comma-spacing': 2, 'comma-style': 2, 'consistent-this': 0, 'eol-last': 2, 'func-names': 0, 'func-style': 0, 'key-spacing': [ 2, { beforeColon: false, afterColon: true } ], 'max-nested-callbacks': 0, 'new-cap': 2, 'new-parens': 2, 'no-array-constructor': 2, 'no-inline-comments': 0, 'no-lonely-if': 2, 'no-mixed-spaces-and-tabs': 2, 'no-nested-ternary': 2, 'no-new-object': 2, 'semi-spacing': [ 2, { before: false, after: true } ], 'no-spaced-func': 2, 'no-ternary': 0, 'no-trailing-spaces': 2, 'no-multiple-empty-lines': 2, 'no-underscore-dangle': 0, 'one-var': 0, 'operator-assignment': [ 2, 'always' ], 'padded-blocks': [ 2, { blocks: 'never', classes: 'never', switches: 'never' } ], quotes: [ 2, 'single' ], 'quote-props': [ 2, 'as-needed' ], semi: [ 2, 'always' ], 'sort-vars': [ 2, { ignoreCase: true } ], 'keyword-spacing': 2, 'space-before-blocks': 2, 'object-curly-spacing': [ 2, 'never' ], 'array-bracket-spacing': [ 2, 'never' ], 'space-in-parens': 2, 'space-infix-ops': 2, 'space-unary-ops': 2, // 'spaced-comment': 2, 'wrap-regex': 0, // Legacy 'max-depth': 0, 'max-len': [ 2, 120, { ignoreStrings: true, ignoreTemplateLiterals: true, ignoreComments: true } ], 'max-params': 0, 'max-statements': 0, 'no-plusplus': 0, 'no-prototype-builtins': 2, 'prefer-template': 2, 'template-curly-spacing': [ 2, 'never' ] } };