import { NavigationProp, useFocusEffect, useNavigation, } from '@react-navigation/native'; import React, {useCallback, useEffect, useState} from 'react'; import {FlatList} from 'react-native'; import {List} from 'react-native-paper'; import DrawerMenu from './DrawerMenu'; import Page from './Page'; import {Plan} from './plan'; import {getPlans} from './plan.service'; import PlanItem from './PlanItem'; import {PlanPageParams} from './PlanPage'; export default function PlanList() { const [search, setSearch] = useState(''); const [plans, setPlans] = useState([]); const navigation = useNavigation>(); const refresh = useCallback(async () => { getPlans(search).then(setPlans); }, [search]); useFocusEffect( useCallback(() => { refresh(); navigation.getParent()?.setOptions({ headerRight: () => , }); }, [refresh, navigation]), ); useEffect(() => { refresh(); }, [search, refresh]); const renderItem = useCallback( ({item}: {item: Plan}) => ( ), [refresh], ); const onAdd = () => navigation.navigate('EditPlan', {plan: {days: '', workouts: '', id: 0}}); return ( set.id?.toString() || ''} ListEmptyComponent={ } /> ); }