@graphql-eslint/eslint-plugin
Version:
GraphQL plugin for ESLint
50 lines (49 loc) • 1.92 kB
JSON
{
"extends": "./base.json",
"rules": {
"@graphql-eslint/description-style": "error",
"@graphql-eslint/known-argument-names": "error",
"@graphql-eslint/known-directives": "error",
"@graphql-eslint/known-type-names": "error",
"@graphql-eslint/lone-schema-definition": "error",
"@graphql-eslint/naming-convention": [
"error",
{
"types": "PascalCase",
"FieldDefinition": "camelCase",
"InputValueDefinition": "camelCase",
"Argument": "camelCase",
"DirectiveDefinition": "camelCase",
"EnumValueDefinition": "UPPER_CASE",
"FieldDefinition[parent.name.value=Query]": {
"forbiddenPrefixes": ["query", "get"],
"forbiddenSuffixes": ["Query"]
},
"FieldDefinition[parent.name.value=Mutation]": {
"forbiddenPrefixes": ["mutation"],
"forbiddenSuffixes": ["Mutation"]
},
"FieldDefinition[parent.name.value=Subscription]": {
"forbiddenPrefixes": ["subscription"],
"forbiddenSuffixes": ["Subscription"]
}
}
],
"@graphql-eslint/no-case-insensitive-enum-values-duplicates": "error",
"@graphql-eslint/no-hashtag-description": "error",
"@graphql-eslint/no-typename-prefix": "error",
"@graphql-eslint/no-unreachable-types": "error",
"@graphql-eslint/provided-required-arguments": "error",
"@graphql-eslint/require-deprecation-reason": "error",
"@graphql-eslint/require-description": [
"error",
{ "types": true, "DirectiveDefinition": true }
],
"@graphql-eslint/strict-id-in-types": "error",
"@graphql-eslint/unique-directive-names": "error",
"@graphql-eslint/unique-directive-names-per-location": "error",
"@graphql-eslint/unique-field-definition-names": "error",
"@graphql-eslint/unique-operation-types": "error",
"@graphql-eslint/unique-type-names": "error"
}
}