{ "extends": "eslint:recommended", "env": { "es6": true, "node": true, "browser": true, "mocha": true }, "parserOptions": { "ecmaVersion": 2016 }, "globals": { "window": false, "document": false, "$": false, "System": false, "expect": false }, "rules": { "accessor-pairs": "error", "arrow-spacing": "error", "brace-style": [ "error", "1tbs", { "allowSingleLine": true } ], "camelcase": [ "error", { "properties": "never" } ], "comma-spacing": ["error", { "before": false, "after": true }], // "curly": [ "error", "all" ], // "dot-notation": "error", "eol-last": ["error", "always"], // "eqeqeq": ["error", "always"], // "indent": ["error", "tab", { "MemberExpression": "off", "SwitchCase": 1, "ObjectExpression": "first" } ], "key-spacing": [ "error", { "beforeColon": false, "afterColon": true, "mode": "minimum" } ], "keyword-spacing": [ "error", {} ], "no-cond-assign": "error", "no-console": ["off", { "allow": ["warn", "error"] }], "no-constant-condition": ["error", { "checkLoops": false }], "no-eval": "error", "no-fallthrough": "off", "no-mixed-spaces-and-tabs": "error", // "no-multiple-empty-lines": "error", "no-restricted-globals": ["error", "event"], "no-restricted-syntax": [ "error", { "selector": "*:not(ExpressionStatement) > CallExpression[callee.property.name='sort']:not([callee.object.type='CallExpression']):not([callee.object.type='ArrayExpression']):not([callee.object.name='mongoUtil'])", "message": "Restricted Array Mutation: Use `array.slice().sort(...)` if mutation was not intended, otherwise place on own line." }, { "selector": "*:not(ExpressionStatement) > CallExpression[callee.property.name='reverse']:not([callee.object.type='CallExpression']):not([callee.object.type='ArrayExpression'])", "message": "Restricted Array Mutation: Use `array.slice().reverse(...)` if mutation was not intended, otherwise place on own line." }, { "selector": "*:not(ExpressionStatement) > CallExpression[callee.property.name='push']", "message": "Restricted Array Mutation: `array.push(...)` returns push count, not array reference, place statement on own line." } ], // "no-return-assign": "error", // "no-trailing-spaces": "error", "no-undef": "error", "no-unused-expressions": "error", "no-unused-vars": ["error", { "vars": "all", "args": "none" }], // "no-use-before-define": [ "error", { "functions": false } ], "no-useless-escape": "off", "no-with": "error", "padding-line-between-statements": [ "error", { "blankLine": "always", "prev": "*", "next": "function" } ], // "quotes": [ "error", "double", { "allowTemplateLiterals": true, "avoidEscape": true } ], "semi": [ "error", "always" ], "space-before-blocks": [ "error", "always" ], // "space-before-function-paren": [ "error", { "anonymous": "always", "named": "always", "asyncArrow": "always" } ], // "space-in-parens": [ "error", "never" ], // "space-infix-ops": "error", // "space-unary-ops": [ "error", { "nonwords": true, "overrides": {} } ], // "spaced-comment": [ "error", "always", {"block": {"exceptions": ["*", "!"], "balanced": true}} ] } }