Linter rulesGraphQLarguments-sorted

arguments-sorted

Since 0.9.0

This rule checks that the arguments of field and directive definitions 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:
        arguments-sorted: warning

The rule can be disabled for a node and everything nested in it with an # apigenie-lint-disable arguments-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 definitions.

Examples

Good.

type Query { users(first: Int, last: Int): [User] }

Bad. The linter reports Argument 'first' should come before 'last'.

type Query { users(last: Int, first: Int): [User] }

When Not to Use It

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