Skip to content

Commit 8427cd1

Browse files
committed
refactor: discriminators due [email protected] api changes
1 parent 35cab05 commit 8427cd1

9 files changed

+210
-156
lines changed

src/__tests__/composeWithMongooseDiscriminators-test.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ describe('composeWithMongooseDiscriminators ->', () => {
4141
});
4242
const filterArgInFindOne: any = typeComposer.getResolver('findOne').getArg('filter');
4343
const inputComposer = schemaComposer.createInputTC(filterArgInFindOne.type);
44-
expect(inputComposer.isRequired('kind')).toBe(true);
44+
expect(inputComposer.isFieldNonNull('kind')).toBe(true);
4545
});
4646

4747
it('should proceed customizationOptions.inputType.fields.required', () => {
@@ -53,8 +53,8 @@ describe('composeWithMongooseDiscriminators ->', () => {
5353
},
5454
}).getInputTypeComposer();
5555

56-
expect(itc.isRequired('name')).toBe(true);
57-
expect(itc.isRequired('friends')).toBe(true);
56+
expect(itc.isFieldNonNull('name')).toBe(true);
57+
expect(itc.isFieldNonNull('friends')).toBe(true);
5858
});
5959

6060
it('should be passed down record opts to resolvers', () => {
@@ -68,8 +68,8 @@ describe('composeWithMongooseDiscriminators ->', () => {
6868
},
6969
},
7070
});
71-
const createOneRecordArgTC = typeComposer.getResolver('createOne').getArgTC('record');
72-
expect(createOneRecordArgTC.isRequired('name')).toBe(true);
71+
const createOneRecordArgTC = typeComposer.getResolver('createOne').getArgITC('record');
72+
expect(createOneRecordArgTC.isFieldNonNull('name')).toBe(true);
7373
expect(createOneRecordArgTC.hasField('friends')).toBe(false);
7474
});
7575

@@ -84,8 +84,8 @@ describe('composeWithMongooseDiscriminators ->', () => {
8484
},
8585
},
8686
});
87-
const createManyRecordsArgTC = typeComposer.getResolver('createMany').getArgTC('records');
88-
expect(createManyRecordsArgTC.isRequired('name')).toBe(true);
87+
const createManyRecordsArgTC = typeComposer.getResolver('createMany').getArgITC('records');
88+
expect(createManyRecordsArgTC.isFieldNonNull('name')).toBe(true);
8989
expect(createManyRecordsArgTC.hasField('friends')).toBe(false);
9090
});
9191
});

src/discriminators/DiscriminatorTypeComposer.d.ts

Lines changed: 39 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import {
2-
ComposeFieldConfig,
3-
ComposeFieldConfigMap,
2+
ObjectTypeComposerFieldConfigDefinition,
3+
ObjectTypeComposerFieldConfigMapDefinition,
4+
ObjectTypeComposerFieldConfigAsObjectDefinition,
45
EnumTypeComposer,
5-
GetRecordIdFn,
6+
ObjectTypeComposerGetRecordIdFn,
67
InterfaceTypeComposer,
7-
RelationOpts,
8+
ObjectTypeComposerRelationOpts,
89
SchemaComposer,
910
ObjectTypeComposer,
1011
} from 'graphql-compose';
@@ -59,33 +60,41 @@ export class DiscriminatorTypeComposer<
5960
// ------------------------------------------------
6061
public setField(
6162
fieldName: string,
62-
fieldConfig: ComposeFieldConfig<TBaseModel, TContext>,
63+
fieldConfig: ObjectTypeComposerFieldConfigDefinition<TBaseModel, TContext>,
6364
): this;
6465

6566
public setField<TArgs>(
6667
fieldName: string,
67-
fieldConfig: ComposeFieldConfig<TBaseModel, TContext, TArgs>,
68+
fieldConfig: ObjectTypeComposerFieldConfigDefinition<
69+
TBaseModel,
70+
TContext,
71+
TArgs
72+
>,
6873
): this;
6974

70-
public setFields(fields: ComposeFieldConfigMap<TBaseModel, TContext>): this;
75+
public setFields(
76+
fields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
77+
): this;
7178

72-
public setFields(fields: ComposeFieldConfigMap<TBaseModel, TContext>): this;
79+
public setFields(
80+
fields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
81+
): this;
7382

7483
// discriminators must have all interface fields
7584
public addFields(
76-
newFields: ComposeFieldConfigMap<TBaseModel, TContext>,
85+
newFields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
7786
): this;
7887

7988
public addFields(
80-
newFields: ComposeFieldConfigMap<TBaseModel, TContext>,
89+
newFields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
8190
): this;
8291

8392
public addNestedFields(
84-
newFields: ComposeFieldConfigMap<TBaseModel, TContext>,
93+
newFields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
8594
): this;
8695

8796
public addNestedFields(
88-
newFields: ComposeFieldConfigMap<TBaseModel, TContext>,
97+
newFields: ObjectTypeComposerFieldConfigMapDefinition<TBaseModel, TContext>,
8998
): this;
9099

91100
public removeField(fieldNameOrArray: string | string[]): this;
@@ -94,7 +103,9 @@ export class DiscriminatorTypeComposer<
94103

95104
public extendField(
96105
fieldName: string,
97-
partialFieldConfig: ComposeFieldConfig<TBaseModel, TContext>,
106+
partialFieldConfig: Partial<
107+
ObjectTypeComposerFieldConfigAsObjectDefinition<TBaseModel, TContext>
108+
>,
98109
): this;
99110

100111
public reorderFields(names: string[]): this;
@@ -109,13 +120,25 @@ export class DiscriminatorTypeComposer<
109120

110121
public addRelation(
111122
fieldName: string,
112-
relationOpts: RelationOpts<any, TBaseModel, TContext, any>,
123+
ObjectTypeComposerRelationOpts: ObjectTypeComposerRelationOpts<
124+
any,
125+
TBaseModel,
126+
TContext,
127+
any
128+
>,
113129
): this;
114130

115131
public addRelation<TRelationSource, TArgs>(
116132
fieldName: string,
117-
relationOpts: RelationOpts<TRelationSource, TBaseModel, TContext, TArgs>,
133+
ObjectTypeComposerRelationOpts: ObjectTypeComposerRelationOpts<
134+
TRelationSource,
135+
TBaseModel,
136+
TContext,
137+
TArgs
138+
>,
118139
): this;
119140

120-
public setRecordIdFn(fn: GetRecordIdFn<TBaseModel, TContext>): this;
141+
public setRecordIdFn(
142+
fn: ObjectTypeComposerGetRecordIdFn<TBaseModel, TContext>,
143+
): this;
121144
}

0 commit comments

Comments
 (0)