configuration-eslint/index.ts

41 lines
1.3 KiB
TypeScript

import { Linter } from "eslint";
import { defineConfig, globalIgnores } from "eslint/config";
import globals from "globals";
import { règlesJavaScript } from "./règles/javascript.ts";
import { règlesJsDoc } from "./règles/jsdoc.ts";
import { règlesOxlint } from "./règles/oxlint.ts";
import { règlesProgrammationFonctionnelle } from "./règles/programmation-fonctionnelle.ts";
import { règlesSonarJs } from "./règles/sonarjs.ts";
import { règlesTri } from "./règles/tri.ts";
import { règlesTypeScript } from "./règles/typescript.ts";
import { règlesUnicorn } from "./règles/unicorn.ts";
export const configTypescriptNavigateur: ReadonlyArray<Linter.Config> = defineConfig([
globalIgnores(["dist/**/*"], "Ignore le dossier de compilation"),
{
files: ["**/*.js", "**/*.ts"],
name: "Fichiers à analyser",
},
{
languageOptions: {
ecmaVersion: "latest",
globals: { ...globals.browser, ...globals.builtin, ...globals.es2026, ...globals.node },
parserOptions: {
ecmaVersion: "latest",
projectService: true,
sourceType: "module",
tsconfigRootDir: import.meta.dirname,
},
},
name: "Configuration du projet",
},
règlesJavaScript,
règlesTypeScript,
règlesProgrammationFonctionnelle,
règlesUnicorn,
règlesSonarJs,
règlesJsDoc,
règlesTri,
règlesOxlint,
]);