// this file was auto-generated, do not edit it directly. // instead run bin/update_build_scripts from // https://github.com/sharelatex/sharelatex-dev-environment { "extends": [ "eslint:recommended", "standard", "prettier" ], "parserOptions": { "ecmaVersion": 2020 }, "plugins": [ "mocha", "chai-expect", "chai-friendly" ], "env": { "node": true, "mocha": true }, "rules": { // Swap the no-unused-expressions rule with a more chai-friendly one "no-unused-expressions": 0, "chai-friendly/no-unused-expressions": "error", // Do not allow importing of implicit dependencies. "import/no-extraneous-dependencies": "error" }, "overrides": [ { // Test specific rules "files": ["test/**/*.js"], "globals": { "expect": true }, "rules": { // mocha-specific rules "mocha/handle-done-callback": "error", "mocha/no-exclusive-tests": "error", "mocha/no-global-tests": "error", "mocha/no-identical-title": "error", "mocha/no-nested-tests": "error", "mocha/no-pending-tests": "error", "mocha/no-skipped-tests": "error", "mocha/no-mocha-arrows": "error", // chai-specific rules "chai-expect/missing-assertion": "error", "chai-expect/terminating-properties": "error", // prefer-arrow-callback applies to all callbacks, not just ones in mocha tests. // we don't enforce this at the top-level - just in tests to manage `this` scope // based on mocha's context mechanism "mocha/prefer-arrow-callback": "error" } }, { // Backend specific rules "files": ["app/**/*.js", "app.js", "index.js"], "rules": { // don't allow console.log in backend code "no-console": "error", // Do not allow importing of implicit dependencies. "import/no-extraneous-dependencies": ["error", { // Do not allow importing of devDependencies. "devDependencies": false }] } } ] }