| import globals from 'globals'; |
| import jsdoc from './src/index.js'; |
| // import canonical from 'eslint-config-canonical'; |
| // import canonicalJsdoc from 'eslint-config-canonical/jsdoc.js'; |
| |
| const common = { |
| linterOptions: { |
| reportUnusedDisableDirectives: 'off' |
| }, |
| plugins: { |
| jsdoc |
| }, |
| }; |
| |
| export default [ |
| // canonical, |
| // canonicalJsdoc, |
| ...jsdoc.configs['examples-and-default-expressions'], |
| { |
| // Must be by itself |
| ignores: ['dist/**', '.ignore/**/*.js'], |
| }, |
| { |
| ...common, |
| languageOptions: { |
| ecmaVersion: 'latest', |
| sourceType: 'module', |
| globals: globals.node |
| }, |
| settings: { |
| jsdoc: { |
| mode: 'typescript' |
| } |
| }, |
| rules: { |
| 'array-element-newline': 0, |
| 'filenames/match-regex': 0, |
| 'import/extensions': 0, |
| 'import/no-useless-path-segments': 0, |
| 'prefer-named-capture-group': 0, |
| 'unicorn/no-array-reduce': 0, |
| 'unicorn/no-unsafe-regex': 0, |
| 'unicorn/prefer-array-some': 0, |
| 'unicorn/prevent-abbreviations': 0, |
| 'unicorn/import-index': 0, |
| 'linebreak-style': 0, |
| 'no-inline-comments': 0, |
| 'no-extra-parens': 0 |
| } |
| }, |
| { |
| ...common, |
| files: ['.ncurc.cjs'], |
| languageOptions: { |
| parserOptions: { |
| ecmaFeatures: { |
| impliedStrict: false |
| }, |
| }, |
| sourceType: 'script' |
| }, |
| rules: { |
| 'import/no-commonjs': 0, |
| strict: [ |
| 'error', |
| 'global' |
| ] |
| } |
| }, |
| { |
| ...common, |
| files: ['test/**/*.js'], |
| languageOptions: { |
| ecmaVersion: 'latest', |
| sourceType: 'module' |
| }, |
| rules: { |
| 'no-restricted-syntax': 0, |
| 'unicorn/prevent-abbreviations': 0 |
| } |
| }, |
| ]; |