Linter rulesGraphQLselections-sorted

selections-sorted

Since 0.9.0

This rule checks that the fields of each selection set of operations and fragments are in alphabetical order.

Rule Details

Sorted definitions are easier to find and produce smaller diffs. Names are compared ignoring case; the first name out of order of each list is reported.

Configuration

This rule has no options.

version: "1.0"
commands:
  lint:
    graphql:
      rules:
        selections-sorted: warning

The rule can be disabled for a node and everything nested in it with an # apigenie-lint-disable selections-sorted comment on the node, or for a whole file with the comment at the top of the file, separated from the first definition by a blank line. It applies to operations and fragments.

Examples

Good.

query Me { me { id name } }

Bad. The linter reports Field 'id' should come before 'name'.

query Me { me { name id } }

When Not to Use It

Disable this rule when the order of definitions is meaningful, e.g. the most important fields first.