Apply dependencies update
[poolifier.git] / .eslintrc.js
index 15fcb940ae0e8025076ceebc05196192d900e010..93a3c1bdc09c590ba0ff0986dedafab0e8d4e0e8 100644 (file)
@@ -7,40 +7,22 @@ module.exports = defineConfig({
     node: true,
     mocha: true
   },
-  parser: '@typescript-eslint/parser',
   parserOptions: {
     ecmaVersion: 2020,
-    sourceType: 'module',
-    warnOnUnsupportedTypeScriptVersion: false
+    sourceType: 'module'
   },
-  plugins: [
-    '@typescript-eslint',
-    'promise',
-    'prettierx',
-    'jsdoc',
-    'spellcheck'
-  ],
+  plugins: ['promise', 'prettierx', 'jsdoc', 'spellcheck'],
   extends: [
     'standard',
     'eslint:recommended',
-    'plugin:@typescript-eslint/recommended',
-    'plugin:import/errors',
-    'plugin:import/warnings',
-    'plugin:import/typescript',
+    'plugin:import/recommended',
+    'plugin:jsdoc/recommended',
     'plugin:promise/recommended',
     'plugin:prettierx/standardx'
   ],
   rules: {
     'no-void': 'off',
 
-    // We have some intentionally empty functions
-    '@typescript-eslint/no-empty-function': 'off',
-
-    '@typescript-eslint/no-inferrable-types': [
-      'error',
-      { ignoreProperties: true }
-    ],
-
     'sort-imports': [
       'warn',
       {
@@ -71,17 +53,30 @@ module.exports = defineConfig({
   },
   overrides: [
     {
-      files: ['src/**/*.ts'],
-      extends: 'plugin:jsdoc/recommended',
+      files: ['**/*.ts'],
+      parser: '@typescript-eslint/parser',
+      plugins: ['@typescript-eslint'],
+      extends: [
+        'plugin:@typescript-eslint/recommended',
+        'plugin:import/typescript'
+      ],
       rules: {
+        // We have some intentionally empty functions
+        '@typescript-eslint/no-empty-function': 'off',
+
+        '@typescript-eslint/no-inferrable-types': [
+          'error',
+          { ignoreProperties: true }
+        ],
+
         'no-useless-constructor': 'off',
 
         'jsdoc/match-description': [
           'warn',
           {
-            mainDescription:
-              '/^[A-Z`].+?(\\.|:)(\\n\\n.*((\\n{1,2}- .+)|(_.+_)|`.+`|\\n\\n---))?$/us',
-            matchDescription: '^[A-Z`].+(\\.|`.+`)$',
+            // mainDescription:
+            //   '/^[A-Z`].+?(\\.|:)(\\n\\n.*((\\n{1,2}- .+)|(_.+_)|`.+`|\\n\\n---))?$/us',
+            // matchDescription: '^[A-Z`].+(\\.|`.+`)$',
             contexts: ['any'],
             tags: {
               param: true,
@@ -112,23 +107,33 @@ module.exports = defineConfig({
       }
     },
     {
-      files: ['*.js'],
-      extends: 'plugin:node/recommended',
+      files: ['**/*.js'],
+      extends: 'plugin:node/recommended'
+    },
+    {
+      files: ['tests/**/*.js'],
       rules: {
-        '@typescript-eslint/no-unused-vars': 'off',
-        '@typescript-eslint/no-var-requires': 'off'
+        'jsdoc/require-jsdoc': 'off'
       }
     },
     {
-      files: ['examples/typescript/**/*.ts'],
+      files: ['benchmarks/**/*.js'],
       rules: {
-        'import/no-unresolved': 'off'
+        'jsdoc/require-jsdoc': 'off'
       }
     },
     {
       files: ['examples/**/*.js'],
       rules: {
-        'node/no-missing-require': 'off'
+        'node/no-missing-require': 'off',
+        'jsdoc/require-jsdoc': 'off'
+      }
+    },
+    {
+      files: ['examples/typescript/**/*.ts'],
+      rules: {
+        'import/no-unresolved': 'off',
+        'jsdoc/require-jsdoc': 'off'
       }
     }
   ],