update manyyyyyyyyy

This commit is contained in:
2024-11-22 15:06:49 +07:00
parent 8eec1bed55
commit d8a3894aba
10 changed files with 272 additions and 101 deletions

View File

@@ -1,4 +1,4 @@
import { Global, Module } from '@nestjs/common'
import { Global, Logger, Module } from '@nestjs/common'
import { AdminNoteModule } from '../AdminNote/adminnote.module'
import { ApolloDriverConfig } from '@nestjs/apollo'
@@ -93,6 +93,12 @@ import { FinanceModule } from 'src/Finance/finance.module'
debug: process.env.NODE_ENV === 'development' || false,
playground: process.env.NODE_ENV === 'development' || false,
introspection: process.env.NODE_ENV === 'development' || false,
logger: {
debug: (...args) => Logger.debug(...args),
info: (...args) => Logger.log(...args),
warn: (...args) => Logger.warn(...args),
error: (...args) => Logger.error(...args),
},
installSubscriptionHandlers: true,
subscriptions: {
'graphql-ws': {
@@ -104,7 +110,8 @@ import { FinanceModule } from 'src/Finance/finance.module'
throw new Error('No extra provided')
}
// @ts-expect-error: TODO
ctx.extra.request.headers['x-session-id'] = ctx.connectionParams['x-session-id']
ctx.extra.request.headers['x-session-id'] =
ctx.connectionParams['x-session-id']
},
},
},
@@ -128,8 +135,10 @@ import { FinanceModule } from 'src/Finance/finance.module'
websocket: {
req: extra?.request,
pubSub: pubsub,
// @ts-expect-error: TODO
me: await graphqlService.acquireContextFromSessionId(extra.request.headers['x-session-id']),
me: await graphqlService.acquireContextFromSessionId(
// @ts-expect-error: TODO
extra.request.headers['x-session-id'],
),
},
}
}
@@ -139,7 +148,10 @@ import { FinanceModule } from 'src/Finance/finance.module'
req,
me: req ? await graphqlService.acquireContext(req) : null,
pubSub: pubsub,
invalidateCache: () => graphqlService.invalidateCache(req?.headers['x-session-id'] as string),
invalidateCache: () =>
graphqlService.invalidateCache(
req?.headers['x-session-id'] as string,
),
},
}
},
@@ -150,7 +162,8 @@ import { FinanceModule } from 'src/Finance/finance.module'
RedisService,
{
provide: GraphqlService,
useFactory: (prisma: PrismaService, redis: RedisService) => new GraphqlService(prisma, redis),
useFactory: (prisma: PrismaService, redis: RedisService) =>
new GraphqlService(prisma, redis),
inject: [PrismaService, 'REDIS_CLIENT'],
},
{
@@ -168,6 +181,12 @@ import { FinanceModule } from 'src/Finance/finance.module'
useFactory: () => new PubSub(),
},
],
exports: [Builder, PrismaCrudGenerator, GraphqlService, RedisService, 'PUB_SUB'],
exports: [
Builder,
PrismaCrudGenerator,
GraphqlService,
RedisService,
'PUB_SUB',
],
})
export class GraphqlModule {}