diff --git a/frontend/src/components/guests/guests-list.tsx b/frontend/src/components/guests/guests-list.tsx index 4e0198b..bc35a28 100644 --- a/frontend/src/components/guests/guests-list.tsx +++ b/frontend/src/components/guests/guests-list.tsx @@ -224,7 +224,7 @@ const GuestListTable = ({ event }: GuestListTableProps) => { await deleteGuest(currentGuest.id); setFormData(initialState); - setCurrentGuestId(null); + setCurrentGuest(null); toast.success("Guest deleted successfully"); setDeleteDialogOpen(false); @@ -323,8 +323,24 @@ const GuestListTable = ({ event }: GuestListTableProps) => { }); }; useEffect(() => { - setFormData(currentGuest || initialState); - }, [currentGuest, addGuestOpen, editGuestOpen]); + // When add dialog opens, always reset to initial state + if (addGuestOpen) { + setFormData(initialState); + setCurrentGuest(null); + } + // When edit dialog opens, form data should reflect the current guest + else if (editGuestOpen && currentGuest) { + setFormData({ + full_name: currentGuest.full_name, + email: currentGuest.email || "", + phone: currentGuest.phone || "", + max_additional_guests: currentGuest.max_additional_guests || 0, + dietary_restrictions: currentGuest.dietary_restrictions || "", + notes: currentGuest.notes || "", + can_bring_guests: currentGuest.can_bring_guests || false, + }); + } + }, [addGuestOpen, editGuestOpen, currentGuest]); return (