remove message filter from schema, use apoc create uuid

This commit is contained in:
Moriz Wahl 2023-06-20 10:54:41 +02:00
parent 31d81aa2dd
commit 8f86d6fc82
4 changed files with 10 additions and 11 deletions

View File

@ -30,7 +30,7 @@ beforeAll(async () => {
}) })
afterAll(async () => { afterAll(async () => {
// await cleanDatabase() await cleanDatabase()
driver.close() driver.close()
}) })

View File

@ -1,4 +1,3 @@
import { v4 as uuid } from 'uuid'
import { neo4jgraphql } from 'neo4j-graphql-js' import { neo4jgraphql } from 'neo4j-graphql-js'
import Resolver from './helpers/Resolver' import Resolver from './helpers/Resolver'
@ -21,20 +20,20 @@ export default {
CreateMessage: async (_parent, params, context, _resolveInfo) => { CreateMessage: async (_parent, params, context, _resolveInfo) => {
const { roomId, content } = params const { roomId, content } = params
const { user: { id: currentUserId } } = context const { user: { id: currentUserId } } = context
const messageId = uuid()
const session = context.driver.session() const session = context.driver.session()
const writeTxResultPromise = session.writeTransaction(async (transaction) => { const writeTxResultPromise = session.writeTransaction(async (transaction) => {
const createMessageCypher = ` const createMessageCypher = `
MATCH (currentUser:User { id: $currentUserId })-[:CHATS_IN]->(room:Room { id: $roomId }) MATCH (currentUser:User { id: $currentUserId })-[:CHATS_IN]->(room:Room { id: $roomId })
MERGE (currentUser)-[:CREATED]->(message:Message)-[:INSIDE]->(room) MERGE (currentUser)-[:CREATED]->(message:Message)-[:INSIDE]->(room)
SET message.createdAt = toString(datetime()), ON CREATE SET
message.id = $messageId, message.createdAt = toString(datetime()),
message.content = $content message.id = apoc.create.uuid(),
message.content = $content
RETURN message { .* } RETURN message { .* }
` `
const createMessageTxResponse = await transaction.run( const createMessageTxResponse = await transaction.run(
createMessageCypher, createMessageCypher,
{ currentUserId, roomId, messageId, content } { currentUserId, roomId, content }
) )
const [message] = await createMessageTxResponse.records.map((record) => const [message] = await createMessageTxResponse.records.map((record) =>
record.get('message'), record.get('message'),

View File

@ -29,7 +29,7 @@ beforeAll(async () => {
}) })
afterAll(async () => { afterAll(async () => {
// await cleanDatabase() await cleanDatabase()
driver.close() driver.close()
}) })

View File

@ -1,6 +1,6 @@
input _MessageFilter { # input _MessageFilter {
room: _RoomFilter # room: _RoomFilter
} # }
type Message { type Message {
id: ID! id: ID!