Files
mintel.me/eslint.config.js
Marc Mintel 4d862f2bff
Some checks failed
Build & Deploy / 🔍 Prepare Environment (push) Successful in 5s
Build & Deploy / 🧪 QA (push) Failing after 58s
Build & Deploy / 🏗️ Build (push) Failing after 10m47s
Build & Deploy / 🚀 Deploy (push) Has been skipped
Build & Deploy / ⚡ PageSpeed (push) Has been skipped
Build & Deploy / 🔔 Notifications (push) Successful in 2s
fix: un-pfusch - committed robust eslint config and fixed imports
2026-02-07 16:41:42 +01:00

73 lines
2.4 KiB
JavaScript

import js from "@eslint/js";
import tseslint from "typescript-eslint";
import nextPlugin from "@next/eslint-plugin-next";
import reactPlugin from "eslint-plugin-react";
import hooksPlugin from "eslint-plugin-react-hooks";
import { FlatCompat } from "@eslint/eslintrc";
import { dirname } from "path";
import { fileURLToPath } from "url";
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
});
export default tseslint.config(
{
ignores: ["**/dist/**", "**/node_modules/**", "**/.next/**", "**/out/**"],
},
js.configs.recommended,
...tseslint.configs.recommended,
{
files: ["apps/web/**/*.{js,jsx,ts,tsx}"],
plugins: {
"react": reactPlugin,
"react-hooks": hooksPlugin,
"@next/next": nextPlugin,
},
rules: {
...reactPlugin.configs.recommended.rules,
...nextPlugin.configs.recommended.rules,
...nextPlugin.configs["core-web-vitals"].rules,
"react/react-in-jsx-scope": "off",
"react/no-unescaped-entities": "off",
"@next/next/no-img-element": "warn",
},
settings: {
react: {
version: "detect",
},
},
},
{
rules: {
"no-unused-vars": "warn",
"@typescript-eslint/no-unused-vars": ["warn", {
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_",
"caughtErrorsIgnorePattern": "^_"
}],
"no-console": "off",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/ban-ts-comment": "off",
"no-empty": "warn",
"react-hooks/rules-of-hooks": "off",
"react-hooks/exhaustive-deps": "off",
"@typescript-eslint/no-require-imports": "off",
"no-useless-assignment": "off",
"react-hooks/set-state-in-effect": "off",
"react/jsx-key": "warn",
"no-use-before-define": "off",
"react-hooks/immutability": "off",
"react-hooks/refs": "off",
"@typescript-eslint/no-use-before-define": "off",
"prefer-const": "off",
"no-useless-escape": "off",
"no-self-assign": "off",
"no-control-regex": "off",
},
},
);