story-research-zapwall/.eslintrc.json
2025-12-22 09:48:57 +01:00

57 lines
2.0 KiB
JSON

{
"extends": [
"next/core-web-vitals",
"next/typescript"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module",
"project": "./tsconfig.json"
},
"rules": {
"@typescript-eslint/no-unused-vars": [
"error",
{
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_",
"caughtErrorsIgnorePattern": "^_"
}
],
"@typescript-eslint/no-explicit-any": "error",
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/no-floating-promises": "error",
"@typescript-eslint/no-misused-promises": "error",
"@typescript-eslint/await-thenable": "error",
"@typescript-eslint/no-unnecessary-type-assertion": "error",
"@typescript-eslint/no-non-null-assertion": "error",
"@typescript-eslint/prefer-nullish-coalescing": "error",
"@typescript-eslint/prefer-optional-chain": "error",
"@typescript-eslint/no-non-null-asserted-optional-chain": "error",
"no-console": ["warn", { "allow": ["warn", "error"] }],
"no-debugger": "error",
"no-alert": "error",
"prefer-const": "error",
"no-var": "error",
"object-shorthand": "error",
"prefer-arrow-callback": "warn",
"prefer-template": "error",
"eqeqeq": ["error", "always"],
"curly": ["error", "all"],
"no-throw-literal": "error",
"no-return-await": "error",
"require-await": "warn",
"no-await-in-loop": "warn",
"react-hooks/rules-of-hooks": "error",
"react-hooks/exhaustive-deps": "error",
"react/jsx-key": "error",
"react/jsx-no-duplicate-props": "error",
"react/jsx-no-undef": "error",
"react/no-unescaped-entities": "warn",
"react/no-unknown-property": "error",
"max-lines": ["error", { "max": 250, "skipBlankLines": false, "skipComments": false }],
"max-lines-per-function": ["error", { "max": 40, "skipBlankLines": false, "skipComments": false, "IIFEs": true }]
}
}