From 8bd603a1b1ee4c1caed156eccafab621adaf97f4 Mon Sep 17 00:00:00 2001 From: Stevan Freeborn <65925598+StevanFreeborn@users.noreply.github.com> Date: Thu, 14 Sep 2023 23:08:20 -0500 Subject: [PATCH] feat: delete all user likes when user account deleted --- convex/users.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/convex/users.ts b/convex/users.ts index bccc86d..0e11f13 100644 --- a/convex/users.ts +++ b/convex/users.ts @@ -88,13 +88,18 @@ export const deleteUser = internalMutation({ .withIndex('by_user_id', q => q.eq('userId', userRecord._id)) .collect(); - const userPostDeletePromises = []; + const userLikes = await ctx.db + .query('likes') + .withIndex('by_user_post_id', q => q.eq('userId', userRecord._id)) + .collect(); - for (const post of userPosts) { - userPostDeletePromises.push(ctx.db.delete(post._id)); - } + await Promise.all( + userPosts.map(async post => await ctx.db.delete(post._id)) + ); - await Promise.all(userPostDeletePromises); + await Promise.all( + userLikes.map(async like => await ctx.db.delete(like._id)) + ); await ctx.db.delete(userRecord._id); },