Linter rulesGraphQLinput-fields-sorted

input-fields-sorted

Since 0.9.0

This rule checks that the fields of each input object type definition and extension 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:
        input-fields-sorted: warning

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

input UserFilter { kind: Kind, name: String }

Bad. The linter reports Input field 'kind' should come before 'name'.

input UserFilter { name: String, kind: Kind }

When Not to Use It

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