Мне нужно подписаться по id и получать уведомления, если обновляется только одно поле, я работаю с сервером йоги и Prisma, это то, что у меня пока есть.
В подписке:
async function purchaseAssigned(parent, args, context, info) {
return async context.prisma.$subscribe.purchases({ mutation_in: ['UPDATED'] }).node();
}
const assigned = {
subscribe: purchaseAssigned,
resolve: (payload, variables) => {
return payload.purchaseId === variables.purchaseId;
}
}
module.exports = {
assigned
};
в схеме: purchaseAssigned(purchaseId: ID!): Purchase
, и это решатель, который инициирует подписку:
async function assignPurchase(root, args, contex) {
const userID = getUserId(context);
if (!userID) {
throw new Error("Not authenticated");
}
id = args.id;
const purchase = await contex.prisma.updatePurchases({
where: { id },
data: {
professional: userID
}
});
pubsub.publish("purchaseAssigned", {
purchaseAssigned: purchase,
purchaseId: id,
professional: userID
});
return purchase;
}
Заранее спасибо.