configuration-oxlint/index.ts
gcch bb90d0e246 2026-04-03
- eslint OK
- import OK
- jsdoc OK
- node OK
- oxc OK
- promise OK
2026-04-04 10:56:28 +02:00

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;