import { HeaderCenter, HeaderRight } from '@components/Header' import Timeline from '@components/Timeline' import TimelineDefault from '@components/Timeline/Default' import { createNativeStackNavigator } from '@react-navigation/native-stack' import { ScreenTabsScreenProps, TabLocalStackParamList } from '@utils/navigation/navigators' import usePopToTop from '@utils/navigation/usePopToTop' import { useListsQuery } from '@utils/queryHooks/lists' import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import layoutAnimation from '@utils/styles/layoutAnimation' import React, { useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import { Platform } from 'react-native' import ContextMenu from 'react-native-context-menu-view' import TabShared from './Shared' const Stack = createNativeStackNavigator() const TabLocal = React.memo( ({ navigation }: ScreenTabsScreenProps<'Tab-Local'>) => { const { t } = useTranslation('screenTabs') const { data: lists } = useListsQuery({}) useEffect(() => { layoutAnimation() }, [lists?.length]) const [queryKey, setQueryKey] = useState(['Timeline', { page: 'Following' }]) usePopToTop() return ( ( ({ id: list.id, title: list.title, disabled: queryKey[1].page === 'List' && queryKey[1].list === list.id })) ] : undefined } onPress={({ nativeEvent: { index } }) => { lists && index ? setQueryKey(['Timeline', { page: 'List', list: lists[index - 1].id }]) : setQueryKey(['Timeline', { page: 'Following' }]) }} children={ 0} content={ queryKey[1].page === 'List' && queryKey[1].list?.length ? lists?.find(list => list.id === queryKey[1].list)?.title : t('tabs.local.name') } /> } /> ), headerRight: () => ( navigation.navigate('Tab-Local', { screen: 'Tab-Shared-Search', params: { text: undefined } }) } /> ) }} children={() => ( }} /> )} /> {TabShared({ Stack })} ) }, () => true ) export default TabLocal