website refactor
This commit is contained in:
@@ -7,7 +7,8 @@
|
||||
"ignorePatterns": [
|
||||
"lib/types/generated/**",
|
||||
"**/*.test.ts",
|
||||
"**/*.test.tsx"
|
||||
"**/*.test.tsx",
|
||||
"eslint-rules/**"
|
||||
],
|
||||
"overrides": [
|
||||
{
|
||||
@@ -25,13 +26,119 @@
|
||||
"import/no-default-export": "off",
|
||||
"no-restricted-syntax": "off"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/presenters/*.ts",
|
||||
"lib/presenters/*.tsx"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/presenter-contract": "error",
|
||||
"gridpilot-rules/filename-presenter-match": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"app/**/*.tsx"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/template-no-direct-mutations": "error",
|
||||
"gridpilot-rules/template-no-side-effects": "error",
|
||||
"gridpilot-rules/template-no-async-render": "error",
|
||||
"gridpilot-rules/template-no-external-state": "error",
|
||||
"gridpilot-rules/template-no-global-objects": "error",
|
||||
"gridpilot-rules/template-no-mutation-props": "error",
|
||||
"gridpilot-rules/template-no-unsafe-html": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"app/**/page.tsx",
|
||||
"app/**/layout.tsx"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/rsc-no-container-manager": "error",
|
||||
"gridpilot-rules/rsc-no-page-data-fetcher": "error",
|
||||
"gridpilot-rules/rsc-no-view-models": "error",
|
||||
"gridpilot-rules/rsc-no-presenters": "error",
|
||||
"gridpilot-rules/rsc-no-intl": "error",
|
||||
"gridpilot-rules/rsc-no-sorting-filtering": "error",
|
||||
"gridpilot-rules/rsc-no-display-objects": "error",
|
||||
"gridpilot-rules/rsc-no-unsafe-services": "error",
|
||||
"gridpilot-rules/rsc-no-di": "error",
|
||||
"gridpilot-rules/rsc-no-local-helpers": "error",
|
||||
"gridpilot-rules/rsc-no-object-construction": "error",
|
||||
"gridpilot-rules/rsc-no-container-manager-calls": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/display-objects/**/*.ts",
|
||||
"lib/display-objects/**/*.tsx"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/display-no-domain-models": "error",
|
||||
"gridpilot-rules/display-no-business-logic": "error",
|
||||
"gridpilot-rules/model-no-domain-in-display": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/page-queries/**/*.ts"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/page-query-no-null-returns": "error",
|
||||
"gridpilot-rules/page-query-filename": "error",
|
||||
"gridpilot-rules/page-query-contract": "error",
|
||||
"gridpilot-rules/page-query-execute": "error",
|
||||
"gridpilot-rules/page-query-return-type": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/services/**/*.ts"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/services-must-be-marked": "error",
|
||||
"gridpilot-rules/services-no-external-api": "error",
|
||||
"gridpilot-rules/services-must-be-pure": "error",
|
||||
"gridpilot-rules/filename-service-match": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"app/**/*.tsx"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/client-only-no-server-code": "error",
|
||||
"gridpilot-rules/client-only-must-have-directive": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/write-boundaries/**/*.ts"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/write-boundary-no-direct-mutations": "error",
|
||||
"gridpilot-rules/write-boundary-must-use-repository": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"lib/domain/**/*.ts",
|
||||
"lib/models/**/*.ts"
|
||||
],
|
||||
"rules": {
|
||||
"gridpilot-rules/model-no-display-in-domain": "error"
|
||||
}
|
||||
}
|
||||
],
|
||||
"plugins": [
|
||||
"boundaries",
|
||||
"import",
|
||||
"@typescript-eslint",
|
||||
"unused-imports"
|
||||
"unused-imports",
|
||||
"gridpilot-rules"
|
||||
],
|
||||
"root": true,
|
||||
"rules": {
|
||||
|
||||
Reference in New Issue
Block a user