import simpleImportSort from 'eslint-plugin-simple-import-sort'
import globals from 'globals'
import neostandard, { plugins } from 'neostandard'
-// FIXME: https://github.com/neostandard/neostandard/pull/88
-// eslint-disable-next-line n/no-extraneous-import
-import tseslint from 'typescript-eslint'
export default defineFlatConfig([
{
],
},
},
- ...tseslint.config(
- ...tseslint.configs.strictTypeChecked,
- ...tseslint.configs.stylisticTypeChecked
- ),
- ...neostandard({
- ts: true,
- globals: {
- ...globals.node,
- ...globals.mocha,
- },
- }),
- {
- languageOptions: {
- parserOptions: {
- project: true,
- tsconfigRootDir: import.meta.dirname,
+ ...plugins['typescript-eslint'].config(
+ {
+ extends: [
+ ...plugins['typescript-eslint'].configs.strictTypeChecked,
+ ...plugins['typescript-eslint'].configs.stylisticTypeChecked,
+ ],
+ languageOptions: {
+ parserOptions: {
+ projectService: true,
+ tsconfigRootDir: import.meta.dirname,
+ },
},
},
- },
+ {
+ files: ['**/*.js', '**/*.mjs', '**/*.cjs'],
+ ...plugins['typescript-eslint'].configs.disableTypeChecked,
+ }
+ ),
{
plugins: {
'simple-import-sort': simpleImportSort,
'Quadflieg',
'neostandard',
'poolifier',
- 'tseslint',
],
},
},
'simple-import-sort/exports': 'error',
},
},
+ ...neostandard({
+ ts: true,
+ globals: {
+ ...globals.mocha,
+ },
+ }),
{
files: [
'src/pools/selection-strategies/fair-share-worker-choice-strategy.ts',
'@stylistic/operator-linebreak': 'off',
},
},
- {
- files: ['**/*.js', '**/*.mjs', '**/*.cjs'],
- ...tseslint.configs.disableTypeChecked,
- },
// examples specific configuration
{
files: ['examples/**/*.ts'],
'@typescript-eslint/no-unsafe-member-access': 'off',
'@typescript-eslint/no-unnecessary-type-assertion': 'off',
'@typescript-eslint/no-redundant-type-constituents': 'off',
+ '@typescript-eslint/return-await': 'off',
+ '@typescript-eslint/restrict-template-expressions': 'off',
},
},
{