day len server theo loi Khoi noi, toi xin tuyen bo mien tru trach nhiem

This commit is contained in:
2024-11-05 15:02:53 +07:00
parent 0f68b51d75
commit 56ba2808c8
22 changed files with 482 additions and 63 deletions

View File

@@ -57,7 +57,7 @@ export class MessageSchema extends PothosSchema {
type: this.message(),
description: 'Retrieve a single message by its unique identifier.',
args: this.builder.generator.findUniqueArgs('Message'),
resolve: async (query, root, args) => {
resolve: async (query, _root, args) => {
return await this.prisma.message.findUnique({
...query,
where: args.where,
@@ -69,7 +69,7 @@ export class MessageSchema extends PothosSchema {
description:
'Retrieve a list of messages with optional filtering, ordering, and pagination.',
args: this.builder.generator.findManyArgs('Message'),
resolve: async (query, root, args) => {
resolve: async (query, _root, args) => {
return await this.prisma.message.findMany({
...query,
skip: args.skip ?? undefined,
@@ -83,7 +83,7 @@ export class MessageSchema extends PothosSchema {
type: [this.message()],
description: 'Retrieve a list of messages by chat room ID.',
args: this.builder.generator.findManyArgs('Message'),
resolve: async (query, root, args) => {
resolve: async (query, _root, args) => {
return await this.prisma.message.findMany({
...query,
where: args.filter ?? undefined,
@@ -94,6 +94,19 @@ export class MessageSchema extends PothosSchema {
// mutations
this.builder.mutationFields((t) => ({
testSendMessage: t.field({
type: 'String',
description: 'Test sending a message.',
resolve: async (_, __, ctx) => {
if (ctx.isSubscription) {
throw new Error('Not allowed')
}
ctx.http.pubSub.publish('MESSAGE_SENT', {
message: 'Hello, world!',
})
return 'Message sent'
},
}),
sendMessage: t.prismaField({
type: this.message(),
description: 'Send a message to a chat room.',
@@ -104,7 +117,7 @@ export class MessageSchema extends PothosSchema {
required: true,
}),
},
resolve: async (query, root, args, ctx, info) => {
resolve: async (query, _root, args, ctx, _info) => {
const message = await this.prisma.message.create({
...query,
data: args.input,