Skip to content

Commit 083dff6

Browse files
committed
small fixes
1 parent f091dba commit 083dff6

File tree

4 files changed

+22
-11
lines changed

4 files changed

+22
-11
lines changed

.flowconfig

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
11
[ignore]
2+
.*/__tests__/.*
23
.*/lib/.*
34
.*/dist/.*
45
.*/coverage/.*
56
.*/resources/.*
7+
.*/node_modules/graphql.*
68

79
[include]
810
../graphql-compose/src
11+
../graphql-compose/__forks__/graphql-js/src
912

1013
[libs]
1114

1215
[options]
1316
esproposal.class_instance_fields=enable
17+
suppress_comment= \\(.\\|\n\\)*\\$FlowFixMe
1418
module.name_mapper='^graphql\(.*\)$' -> '/Users/nod/www/_npm/graphql-compose/__forks__/graphql-js/src\1'
1519
module.name_mapper='graphql-compose\(.*\)$' -> '/Users/nod/www/_npm/graphql-compose\1'

src/fieldsConverter.js

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -147,9 +147,7 @@ export function convertModelToGraphQL(
147147
};
148148
});
149149

150-
/* ::` */
151150
typeComposer.addFields(graphqlFields);
152-
/* ::` */
153151
return typeComposer.getType();
154152
}
155153

@@ -198,7 +196,7 @@ export function deriveComplexType(field: MongooseFieldT): ComplexTypesT {
198196
return ComplexTypes.SCALAR;
199197
}
200198

201-
function removePseudoIdField(gqType: GraphQLOutputType): GraphQLOutputType {
199+
function removePseudoIdField(gqType: GraphQLObjectType): GraphQLObjectType {
202200
// remove pseudo object id mongoose field
203201
const composer = new TypeComposer(gqType);
204202
const gqFields = composer.getFields();
@@ -255,10 +253,15 @@ export function embeddedToGraphQL(
255253
}
256254

257255
const typeName = `${prefix}${capitalize(fieldName)}`;
256+
// $FlowFixMe
258257
const fieldAsModel: MongooseModelT = field;
259-
const gqType = convertModelToGraphQL(fieldAsModel, typeName);
258+
let gqType = convertModelToGraphQL(fieldAsModel, typeName);
260259

261-
return removePseudoIdField(gqType);
260+
if (gqType instanceof GraphQLObjectType) {
261+
gqType = removePseudoIdField(gqType);
262+
}
263+
264+
return gqType;
262265
}
263266

264267

@@ -296,8 +299,11 @@ export function documentArrayToGraphQL(
296299

297300
const typeName = `${prefix}${capitalize(_getFieldName(field))}`;
298301

299-
const outputType = convertModelToGraphQL(field, typeName);
300-
return new GraphQLList(removePseudoIdField(outputType));
302+
let outputType = convertModelToGraphQL(field, typeName);
303+
if (outputType instanceof GraphQLObjectType) {
304+
outputType = removePseudoIdField(outputType);
305+
}
306+
return new GraphQLList(outputType);
301307
}
302308

303309

@@ -314,8 +320,8 @@ export function referenceToGraphQL(
314320
const refModelName = objectPath.get(field, 'options.ref');
315321
if (refModelName) {
316322
return GQLReference;
317-
throw new Error('Mongoose REFERENCE to graphQL TYPE not implemented yet. '
318-
+ `Field ${_getFieldName(field)}`);
323+
// throw new Error('Mongoose REFERENCE to graphQL TYPE not implemented yet. '
324+
// + `Field ${_getFieldName(field)}`);
319325
// Storage.UnresolvedRefs.setSubKey(parentTypeName, fieldName, { refModelName });
320326
// return GraphQLReference;
321327
}

src/resolvers/helpers/filter.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { toDottedObject } from '../../utils';
55
import type {
66
GraphQLFieldConfigArgumentMap,
77
ExtendedResolveParams,
8+
MongooseModelT,
89
} from '../../definition';
910

1011
export type filterHelperArgsGenOpts = {
@@ -33,7 +34,7 @@ export const filterHelperArgsGen = (
3334
return {
3435
filter: {
3536
name: 'filter',
36-
type: opts.isRequired ? new GraphQLNonNull(filterType): filterType,
37+
type: opts.isRequired ? new GraphQLNonNull(filterType) : filterType,
3738
description: 'Filter by indexed fields',
3839
},
3940
};

src/resolvers/updateMany.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ export default function updateMany(
5959
);
6060
}
6161

62-
resolveParams.query = model.where({}); // eslint-disable-line
62+
resolveParams.query = model.find();
6363
filterHelper(resolveParams);
6464
skipHelper(resolveParams);
6565
sortHelper(resolveParams);

0 commit comments

Comments
 (0)