@@ -627,8 +627,8 @@ asyncRecord, visitedFragments, deferredGroupedFieldsList):
627
627
- If {selection} is a {FragmentSpread}:
628
628
- Let {fragmentSpreadName} be the name of {selection}.
629
629
- If {fragmentSpreadName} provides the directive ` @defer ` and its {if}
630
- argument is {true} or is a variable in {variableValues} with the value
631
- {true }:
630
+ argument is not {false} and is not a variable in {variableValues} with the
631
+ value {false }:
632
632
- Let {deferDirective} be that directive.
633
633
- If {deferDirective} is not defined:
634
634
- If {fragmentSpreadName} is in {visitedFragments}, continue with the next
@@ -668,19 +668,20 @@ asyncRecord, visitedFragments, deferredGroupedFieldsList):
668
668
fragmentType)} is false, continue with the next {selection} in
669
669
{selectionSet}.
670
670
- Let {fragmentSelectionSet} be the top-level selection set of {selection}.
671
- - If {InlineFragment} provides the directive ` @defer ` , let {deferDirective}
672
- be that directive.
673
- - If {deferDirective}'s {if} argument is {true} or is a variable in
674
- {variableValues} with the value {true}:
675
- - Let {label} be the value or the variable to {deferDirective}'s {label}
676
- argument.
677
- - Let {deferredGroupedFields} be the result of calling
678
- {CollectFields(objectType, objectValue, fragmentSelectionSet,
679
- variableValues, path, asyncRecord, visitedFragments,
680
- deferredGroupedFieldsList)}.
681
- - Append a record containing {label} and {deferredGroupedFields} to
682
- {deferredGroupedFieldsList}.
683
- - Continue with the next {selection} in {selectionSet}.
671
+ - If {InlineFragment} provides the directive ` @defer ` and its {if} argument
672
+ is not {false} and is not a variable in {variableValues} with the value
673
+ {false}:
674
+ - Let {deferDirective} be that directive.
675
+ - If {deferDirective} is defined:
676
+ - Let {label} be the value or the variable to {deferDirective}'s {label}
677
+ argument.
678
+ - Let {deferredGroupedFields} be the result of calling
679
+ {CollectFields(objectType, objectValue, fragmentSelectionSet,
680
+ variableValues, path, asyncRecord, visitedFragments,
681
+ deferredGroupedFieldsList)}.
682
+ - Append a record containing {label} and {deferredGroupedFields} to
683
+ {deferredGroupedFieldsList}.
684
+ - Continue with the next {selection} in {selectionSet}.
684
685
- Let {fragmentGroupedFieldSet} be the result of calling
685
686
{CollectFields(objectType, objectValue, fragmentSelectionSet,
686
687
variableValues, path, asyncRecord, visitedFragments,
@@ -945,9 +946,9 @@ subsequentPayloads, asyncRecord):
945
946
- If {result} is an iterator:
946
947
- Let {field} be the first entry in {fields}.
947
948
- Let {innerType} be the inner type of {fieldType}.
948
- - If {field} provides the directive ` @stream ` and its {if} argument is
949
- {true} or is a variable in {variableValues} with the value {true} and
950
- {innerType} is the outermost return type of the list type defined for
949
+ - If {field} provides the directive ` @stream ` and its {if} argument is not
950
+ {false} and is not a variable in {variableValues} with the value {false}
951
+ and {innerType} is the outermost return type of the list type defined for
951
952
{field}:
952
953
- Let {streamDirective} be that directive.
953
954
- Let {initialCount} be the value or variable provided to
0 commit comments