module.exports = { "extends": [ "canonical", "canonical/lodash", "canonical/mocha" ], "rules": { // enable additional rules // // A reasonable number of these are because we are stuck on Node 4. // Moving to later versions of node will allow things like await/async etc. // "arrow-body-style": 0, "jsdoc/require-description-complete-sentence": 0, "filenames/match-regex": 0, "func-style": 0, "id-length": [ 1, { "exceptions": [ "i", "j", "Q", "P", "R", "$", "_" ], "max": 50, "min": 2 } ], "id-match": [ 2, "(^[$A-Za-z]+(?:[A-Z][a-z]*)*\\d*$)|(^[A-Z]+(_[A-Z]+)*(_\\d$)*$)|(^(_|\\$)$)", { "onlyDeclarations": true, "properties": false } ], "indent": [ 2, 4, { "SwitchCase": 1 } ], "import/no-commonjs": 0, "import/no-dynamic-require": 0, "import/unambiguous": 0, "import/order": 0, "linebreak-style": 0, "lines-around-directive": 0, "line-comment-position": 0, "newline-after-var": 0, "newline-before-return": 0, "no-extra-parens": 0, "no-inline-comments": 0, "no-multi-spaces": [ 2, { "ignoreEOLComments": true } ], "no-param-reassign": 0, "no-trailing-spaces": [ 2, { "skipBlankLines": false, "ignoreComments": false } ], "no-use-before-define": [ 2, { "functions": false } ], "object-shorthand": 1, "promise/prefer-await-to-then": 0, "promise/prefer-await-to-callbacks": 0, "sort-keys": 0, "space-before-function-paren": [ 2, { "anonymous": "never", "named": "never", "asyncArrow": "always" } ], "strict": 0 }, "settings": { "jsdoc": { "additionalTagNames": { "customTags": ["ngInject"] } } } };