diff --git a/EditSet.tsx b/EditSet.tsx index 27164dd..ddff98a 100644 --- a/EditSet.tsx +++ b/EditSet.tsx @@ -21,14 +21,20 @@ export default function EditSet() { useFocusEffect( useCallback(() => { - navigation.getParent()?.setOptions({ - headerLeft: () => ( - navigation.goBack()} /> - ), - headerRight: null, - title: params.set.id ? 'Edit set' : 'Create set', + getSettings().then(settings => { + let title = 'Edit set'; + if (!params.set.id && params.set.name) + title = `Add set (${params.count} / ${settings.sets})`; + if (!params.set.id && !params.set.name) title = 'Add set'; + navigation.getParent()?.setOptions({ + headerLeft: () => ( + navigation.goBack()} /> + ), + headerRight: null, + title, + }); }); - }, [navigation, params.set.id]), + }, [navigation, params]), ); const startTimer = useCallback(async () => { diff --git a/HomePage.tsx b/HomePage.tsx index 7198fa7..4377b28 100644 --- a/HomePage.tsx +++ b/HomePage.tsx @@ -13,6 +13,7 @@ export type HomePageParams = { Sets: {}; EditSet: { set: Set; + count: number; workouts?: string[]; }; }; diff --git a/SetList.tsx b/SetList.tsx index 7438c47..6181d26 100644 --- a/SetList.tsx +++ b/SetList.tsx @@ -21,6 +21,7 @@ const limit = 15; export default function SetList() { const [sets, setSets] = useState(); const [set, setSet] = useState(); + const [count, setCount] = useState(1); const [workouts, setWorkouts] = useState([]); const [offset, setOffset] = useState(0); const [search, setSearch] = useState(''); @@ -52,11 +53,12 @@ export default function SetList() { let workout = todaysWorkouts[0]; console.log(`${SetList.name}.predict:`, {todaysSets, todaysWorkouts}); if (todaysWorkouts.includes(todaysSets[0]?.name) && todaysSets.length > 0) { - const count = todaysSets.filter( + const _count = todaysSets.filter( s => s.name === todaysSets[0].name, ).length; + setCount(_count); workout = todaysSets[0].name; - if (count >= Number(settings.sets)) + if (_count >= Number(settings.sets)) workout = todaysWorkouts[todaysWorkouts.indexOf(todaysSets[0].name!) + 1]; } @@ -117,9 +119,10 @@ export default function SetList() { const onAdd = useCallback(async () => { navigation.navigate('EditSet', { set: set || {...defaultSet}, + count, workouts, }); - }, [navigation, set, workouts]); + }, [navigation, set, workouts, count]); return (