@apollo/federation-internals 2.4.2 → 2.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/operations.d.ts +18 -6
- package/dist/operations.d.ts.map +1 -1
- package/dist/operations.js +92 -35
- package/dist/operations.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/operations.test.ts +175 -10
- package/src/operations.ts +184 -36
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# CHANGELOG for `@apollo/federation-internals`
|
|
2
2
|
|
|
3
|
+
## 2.4.3
|
|
4
|
+
### Patch Changes
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
- Improves the heuristics used to try to reuse the query named fragments in subgraph fetches. Said fragment will be reused ([#2541](https://github.com/apollographql/federation/pull/2541))
|
|
8
|
+
more often, which can lead to smaller subgraph queries (and hence overall faster processing).
|
|
9
|
+
|
|
3
10
|
## 2.4.2
|
|
4
11
|
### Patch Changes
|
|
5
12
|
|
package/dist/operations.d.ts
CHANGED
|
@@ -108,6 +108,7 @@ export declare class NamedFragmentDefinition extends DirectiveTargetElement<Name
|
|
|
108
108
|
readonly name: string;
|
|
109
109
|
readonly typeCondition: CompositeType;
|
|
110
110
|
private _selectionSet;
|
|
111
|
+
private readonly selectionSetsAtTypesCache;
|
|
111
112
|
constructor(schema: Schema, name: string, typeCondition: CompositeType, directives?: Directive<NamedFragmentDefinition>[]);
|
|
112
113
|
setSelectionSet(selectionSet: SelectionSet): NamedFragmentDefinition;
|
|
113
114
|
get selectionSet(): SelectionSet;
|
|
@@ -115,7 +116,7 @@ export declare class NamedFragmentDefinition extends DirectiveTargetElement<Name
|
|
|
115
116
|
collectUsedFragmentNames(collector: Map<string, number>): void;
|
|
116
117
|
toFragmentDefinitionNode(): FragmentDefinitionNode;
|
|
117
118
|
canApplyAtType(type: CompositeType): boolean;
|
|
118
|
-
|
|
119
|
+
selectionSetAtType(type: CompositeType): SelectionSet;
|
|
119
120
|
toString(indent?: string): string;
|
|
120
121
|
}
|
|
121
122
|
export declare class NamedFragments {
|
|
@@ -130,6 +131,8 @@ export declare class NamedFragments {
|
|
|
130
131
|
has(name: string): boolean;
|
|
131
132
|
definitions(): readonly NamedFragmentDefinition[];
|
|
132
133
|
map(mapper: (def: NamedFragmentDefinition) => NamedFragmentDefinition): NamedFragments;
|
|
134
|
+
mapToExpandedSelectionSets(mapper: (selectionSet: SelectionSet) => SelectionSet | undefined, recreateFct?: (frag: NamedFragmentDefinition, newSelectionSet: SelectionSet) => NamedFragmentDefinition): NamedFragments | undefined;
|
|
135
|
+
rebaseOn(schema: Schema): NamedFragments | undefined;
|
|
133
136
|
validate(variableDefinitions: VariableDefinitions): void;
|
|
134
137
|
toFragmentDefinitionNodes(): FragmentDefinitionNode[];
|
|
135
138
|
toString(indent?: string): string;
|
|
@@ -164,9 +167,12 @@ export declare class SelectionSet {
|
|
|
164
167
|
collectVariables(collector: VariableCollector): void;
|
|
165
168
|
collectUsedFragmentNames(collector: Map<string, number>): void;
|
|
166
169
|
optimize(fragments?: NamedFragments): SelectionSet;
|
|
170
|
+
optimizeSelections(fragments: NamedFragments): SelectionSet;
|
|
167
171
|
expandAllFragments(): SelectionSet;
|
|
168
172
|
expandFragments(names: string[], updatedFragments: NamedFragments | undefined): SelectionSet;
|
|
169
|
-
trimUnsatisfiableBranches(parentType: CompositeType
|
|
173
|
+
trimUnsatisfiableBranches(parentType: CompositeType, options?: {
|
|
174
|
+
recursive?: boolean;
|
|
175
|
+
}): SelectionSet;
|
|
170
176
|
lazyMap(mapper: (selection: Selection) => Selection | readonly Selection[] | SelectionSet | undefined, options?: {
|
|
171
177
|
fragments?: NamedFragments | null;
|
|
172
178
|
parentType?: CompositeType;
|
|
@@ -182,7 +188,7 @@ export declare class SelectionSet {
|
|
|
182
188
|
private triviallyNestedSelectionsForKey;
|
|
183
189
|
private mergeSameKeySelections;
|
|
184
190
|
contains(that: SelectionSet): boolean;
|
|
185
|
-
|
|
191
|
+
diffWithNamedFragmentIfContained(candidate: NamedFragmentDefinition, parentType: CompositeType): {
|
|
186
192
|
contains: boolean;
|
|
187
193
|
diff?: SelectionSet;
|
|
188
194
|
};
|
|
@@ -261,7 +267,9 @@ declare abstract class AbstractSelection<TElement extends OperationElement, TIsL
|
|
|
261
267
|
abstract hasDefer(): boolean;
|
|
262
268
|
abstract expandAllFragments(): TOwnType | readonly Selection[];
|
|
263
269
|
abstract expandFragments(names: string[], updatedFragments: NamedFragments | undefined): TOwnType | readonly Selection[];
|
|
264
|
-
abstract trimUnsatisfiableBranches(parentType: CompositeType
|
|
270
|
+
abstract trimUnsatisfiableBranches(parentType: CompositeType, options?: {
|
|
271
|
+
recursive?: boolean;
|
|
272
|
+
}): TOwnType | SelectionSet | undefined;
|
|
265
273
|
minus(that: Selection): TOwnType | undefined;
|
|
266
274
|
protected tryOptimizeSubselectionOnce(_: {
|
|
267
275
|
parentType: CompositeType;
|
|
@@ -308,7 +316,9 @@ export declare class FieldSelection extends AbstractSelection<Field<any>, undefi
|
|
|
308
316
|
withNormalizedDefer(normalizer: DeferNormalizer): FieldSelection;
|
|
309
317
|
hasDefer(): boolean;
|
|
310
318
|
expandAllFragments(): FieldSelection;
|
|
311
|
-
trimUnsatisfiableBranches(_: CompositeType
|
|
319
|
+
trimUnsatisfiableBranches(_: CompositeType, options?: {
|
|
320
|
+
recursive?: boolean;
|
|
321
|
+
}): FieldSelection;
|
|
312
322
|
expandFragments(names: string[], updatedFragments: NamedFragments | undefined): FieldSelection;
|
|
313
323
|
equals(that: Selection): boolean;
|
|
314
324
|
contains(that: Selection): boolean;
|
|
@@ -349,7 +359,9 @@ declare class InlineFragmentSelection extends FragmentSelection {
|
|
|
349
359
|
};
|
|
350
360
|
withoutDefer(labelsToRemove?: Set<string>): InlineFragmentSelection | SelectionSet;
|
|
351
361
|
withNormalizedDefer(normalizer: DeferNormalizer): InlineFragmentSelection | SelectionSet;
|
|
352
|
-
trimUnsatisfiableBranches(currentType: CompositeType
|
|
362
|
+
trimUnsatisfiableBranches(currentType: CompositeType, options?: {
|
|
363
|
+
recursive?: boolean;
|
|
364
|
+
}): FragmentSelection | SelectionSet | undefined;
|
|
353
365
|
expandAllFragments(): FragmentSelection;
|
|
354
366
|
expandFragments(names: string[], updatedFragments: NamedFragments | undefined): FragmentSelection;
|
|
355
367
|
equals(that: Selection): boolean;
|
package/dist/operations.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
|
package/dist/operations.js
CHANGED
|
@@ -465,8 +465,11 @@ class Operation {
|
|
|
465
465
|
}
|
|
466
466
|
}
|
|
467
467
|
const toDeoptimize = (0, utils_1.mapEntries)(usages).filter(([_, count]) => count < minUsagesToOptimize).map(([name]) => name);
|
|
468
|
-
|
|
469
|
-
|
|
468
|
+
if (toDeoptimize.length > 0) {
|
|
469
|
+
const newFragments = (_a = optimizedSelection.fragments) === null || _a === void 0 ? void 0 : _a.without(toDeoptimize);
|
|
470
|
+
optimizedSelection = optimizedSelection.expandFragments(toDeoptimize, newFragments);
|
|
471
|
+
optimizedSelection = optimizedSelection.trimUnsatisfiableBranches(optimizedSelection.parentType);
|
|
472
|
+
}
|
|
470
473
|
return new Operation(this.schema, this.rootKind, optimizedSelection, this.variableDefinitions, this.name);
|
|
471
474
|
}
|
|
472
475
|
expandAllFragments() {
|
|
@@ -525,9 +528,11 @@ class NamedFragmentDefinition extends definitions_1.DirectiveTargetElement {
|
|
|
525
528
|
super(schema, directives);
|
|
526
529
|
this.name = name;
|
|
527
530
|
this.typeCondition = typeCondition;
|
|
531
|
+
this.selectionSetsAtTypesCache = new Map();
|
|
528
532
|
}
|
|
529
533
|
setSelectionSet(selectionSet) {
|
|
530
534
|
(0, utils_1.assert)(!this._selectionSet, 'Attempting to set the selection set of a fragment definition already built');
|
|
535
|
+
(0, utils_1.assert)(selectionSet.parentType === this.typeCondition, `Fragment selection set parent is ${selectionSet.parentType} differs from the fragment condition type ${this.typeCondition}`);
|
|
531
536
|
this._selectionSet = selectionSet;
|
|
532
537
|
return this;
|
|
533
538
|
}
|
|
@@ -559,25 +564,21 @@ class NamedFragmentDefinition extends definitions_1.DirectiveTargetElement {
|
|
|
559
564
|
};
|
|
560
565
|
}
|
|
561
566
|
canApplyAtType(type) {
|
|
562
|
-
|
|
563
|
-
return applyAtType
|
|
564
|
-
&& this.validForSchema(type.schema());
|
|
567
|
+
return (0, types_1.sameType)(type, this.typeCondition) || (0, definitions_1.runtimeTypesIntersects)(type, this.typeCondition);
|
|
565
568
|
}
|
|
566
|
-
|
|
567
|
-
if (
|
|
568
|
-
return
|
|
569
|
+
selectionSetAtType(type) {
|
|
570
|
+
if ((0, types_1.sameType)(type, this.typeCondition) || (0, definitions_1.isObjectType)(this.typeCondition)) {
|
|
571
|
+
return this.selectionSet;
|
|
569
572
|
}
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
return false;
|
|
573
|
+
if (!(0, definitions_1.isObjectType)(type)) {
|
|
574
|
+
return this.selectionSet;
|
|
573
575
|
}
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
catch (e) {
|
|
579
|
-
return false;
|
|
576
|
+
let selectionSet = this.selectionSetsAtTypesCache.get(type.name);
|
|
577
|
+
if (!selectionSet) {
|
|
578
|
+
selectionSet = this.selectionSet.trimUnsatisfiableBranches(type, { recursive: false });
|
|
579
|
+
this.selectionSetsAtTypesCache.set(type.name, selectionSet);
|
|
580
580
|
}
|
|
581
|
+
return selectionSet;
|
|
581
582
|
}
|
|
582
583
|
toString(indent) {
|
|
583
584
|
return (indent !== null && indent !== void 0 ? indent : '') + `fragment ${this.name} on ${this.typeCondition}${this.appliedDirectivesToString()} ${this.selectionSet.toString(false, true, indent)}`;
|
|
@@ -640,6 +641,46 @@ class NamedFragments {
|
|
|
640
641
|
}
|
|
641
642
|
return mapped;
|
|
642
643
|
}
|
|
644
|
+
mapToExpandedSelectionSets(mapper, recreateFct = (f, s) => f.withUpdatedSelectionSet(s)) {
|
|
645
|
+
const fragmentsMap = new Map();
|
|
646
|
+
const removedFragments = new Set();
|
|
647
|
+
for (const fragment of this.definitions()) {
|
|
648
|
+
const mappedSelectionSet = mapper(fragment.selectionSet.expandAllFragments().trimUnsatisfiableBranches(fragment.typeCondition));
|
|
649
|
+
if (!mappedSelectionSet) {
|
|
650
|
+
removedFragments.add(fragment.name);
|
|
651
|
+
continue;
|
|
652
|
+
}
|
|
653
|
+
const otherFragmentsUsages = new Map();
|
|
654
|
+
fragment.collectUsedFragmentNames(otherFragmentsUsages);
|
|
655
|
+
fragmentsMap.set(fragment.name, {
|
|
656
|
+
original: fragment,
|
|
657
|
+
mappedSelectionSet,
|
|
658
|
+
dependsOn: Array.from(otherFragmentsUsages.keys()),
|
|
659
|
+
});
|
|
660
|
+
}
|
|
661
|
+
const mappedFragments = new NamedFragments();
|
|
662
|
+
while (fragmentsMap.size > 0) {
|
|
663
|
+
for (const [name, info] of fragmentsMap) {
|
|
664
|
+
if (info.dependsOn.every((n) => mappedFragments.has(n) || removedFragments.has(n))) {
|
|
665
|
+
const reoptimizedSelectionSet = info.mappedSelectionSet.optimize(mappedFragments);
|
|
666
|
+
mappedFragments.add(recreateFct(info.original, reoptimizedSelectionSet));
|
|
667
|
+
fragmentsMap.delete(name);
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
return mappedFragments.isEmpty() ? undefined : mappedFragments;
|
|
672
|
+
}
|
|
673
|
+
rebaseOn(schema) {
|
|
674
|
+
return this.mapToExpandedSelectionSets((s) => {
|
|
675
|
+
const rebasedType = schema.type(s.parentType.name);
|
|
676
|
+
try {
|
|
677
|
+
return rebasedType && (0, definitions_1.isCompositeType)(rebasedType) ? s.rebaseOn(rebasedType) : undefined;
|
|
678
|
+
}
|
|
679
|
+
catch (e) {
|
|
680
|
+
return undefined;
|
|
681
|
+
}
|
|
682
|
+
}, (orig, newSelection) => new NamedFragmentDefinition(schema, orig.name, newSelection.parentType).setSelectionSet(newSelection));
|
|
683
|
+
}
|
|
643
684
|
validate(variableDefinitions) {
|
|
644
685
|
for (const fragment of this.fragments.values()) {
|
|
645
686
|
fragment.selectionSet.validate(variableDefinitions);
|
|
@@ -755,6 +796,13 @@ class SelectionSet {
|
|
|
755
796
|
if (!fragments || fragments.isEmpty()) {
|
|
756
797
|
return this;
|
|
757
798
|
}
|
|
799
|
+
const wrapped = new InlineFragmentSelection(new FragmentElement(this.parentType, this.parentType), this);
|
|
800
|
+
const optimized = wrapped.optimize(fragments);
|
|
801
|
+
return optimized instanceof FragmentSpreadSelection
|
|
802
|
+
? selectionSetOf(this.parentType, optimized, fragments)
|
|
803
|
+
: optimized.selectionSet;
|
|
804
|
+
}
|
|
805
|
+
optimizeSelections(fragments) {
|
|
758
806
|
(0, utils_1.assert)(!this.fragments || this.fragments.isEmpty(), `Should not be called on selection that already has named fragments, but got ${this.fragments}`);
|
|
759
807
|
return this.lazyMap((selection) => selection.optimize(fragments), { fragments });
|
|
760
808
|
}
|
|
@@ -767,8 +815,8 @@ class SelectionSet {
|
|
|
767
815
|
}
|
|
768
816
|
return this.lazyMap((selection) => selection.expandFragments(names, updatedFragments), { fragments: updatedFragments !== null && updatedFragments !== void 0 ? updatedFragments : null });
|
|
769
817
|
}
|
|
770
|
-
trimUnsatisfiableBranches(parentType) {
|
|
771
|
-
return this.lazyMap((selection) => selection.trimUnsatisfiableBranches(parentType), { parentType });
|
|
818
|
+
trimUnsatisfiableBranches(parentType, options) {
|
|
819
|
+
return this.lazyMap((selection) => selection.trimUnsatisfiableBranches(parentType, options), { parentType });
|
|
772
820
|
}
|
|
773
821
|
lazyMap(mapper, options) {
|
|
774
822
|
var _a;
|
|
@@ -881,9 +929,14 @@ class SelectionSet {
|
|
|
881
929
|
}
|
|
882
930
|
return true;
|
|
883
931
|
}
|
|
884
|
-
|
|
932
|
+
diffWithNamedFragmentIfContained(candidate, parentType) {
|
|
933
|
+
const that = candidate.selectionSetAtType(parentType);
|
|
885
934
|
if (this.contains(that)) {
|
|
886
|
-
|
|
935
|
+
let updatedThis = this.expandFragments([candidate.name], this.fragments);
|
|
936
|
+
if (updatedThis !== this) {
|
|
937
|
+
updatedThis = updatedThis.trimUnsatisfiableBranches(parentType);
|
|
938
|
+
}
|
|
939
|
+
const diff = updatedThis.minus(that);
|
|
887
940
|
return { contains: true, diff: diff.isEmpty() ? undefined : diff };
|
|
888
941
|
}
|
|
889
942
|
return { contains: false };
|
|
@@ -1329,7 +1382,7 @@ class FieldSelection extends AbstractSelection {
|
|
|
1329
1382
|
return this.element.key();
|
|
1330
1383
|
}
|
|
1331
1384
|
optimize(fragments) {
|
|
1332
|
-
let optimizedSelection = this.selectionSet ? this.selectionSet.
|
|
1385
|
+
let optimizedSelection = this.selectionSet ? this.selectionSet.optimizeSelections(fragments) : undefined;
|
|
1333
1386
|
const fieldBaseType = (0, definitions_1.baseType)(this.element.definition.type);
|
|
1334
1387
|
if ((0, definitions_1.isCompositeType)(fieldBaseType) && optimizedSelection) {
|
|
1335
1388
|
const optimized = this.tryOptimizeSubselectionWithFragments({
|
|
@@ -1348,7 +1401,7 @@ class FieldSelection extends AbstractSelection {
|
|
|
1348
1401
|
tryOptimizeSubselectionOnce({ parentType, subSelection, candidates, fragments, }) {
|
|
1349
1402
|
let optimizedSelection = subSelection;
|
|
1350
1403
|
for (const candidate of candidates) {
|
|
1351
|
-
const { contains, diff } = optimizedSelection.
|
|
1404
|
+
const { contains, diff } = optimizedSelection.diffWithNamedFragmentIfContained(candidate, parentType);
|
|
1352
1405
|
if (contains) {
|
|
1353
1406
|
const spread = new FragmentSpreadSelection(parentType, fragments, candidate, []);
|
|
1354
1407
|
optimizedSelection = diff
|
|
@@ -1433,15 +1486,15 @@ class FieldSelection extends AbstractSelection {
|
|
|
1433
1486
|
expandAllFragments() {
|
|
1434
1487
|
return this.mapToSelectionSet((s) => s.expandAllFragments());
|
|
1435
1488
|
}
|
|
1436
|
-
trimUnsatisfiableBranches(_) {
|
|
1437
|
-
var _a;
|
|
1489
|
+
trimUnsatisfiableBranches(_, options) {
|
|
1490
|
+
var _a, _b;
|
|
1438
1491
|
if (!this.selectionSet) {
|
|
1439
1492
|
return this;
|
|
1440
1493
|
}
|
|
1441
1494
|
const base = (0, definitions_1.baseType)(this.element.definition.type);
|
|
1442
1495
|
(0, utils_1.assert)((0, definitions_1.isCompositeType)(base), () => `Field ${this.element} should not have a sub-selection`);
|
|
1443
|
-
const trimmed = this.mapToSelectionSet((s) => s.trimUnsatisfiableBranches(base));
|
|
1444
|
-
if ((
|
|
1496
|
+
const trimmed = ((_a = options === null || options === void 0 ? void 0 : options.recursive) !== null && _a !== void 0 ? _a : true) ? this.mapToSelectionSet((s) => s.trimUnsatisfiableBranches(base)) : this;
|
|
1497
|
+
if ((_b = trimmed.selectionSet) === null || _b === void 0 ? void 0 : _b.isEmpty()) {
|
|
1445
1498
|
return trimmed.withUpdatedSelectionSet(selectionSetOfElement(new Field(base.typenameField(), undefined, [new definitions_1.Directive('include', { 'if': false })])));
|
|
1446
1499
|
}
|
|
1447
1500
|
else {
|
|
@@ -1575,7 +1628,7 @@ class InlineFragmentSelection extends FragmentSelection {
|
|
|
1575
1628
|
};
|
|
1576
1629
|
}
|
|
1577
1630
|
optimize(fragments) {
|
|
1578
|
-
let optimizedSelection = this.selectionSet.
|
|
1631
|
+
let optimizedSelection = this.selectionSet.optimizeSelections(fragments);
|
|
1579
1632
|
const typeCondition = this.element.typeCondition;
|
|
1580
1633
|
if (typeCondition) {
|
|
1581
1634
|
const optimized = this.tryOptimizeSubselectionWithFragments({
|
|
@@ -1595,7 +1648,7 @@ class InlineFragmentSelection extends FragmentSelection {
|
|
|
1595
1648
|
tryOptimizeSubselectionOnce({ parentType, subSelection, candidates, fragments, }) {
|
|
1596
1649
|
let optimizedSelection = subSelection;
|
|
1597
1650
|
for (const candidate of candidates) {
|
|
1598
|
-
const { contains, diff } = optimizedSelection.
|
|
1651
|
+
const { contains, diff } = optimizedSelection.diffWithNamedFragmentIfContained(candidate, parentType);
|
|
1599
1652
|
if (contains) {
|
|
1600
1653
|
if (!diff && (0, types_1.sameType)(this.element.typeCondition, candidate.typeCondition)) {
|
|
1601
1654
|
let spreadDirectives = this.element.appliedDirectives;
|
|
@@ -1645,12 +1698,13 @@ class InlineFragmentSelection extends FragmentSelection {
|
|
|
1645
1698
|
? this
|
|
1646
1699
|
: this.withUpdatedComponents(newElement, newSelection);
|
|
1647
1700
|
}
|
|
1648
|
-
trimUnsatisfiableBranches(currentType) {
|
|
1649
|
-
var _a, _b;
|
|
1701
|
+
trimUnsatisfiableBranches(currentType, options) {
|
|
1702
|
+
var _a, _b, _c;
|
|
1703
|
+
const recursive = (_a = options === null || options === void 0 ? void 0 : options.recursive) !== null && _a !== void 0 ? _a : true;
|
|
1650
1704
|
const thisCondition = this.element.typeCondition;
|
|
1651
1705
|
if (this.element.appliedDirectives.length === 0) {
|
|
1652
1706
|
if (!thisCondition || currentType === this.element.typeCondition) {
|
|
1653
|
-
const trimmed = this.selectionSet.trimUnsatisfiableBranches(currentType);
|
|
1707
|
+
const trimmed = this.selectionSet.trimUnsatisfiableBranches(currentType, options);
|
|
1654
1708
|
return trimmed.isEmpty() ? undefined : trimmed;
|
|
1655
1709
|
}
|
|
1656
1710
|
if ((0, definitions_1.isObjectType)(currentType)) {
|
|
@@ -1658,18 +1712,21 @@ class InlineFragmentSelection extends FragmentSelection {
|
|
|
1658
1712
|
return undefined;
|
|
1659
1713
|
}
|
|
1660
1714
|
else {
|
|
1661
|
-
const trimmed = this.selectionSet.trimUnsatisfiableBranches(currentType);
|
|
1715
|
+
const trimmed = this.selectionSet.trimUnsatisfiableBranches(currentType, options);
|
|
1662
1716
|
return trimmed.isEmpty() ? undefined : trimmed;
|
|
1663
1717
|
}
|
|
1664
1718
|
}
|
|
1665
1719
|
}
|
|
1666
|
-
|
|
1720
|
+
if (!recursive) {
|
|
1721
|
+
return this;
|
|
1722
|
+
}
|
|
1723
|
+
const trimmedSelectionSet = this.selectionSet.trimUnsatisfiableBranches((_b = this.element.typeCondition) !== null && _b !== void 0 ? _b : this.parentType);
|
|
1667
1724
|
if (trimmedSelectionSet.isEmpty()) {
|
|
1668
1725
|
if (this.element.appliedDirectives.length === 0) {
|
|
1669
1726
|
return undefined;
|
|
1670
1727
|
}
|
|
1671
1728
|
else {
|
|
1672
|
-
return this.withUpdatedSelectionSet(selectionSetOfElement(new Field(((
|
|
1729
|
+
return this.withUpdatedSelectionSet(selectionSetOfElement(new Field(((_c = this.element.typeCondition) !== null && _c !== void 0 ? _c : this.parentType).typenameField(), undefined, [new definitions_1.Directive('include', { 'if': false })])));
|
|
1673
1730
|
}
|
|
1674
1731
|
}
|
|
1675
1732
|
if (this.element.appliedDirectives.length === 0 && (0, definitions_1.isAbstractType)(thisCondition)) {
|