selection-set-depth
✅ The "extends": "plugin:@graphql-eslint/operations-recommended" property in a configuration file
enables this rule.
💡 This rule provides suggestions
- Category: 
Operations - Rule name: 
@graphql-eslint/selection-set-depth - Requires GraphQL Schema: 
falseℹ️ - Requires GraphQL Operations: 
trueℹ️ 
Limit the complexity of the GraphQL operations solely by their depth. Based on graphql-depth-limit .
Usage Examples
Incorrect
# eslint @graphql-eslint/selection-set-depth: ['error', { maxDepth: 1 }]
 
query deep2 {
  viewer {
    # Level 0
    albums {
      # Level 1
      title # Level 2
    }
  }
}Correct
# eslint @graphql-eslint/selection-set-depth: ['error', { maxDepth: 4 }]
 
query deep2 {
  viewer {
    # Level 0
    albums {
      # Level 1
      title # Level 2
    }
  }
}Correct (ignored field)
# eslint @graphql-eslint/selection-set-depth: ['error', { maxDepth: 1, ignore: ['albums'] }]
 
query deep2 {
  viewer {
    # Level 0
    albums {
      # Level 1
      title # Level 2
    }
  }
}Config Schema
The schema defines the following properties:
maxDepth (number, required)
ignore (array)
The object is an array with all elements of the type string.
Additional restrictions:
- Minimum items: 
1 - Unique items: 
true 
Resources
Last updated on