From f4caa51da5d4b4df07c31b6d86139aeb9430c553 Mon Sep 17 00:00:00 2001 From: aits2026 Date: Fri, 6 Mar 2026 16:07:48 +0800 Subject: [PATCH] refactor(sns): open contact timeline from sidebar --- src/components/Sns/SnsFilterPanel.tsx | 27 ++++--------- src/pages/SnsPage.scss | 45 +--------------------- src/pages/SnsPage.tsx | 55 +++++++++++---------------- 3 files changed, 30 insertions(+), 97 deletions(-) diff --git a/src/components/Sns/SnsFilterPanel.tsx b/src/components/Sns/SnsFilterPanel.tsx index b07e596..b7e6a49 100644 --- a/src/components/Sns/SnsFilterPanel.tsx +++ b/src/components/Sns/SnsFilterPanel.tsx @@ -20,43 +20,33 @@ interface SnsFilterPanelProps { searchKeyword: string setSearchKeyword: (val: string) => void totalFriendsLabel?: string - selectedUsernames: string[] - setSelectedUsernames: (val: string[]) => void contacts: Contact[] contactSearch: string setContactSearch: (val: string) => void loading?: boolean contactsCountProgress?: ContactsCountProgress + onOpenContactTimeline: (contact: Contact) => void } export const SnsFilterPanel: React.FC = ({ searchKeyword, setSearchKeyword, totalFriendsLabel, - selectedUsernames, - setSelectedUsernames, contacts, contactSearch, setContactSearch, loading, - contactsCountProgress + contactsCountProgress, + onOpenContactTimeline }) => { const filteredContacts = contacts.filter(c => (c.displayName || '').toLowerCase().includes(contactSearch.toLowerCase()) || c.username.toLowerCase().includes(contactSearch.toLowerCase()) ) - const toggleUserSelection = (username: string) => { - if (selectedUsernames.includes(username)) { - setSelectedUsernames(selectedUsernames.filter(u => u !== username)) - } else { - setSelectedUsernames([...selectedUsernames, username]) - } - } - const clearFilters = () => { setSearchKeyword('') - setSelectedUsernames([]) + setContactSearch('') } const getEmptyStateText = () => { @@ -73,7 +63,7 @@ export const SnsFilterPanel: React.FC = ({