Skip to content

Commit e6f8385

Browse files
committed
refactor: examples/user on graphql-compose-mongoose syntax
1 parent 6278cc0 commit e6f8385

File tree

2 files changed

+43
-48
lines changed

2 files changed

+43
-48
lines changed

examples/user/models/user.ts

-33
Original file line numberDiff line numberDiff line change
@@ -105,36 +105,3 @@ UserTC.addFields({
105105
},
106106
},
107107
});
108-
109-
UserTC.setResolver(
110-
'findMany',
111-
UserTC.getResolver('findMany').addFilterArg({
112-
name: 'geoDistance',
113-
type: `input GeoDistance {
114-
lng: Float!
115-
lat: Float!
116-
# Distance in meters
117-
distance: Float!
118-
}`,
119-
description: 'Search by distance in meters',
120-
query: (rawQuery, value) => {
121-
if (!value.lng || !value.lat || !value.distance) return;
122-
// read more https://docs.mongodb.com/manual/tutorial/query-a-2dsphere-index/
123-
rawQuery['address.geo'] = {
124-
$near: {
125-
$geometry: {
126-
type: 'Point',
127-
coordinates: [value.lng, value.lat],
128-
},
129-
$maxDistance: value.distance, // <distance in meters>
130-
},
131-
};
132-
},
133-
})
134-
// /* FOR DEBUG */
135-
// .debug()
136-
// /* OR MORE PRECISELY */
137-
// .debugParams()
138-
// .debugPayload()
139-
// .debugExecTime()
140-
);

examples/user/schema.ts

+43-15
Original file line numberDiff line numberDiff line change
@@ -11,27 +11,55 @@ import { UserTC } from './models/user';
1111

1212
// create GraphQL Schema with all available resolvers for User Type
1313
schemaComposer.Query.addFields({
14-
userById: UserTC.getResolver('findById'),
15-
userByIds: UserTC.getResolver('findByIds'),
16-
userOne: UserTC.getResolver('findOne'),
17-
userMany: UserTC.getResolver('findMany'), // .debug(), // debug info to console for this resolver
18-
userTotal: UserTC.getResolver('count'),
19-
userConnection: UserTC.getResolver('connection'),
20-
userPagination: UserTC.getResolver('pagination'),
14+
userById: UserTC.mongooseResolvers.findById(),
15+
userByIds: UserTC.mongooseResolvers.findByIds(),
16+
userOne: UserTC.mongooseResolvers.findOne(),
17+
userMany: UserTC.mongooseResolvers.findMany().addFilterArg({
18+
name: 'geoDistance',
19+
type: `input GeoDistance {
20+
lng: Float!
21+
lat: Float!
22+
# Distance in meters
23+
distance: Float!
24+
}`,
25+
description: 'Search by distance in meters',
26+
query: (rawQuery, value) => {
27+
if (!value.lng || !value.lat || !value.distance) return;
28+
// read more https://docs.mongodb.com/manual/tutorial/query-a-2dsphere-index/
29+
rawQuery['address.geo'] = {
30+
$near: {
31+
$geometry: {
32+
type: 'Point',
33+
coordinates: [value.lng, value.lat],
34+
},
35+
$maxDistance: value.distance, // <distance in meters>
36+
},
37+
};
38+
},
39+
}),
40+
// /* FOR DEBUG */
41+
// .debug()
42+
// /* OR MORE PRECISELY */
43+
// .debugParams()
44+
// .debugPayload()
45+
// .debugExecTime()
46+
userTotal: UserTC.mongooseResolvers.count(),
47+
userConnection: UserTC.mongooseResolvers.connection(),
48+
userPagination: UserTC.mongooseResolvers.pagination(),
2149
});
2250

2351
// For debug purposes you may display resolver internals in the following manner:
2452
// console.log(UserTC.getResolver('findMany').toString());
2553

2654
schemaComposer.Mutation.addFields({
27-
userCreate: UserTC.getResolver('createOne'),
28-
userCreateMany: UserTC.getResolver('createMany'),
29-
userUpdateById: UserTC.getResolver('updateById'),
30-
userUpdateOne: UserTC.getResolver('updateOne'),
31-
userUpdateMany: UserTC.getResolver('updateMany'),
32-
userRemoveById: UserTC.getResolver('removeById'),
33-
userRemoveOne: UserTC.getResolver('removeOne'),
34-
userRemoveMany: UserTC.getResolver('removeMany'),
55+
userCreate: UserTC.mongooseResolvers.createOne(),
56+
userCreateMany: UserTC.mongooseResolvers.createMany(),
57+
userUpdateById: UserTC.mongooseResolvers.updateById(),
58+
userUpdateOne: UserTC.mongooseResolvers.updateOne(),
59+
userUpdateMany: UserTC.mongooseResolvers.updateMany(),
60+
userRemoveById: UserTC.mongooseResolvers.removeById(),
61+
userRemoveOne: UserTC.mongooseResolvers.removeOne(),
62+
userRemoveMany: UserTC.mongooseResolvers.removeMany(),
3563
});
3664

3765
const graphqlSchema = schemaComposer.buildSchema();

0 commit comments

Comments
 (0)