From 06c41e8397087e1351ef9913d51897d81a6d80c8 Mon Sep 17 00:00:00 2001 From: Claude Code Assistant Date: Thu, 24 Jul 2025 10:34:58 +0100 Subject: [PATCH] Implement contact selection for group invitations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added selection mode support to ContactListPage - Added Select buttons for each contact when in selection mode - Modified header and UI to show selection context - Disabled normal contact click behavior in selection mode - Implemented return navigation with selected contact data - Fixed invite form button visibility issue with proper spacing Flow: Group Invite → Select from Network → Contact List → Select Contact → Back to Group Invite (prefilled) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- src/components/invite/InviteForm.tsx | 4 +- src/pages/ContactListPage.tsx | 105 +++++++++++++++++++-------- 2 files changed, 76 insertions(+), 33 deletions(-) diff --git a/src/components/invite/InviteForm.tsx b/src/components/invite/InviteForm.tsx index 0d911a9..71e3b6d 100644 --- a/src/components/invite/InviteForm.tsx +++ b/src/components/invite/InviteForm.tsx @@ -141,9 +141,9 @@ const InviteForm: React.FC = ({ - + {/* Network Selection Option */} - + - - - + {!isSelectionMode && ( + + + + + + )} @@ -209,15 +233,15 @@ const ContactListPage = () => { handleContactClick(contact.id)} sx={{ - cursor: 'pointer', + cursor: isSelectionMode ? 'default' : 'pointer', transition: 'all 0.2s ease-in-out', border: 1, borderColor: 'divider', - '&:hover': { + '&:hover': !isSelectionMode ? { borderColor: 'primary.main', boxShadow: theme.shadows[4], transform: 'translateY(-2px)', - }, + } : {}, }} > @@ -336,6 +360,25 @@ const ContactListPage = () => { Added {formatDate(contact.createdAt)} + + {/* Select button for selection mode */} + {isSelectionMode && ( + + )}