diff options
Diffstat (limited to 'eslint.config.js')
| -rw-r--r-- | eslint.config.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 000000000..172f0ce21 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,43 @@ +import globals from 'globals'; +import js from '@eslint/js'; +import stylistic from '@stylistic/eslint-plugin'; + +export default [ + js.configs.recommended, + + { + files: ['js/**/*.js', 'plugins/**/*.js'], + languageOptions: { + ecmaVersion: 2022, + sourceType: 'script', + globals: { + ...globals.browser, + + // Dojo + dojo: 'readonly', + dijit: 'readonly' + } + }, + + plugins: { + '@stylistic/js': stylistic + }, + + rules: { + 'no-console': 'off', + 'prefer-const': 'error', + 'eqeqeq': ['error', 'always'], + 'no-empty': ['error', { 'allowEmptyCatch': true }], + + // Stylistic rules (replacing those deprecated in ESLint) + '@stylistic/js/linebreak-style': ['error', 'unix'], + '@stylistic/js/eol-last': 'error', + '@stylistic/js/no-trailing-spaces': 'error', + '@stylistic/js/no-multiple-empty-lines': ['error', { 'max': 2 }], + '@stylistic/js/keyword-spacing': ['error', { 'after': true, 'before': true }], + '@stylistic/js/block-spacing': ['error', 'always'], + '@stylistic/js/computed-property-spacing': ['error', 'never'], + '@stylistic/js/max-statements-per-line': ['warn', { 'max': 2 }] + } + } +]; |