60 lines
1.5 KiB
JSON
60 lines
1.5 KiB
JSON
{
|
|
"root": true,
|
|
"ignorePatterns": ["lib/types/generated/**", "**/*.test.ts", "**/*.test.tsx"],
|
|
"extends": ["next/core-web-vitals", "plugin:import/recommended", "plugin:import/typescript"],
|
|
"plugins": ["boundaries", "import", "@typescript-eslint", "unused-imports"],
|
|
"settings": {
|
|
"import/resolver": {
|
|
"typescript": {}
|
|
},
|
|
"boundaries/elements": [
|
|
{
|
|
"type": "website",
|
|
"pattern": ["**/*"]
|
|
}
|
|
]
|
|
},
|
|
"rules": {
|
|
"react/no-unescaped-entities": "off",
|
|
"@next/next/no-img-element": "off",
|
|
"react-hooks/exhaustive-deps": "off",
|
|
"react-hooks/rules-of-hooks": "off",
|
|
"@typescript-eslint/no-explicit-any": "off",
|
|
"@typescript-eslint/no-unused-vars": "off",
|
|
"import/no-default-export": "off",
|
|
"import/no-named-as-default-member": "off",
|
|
"no-restricted-syntax": "off",
|
|
"boundaries/element-types": [
|
|
2,
|
|
{
|
|
"default": "disallow",
|
|
"rules": [
|
|
{
|
|
"from": ["website"],
|
|
"allow": ["website"]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"unused-imports/no-unused-imports": "off",
|
|
"unused-imports/no-unused-vars": "off"
|
|
},
|
|
"overrides": [
|
|
{
|
|
"files": [
|
|
"app/**/page.*",
|
|
"app/**/layout.*",
|
|
"app/**/loading.*",
|
|
"app/**/error.*",
|
|
"app/**/not-found.*",
|
|
"app/**/global-error.*",
|
|
"app/**/template.*",
|
|
"app/**/default.*"
|
|
],
|
|
"rules": {
|
|
"import/no-default-export": "off",
|
|
"no-restricted-syntax": "off"
|
|
}
|
|
}
|
|
]
|
|
} |