Files
base-configs/packages/eslint-config/index.cjs
Ismo Vuorinen 6d6f4582dd feat!: ESLint 9 Fixes (#307)
* chore: update postinstall scripts
* chore(lint): eslint automated fixes
* feat!: drop standard, sonarjs to work with eslint9

- This config allows arrow functions.

BREAKING CHANGES:

- Switches to eslint-config-eslint from eslint-config-standard.
- Also drops eslint-plugins-sonarjs because it doesn't work well
  with eslint9, and wants eslint8 and related plugins.
- Switches from eslint-plugin-prettier to eslint-config-prettier.
2024-11-25 03:35:13 +02:00

57 lines
1.2 KiB
JavaScript

'use strict'
const globals = require('globals')
const configEslint = require('eslint-config-eslint')
const configPrettier = require('eslint-config-prettier')
const pluginImport = require('eslint-plugin-import')
const pluginJs = require('@eslint/js')
const pluginN = require('eslint-plugin-n')
const pluginPromise = require('eslint-plugin-promise')
/**
* @type { import("eslint").Linter.Config[] } config eslint configuration.
*/
module.exports = [
...configEslint,
{
linterOptions: {
reportUnusedDisableDirectives: 'warn'
},
rules: {
'func-style': [
'error',
'declaration',
{
allowArrowFunctions: true
}
]
}
},
{
files: ['**/*.{js,mjs,cjs}'],
languageOptions: {
globals: {
...globals.browser,
...globals.commonjs,
...globals.es2021,
...globals.node
},
parserOptions: {
ecmaVersion: 12
}
}
},
pluginJs.configs.recommended,
{
plugins: {
n: pluginN,
import: pluginImport,
promise: pluginPromise
}
},
configPrettier,
{
ignores: ['coverage/', 'dist/', 'lib/', 'node_modules/']
}
]