From 7a6e16631b53c000ae612a77f118318ffca9cb8c Mon Sep 17 00:00:00 2001 From: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com> Date: Tue, 9 Sep 2025 08:42:41 +0530 Subject: [PATCH] fix: guests are not adding when reschedule booking (#23620) * fix: guests are not adding when reschedule booking * Update addGuests.handler.ts * add types --- packages/prisma/zod-utils.ts | 2 ++ .../server/routers/viewer/bookings/addGuests.handler.ts | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/packages/prisma/zod-utils.ts b/packages/prisma/zod-utils.ts index 9ce5e33d8f..5ef6493938 100644 --- a/packages/prisma/zod-utils.ts +++ b/packages/prisma/zod-utils.ts @@ -177,6 +177,8 @@ export const bookingResponses = z }) .nullable(); +export type BookingResponses = z.infer; + export const eventTypeLocations = z.array( z.object({ // TODO: Couldn't find a way to make it a union of types from App Store locations diff --git a/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts b/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts index 88aff4e1fc..a2ce6f27a0 100644 --- a/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts +++ b/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts @@ -6,6 +6,7 @@ import { getUsersCredentialsIncludeServiceAccountKey } from "@calcom/lib/server/ import { getTranslation } from "@calcom/lib/server/i18n"; import { isTeamAdmin, isTeamOwner } from "@calcom/lib/server/queries/teams"; import { prisma } from "@calcom/prisma"; +import type { BookingResponses } from "@calcom/prisma/zod-utils"; import type { CalendarEvent } from "@calcom/types/Calendar"; import { TRPCError } from "@trpc/server"; @@ -89,6 +90,8 @@ export const addGuestsHandler = async ({ ctx, input }: AddGuestsOptions) => { }; }); + const bookingResponses = booking.responses as BookingResponses; + const bookingAttendees = await prisma.booking.update({ where: { id: bookingId, @@ -102,6 +105,10 @@ export const addGuestsHandler = async ({ ctx, input }: AddGuestsOptions) => { data: guestsFullDetails, }, }, + responses: { + ...bookingResponses, + guests: [...(bookingResponses?.guests || []), ...uniqueGuests], + }, }, });