Skip to content

Commit dcbd493

Browse files
committed
feat: allow transformer only directives in schema builder
1 parent 5b6991a commit dcbd493

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

modules/module-core/src/utils/schema-builder.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,20 @@ export const buildSchema =
2020
authDirectiveTypeDefs: string;
2121
authDirectiveTransformer: (schema: GraphQLSchema) => GraphQLSchema;
2222
};
23-
directives?: Array<[TypeSource, (schema: GraphQLSchema) => GraphQLSchema]>;
23+
directives?: Array<[TypeSource | undefined, (schema: GraphQLSchema) => GraphQLSchema]>;
2424
} = {}): ApplicationConfig['schemaBuilder'] =>
2525
({ typeDefs: accountsTypeDefs, resolvers: accountsResolvers }) => {
2626
let schema = makeExecutableSchema({
2727
typeDefs: mergeTypeDefs([
2828
...accountsTypeDefs,
2929
...(typeDefs ? [typeDefs] : []),
3030
authDirectiveTypeDefs,
31-
...directives.map(([directiveTypeDefs]) => directiveTypeDefs),
31+
...directives.reduce<TypeSource[]>((acc, [directiveTypeDefs]) => {
32+
if (directiveTypeDefs != null) {
33+
acc.push(directiveTypeDefs);
34+
}
35+
return acc;
36+
}, []),
3237
]),
3338
resolvers: resolvers
3439
? mergeResolvers([resolvers, ...accountsResolvers] as Maybe<

0 commit comments

Comments
 (0)