- eslint OK - import OK - jsdoc OK - node OK - oxc OK - promise OK - typescript OK - unicorn en cours
57 lines
1.5 KiB
TypeScript
57 lines
1.5 KiB
TypeScript
import type { OxlintConfig } from "oxlint";
|
|
import { defineConfig } from "oxlint";
|
|
|
|
import astroConfig from "./rules/astro.ts";
|
|
import esLintRules from "./rules/eslint.ts";
|
|
import functionalRules from "./rules/functional.ts";
|
|
import importRules from "./rules/import.ts";
|
|
import jsDocRules from "./rules/jsdoc.ts";
|
|
import perfectionistRules from "./rules/perfectionist.ts";
|
|
import sonarJsRules from "./rules/sonarjs.ts";
|
|
import typeScriptRules from "./rules/typescript.ts";
|
|
import unicornRules from "./rules/unicorn.ts";
|
|
import nodeRules from "./rules/node.ts";
|
|
import oxcRules from "./rules/oxc.ts";
|
|
import promiseRules from "./rules/promise.ts";
|
|
|
|
const config: OxlintConfig = defineConfig({
|
|
categories: {
|
|
correctness: "off",
|
|
nursery: "off",
|
|
pedantic: "off",
|
|
perf: "off",
|
|
style: "off",
|
|
suspicious: "off",
|
|
},
|
|
env: {
|
|
browser: true,
|
|
builtin: true,
|
|
es2026: true,
|
|
node: true,
|
|
},
|
|
ignorePatterns: [".astro", ".cache", "dist/**/*"],
|
|
jsPlugins: ["eslint-plugin-functional", "eslint-plugin-perfectionist", "eslint-plugin-sonarjs"],
|
|
options: {
|
|
reportUnusedDisableDirectives: "warn",
|
|
typeAware: true,
|
|
typeCheck: false,
|
|
},
|
|
overrides: [astroConfig],
|
|
plugins: ["import", "jsdoc", "node", "oxc", "promise", "typescript", "unicorn"],
|
|
rules: {
|
|
...esLintRules,
|
|
...functionalRules,
|
|
...importRules,
|
|
...jsDocRules,
|
|
...nodeRules,
|
|
...oxcRules,
|
|
...perfectionistRules,
|
|
...promiseRules,
|
|
...sonarJsRules,
|
|
...typeScriptRules,
|
|
...unicornRules,
|
|
},
|
|
settings: {},
|
|
});
|
|
|
|
export default config;
|