@@ -3,7 +3,7 @@ import { isSameSet } from '../jsutils/isSameSet.js';
3
3
4
4
import type {
5
5
DeferUsage ,
6
- FieldGroup ,
6
+ FieldDetailsList ,
7
7
GroupedFieldSet ,
8
8
} from './collectFields.js' ;
9
9
@@ -18,13 +18,16 @@ export function buildExecutionPlan(
18
18
originalGroupedFieldSet : GroupedFieldSet ,
19
19
parentDeferUsages : DeferUsageSet = new Set < DeferUsage > ( ) ,
20
20
) : ExecutionPlan {
21
- const groupedFieldSet = new Map < string , FieldGroup > ( ) ;
22
- const newGroupedFieldSets = new Map < DeferUsageSet , Map < string , FieldGroup > > ( ) ;
23
- for ( const [ responseKey , fieldGroup ] of originalGroupedFieldSet ) {
24
- const filteredDeferUsageSet = getFilteredDeferUsageSet ( fieldGroup ) ;
21
+ const groupedFieldSet = new Map < string , FieldDetailsList > ( ) ;
22
+ const newGroupedFieldSets = new Map <
23
+ DeferUsageSet ,
24
+ Map < string , FieldDetailsList >
25
+ > ( ) ;
26
+ for ( const [ responseKey , fieldDetailsList ] of originalGroupedFieldSet ) {
27
+ const filteredDeferUsageSet = getFilteredDeferUsageSet ( fieldDetailsList ) ;
25
28
26
29
if ( isSameSet ( filteredDeferUsageSet , parentDeferUsages ) ) {
27
- groupedFieldSet . set ( responseKey , fieldGroup ) ;
30
+ groupedFieldSet . set ( responseKey , fieldDetailsList ) ;
28
31
continue ;
29
32
}
30
33
@@ -36,7 +39,7 @@ export function buildExecutionPlan(
36
39
newGroupedFieldSet = new Map ( ) ;
37
40
newGroupedFieldSets . set ( filteredDeferUsageSet , newGroupedFieldSet ) ;
38
41
}
39
- newGroupedFieldSet . set ( responseKey , fieldGroup ) ;
42
+ newGroupedFieldSet . set ( responseKey , fieldDetailsList ) ;
40
43
}
41
44
42
45
return {
@@ -46,10 +49,10 @@ export function buildExecutionPlan(
46
49
}
47
50
48
51
function getFilteredDeferUsageSet (
49
- fieldGroup : FieldGroup ,
52
+ fieldDetailsList : FieldDetailsList ,
50
53
) : ReadonlySet < DeferUsage > {
51
54
const filteredDeferUsageSet = new Set < DeferUsage > ( ) ;
52
- for ( const fieldDetails of fieldGroup ) {
55
+ for ( const fieldDetails of fieldDetailsList ) {
53
56
const deferUsage = fieldDetails . deferUsage ;
54
57
if ( deferUsage === undefined ) {
55
58
filteredDeferUsageSet . clear ( ) ;
0 commit comments