refactor codebase and pothos structure

This commit is contained in:
2024-10-07 10:07:08 +07:00
parent 29ec9c5360
commit dfa6b35399
31 changed files with 997 additions and 664 deletions

View File

@@ -1,20 +1,29 @@
import { ApolloDriverConfig } from '@nestjs/apollo';
import { MiddlewareConsumer, Module } from '@nestjs/common';
import { GraphQLModule } from '@nestjs/graphql';
import { ApolloDriver, ApolloDriverConfig } from '@nestjs/apollo';
import { PothosModule } from '@smatch-corp/nestjs-pothos';
import { PothosApolloDriver } from '@smatch-corp/nestjs-pothos-apollo-driver';
import { createBuilder } from './graphql.builder';
import { PrismaService } from '../prisma/prisma.service';
import { schema } from './schema';
import { GraphQLValidationMiddleware } from 'src/middlewares/graphql.middleware';
import { PrismaModule } from 'src/prisma/prisma.module';
import { UserModule } from 'src/user/user.module';
import { GraphqlService } from './graphql.service';
@Module({
imports: [
PrismaModule,
UserModule,
PothosModule.forRoot({
builder: {
inject: [PrismaService],
useFactory: (prisma: PrismaService) => createBuilder(prisma),
},
}),
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
schema: schema,
debug: true,
allowBatchedHttpRequests: true,
introspection: true,
driver: PothosApolloDriver,
}),
],
providers: [PrismaService],
providers: [GraphqlService],
})
export class GraphqlModule {
configure(consumer: MiddlewareConsumer) {