X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/d62caf5fe21911a8c07c9831170cbb1f74936d24..b35c04c5f039f284278ca12eb12e30704454eb45:/config/eslint.js?ds=sidebyside diff --git a/config/eslint.js b/config/eslint.js index 4e8881727..1bf65695b 100644 --- a/config/eslint.js +++ b/config/eslint.js @@ -1,9 +1,19 @@ const globals = require("globals"); const js = require("@eslint/js"); +const erb = require("eslint-plugin-erb"); const stylisticJs = require("@stylistic/eslint-plugin-js"); module.exports = [ js.configs.recommended, + erb.configs.recommended, + { + ignores: [ + "app/assets/javascripts/i18n/", + "coverage/assets/", + "public/assets/", + "vendor/" + ] + }, { plugins: { "@stylistic": stylisticJs @@ -23,6 +33,15 @@ module.exports = [ updateLinks: "readonly" } }, + linterOptions: { + // The "unused disable directive" is set to "warn" by default. + // For the ERB plugin to work correctly, you must disable + // this directive to avoid issues described here + // https://github.com/eslint/eslint/discussions/18114 + // If you're using the CLI, you might also use the following flag: + // --report-unused-disable-directives-severity=off + reportUnusedDisableDirectives: "off" + }, rules: { "@stylistic/array-bracket-newline": ["error", "consistent"], "@stylistic/array-bracket-spacing": "error", @@ -75,7 +94,7 @@ module.exports = [ "curly": ["error", "multi-line", "consistent"], "dot-notation": "error", "eqeqeq": ["error", "smart"], - "no-alert": "warn", + "no-alert": "error", "no-array-constructor": "error", "no-caller": "error", "no-console": "warn", @@ -86,7 +105,7 @@ module.exports = [ "no-extra-bind": "error", "no-extra-label": "error", "no-implicit-coercion": "warn", - "no-implicit-globals": "warn", + "no-implicit-globals": "error", "no-implied-eval": "error", "no-invalid-this": "error", "no-iterator": "error", @@ -100,11 +119,10 @@ module.exports = [ "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", - "no-new-object": "error", "no-new-wrappers": "error", + "no-object-constructor": "error", "no-octal-escape": "error", "no-param-reassign": "error", - "no-process-env": "error", "no-proto": "error", "no-script-url": "error", "no-self-compare": "error",