UNPKG

fs-match

Version:

A NodeJS package for finding folders, files & apps by Regular expression based on Asynchronous iteration of ES 9 & TypeScript

59 lines (53 loc) 1.96 kB
import eslint from '@eslint/js'; import { currentModulePath } from '@tech_query/node-toolkit'; import { defineConfig } from 'eslint/config'; import eslintConfigPrettier from 'eslint-config-prettier'; import simpleImportSortPlugin from 'eslint-plugin-simple-import-sort'; import globals from 'globals'; import tsEslint from 'typescript-eslint'; const tsconfigRootDir = currentModulePath(); export default defineConfig( // register all of the plugins up-front { plugins: { 'simple-import-sort': simpleImportSortPlugin, '@typescript-eslint': tsEslint.plugin } }, // config with just ignores is the replacement for `.eslintignore` { ignores: ['**/node_modules/**', '**/dist/**', '**/wrapper/**'] }, // extends ... eslint.configs.recommended, ...tsEslint.configs.recommended, // base config { languageOptions: { globals: { ...globals.es2022, ...globals.node }, parserOptions: { projectService: true, tsconfigRootDir, warnOnUnsupportedTypeScriptVersion: false } }, rules: { 'no-var': 'warn', 'simple-import-sort/exports': 'error', 'simple-import-sort/imports': 'error', '@typescript-eslint/no-unused-vars': 'warn', '@typescript-eslint/no-explicit-any': 'warn', '@typescript-eslint/no-empty-object-type': 'off', '@typescript-eslint/no-unsafe-declaration-merging': 'warn' } }, { files: ['**/*.js'], extends: [tsEslint.configs.disableTypeChecked], rules: { // turn off other type-aware rules '@typescript-eslint/internal/no-poorly-typed-ts-props': 'off', // turn off rules that don't apply to JS code '@typescript-eslint/explicit-function-return-type': 'off' } }, eslintConfigPrettier );