2023-02-21 06:01:43 +00:00
|
|
|
module.exports = {
|
2024-03-06 13:09:14 +00:00
|
|
|
extends: [
|
|
|
|
"next",
|
|
|
|
"prettier",
|
|
|
|
"plugin:@typescript-eslint/recommended",
|
|
|
|
],
|
2023-02-21 06:01:43 +00:00
|
|
|
parser: "@typescript-eslint/parser",
|
2024-03-06 13:09:14 +00:00
|
|
|
parserOptions: {
|
|
|
|
ecmaVersion: 2021, // Or the ECMAScript version you are using
|
|
|
|
sourceType: "module", // Or 'script' if you're using CommonJS or other modules
|
|
|
|
},
|
|
|
|
plugins: ["react", "@typescript-eslint", "import"],
|
2023-02-21 06:01:43 +00:00
|
|
|
settings: {
|
|
|
|
next: {
|
2024-05-14 08:56:54 +00:00
|
|
|
rootDir: ["web/", "space/", "admin/", "packages/*/"],
|
2023-02-21 06:01:43 +00:00
|
|
|
},
|
|
|
|
},
|
|
|
|
rules: {
|
2024-06-13 15:47:06 +00:00
|
|
|
"no-useless-escape": "off",
|
2023-02-21 06:01:43 +00:00
|
|
|
"prefer-const": "error",
|
|
|
|
"no-irregular-whitespace": "error",
|
|
|
|
"no-trailing-spaces": "error",
|
|
|
|
"no-duplicate-imports": "error",
|
|
|
|
"arrow-body-style": ["error", "as-needed"],
|
2024-03-06 13:09:14 +00:00
|
|
|
"@next/next/no-html-link-for-pages": "off",
|
2023-09-13 06:36:17 +00:00
|
|
|
"@next/next/no-img-element": "off",
|
2024-03-06 13:09:14 +00:00
|
|
|
"react/jsx-key": "error",
|
|
|
|
"react/self-closing-comp": ["error", { component: true, html: true }],
|
|
|
|
"react/jsx-boolean-value": "error",
|
|
|
|
"react/jsx-no-duplicate-props": "error",
|
|
|
|
"@typescript-eslint/no-unused-vars": ["error"],
|
|
|
|
"@typescript-eslint/no-explicit-any": "warn",
|
|
|
|
"@typescript-eslint/no-useless-empty-export": "error",
|
|
|
|
"@typescript-eslint/prefer-ts-expect-error": "error",
|
|
|
|
"@typescript-eslint/naming-convention": [
|
|
|
|
"error",
|
|
|
|
{
|
|
|
|
selector: ["function", "variable"],
|
|
|
|
format: ["camelCase", "snake_case", "UPPER_CASE", "PascalCase"],
|
2024-06-13 15:47:06 +00:00
|
|
|
leadingUnderscore: "allow",
|
2024-03-06 13:09:14 +00:00
|
|
|
},
|
|
|
|
],
|
2023-02-21 06:01:43 +00:00
|
|
|
},
|
|
|
|
};
|