Hide rest settings in workouts when alarms are off

Closes #83
This commit is contained in:
Brandon Presley 2022-10-04 14:46:15 +13:00
parent 73fb90961e
commit e2c790870b
2 changed files with 28 additions and 20 deletions

View File

@ -146,22 +146,26 @@ export default function EditWorkout() {
keyboardType="numeric"
onSubmitEditing={() => minutesRef.current?.focus()}
/>
<MassiveInput
innerRef={minutesRef}
onSubmitEditing={() => secondsRef.current?.focus()}
value={minutes}
onChangeText={setMinutes}
label="Rest minutes"
keyboardType="numeric"
/>
<MassiveInput
innerRef={secondsRef}
value={seconds}
onChangeText={setSeconds}
label="Rest seconds"
keyboardType="numeric"
blurOnSubmit
/>
{!!settings.alarm && (
<>
<MassiveInput
innerRef={minutesRef}
onSubmitEditing={() => secondsRef.current?.focus()}
value={minutes}
onChangeText={setMinutes}
label="Rest minutes"
keyboardType="numeric"
/>
<MassiveInput
innerRef={secondsRef}
value={seconds}
onChangeText={setSeconds}
label="Rest seconds"
keyboardType="numeric"
blurOnSubmit
/>
</>
)}
{!!settings.images && uri && (
<TouchableRipple
style={{marginBottom: MARGIN}}

View File

@ -1,5 +1,5 @@
import {NavigationProp, useNavigation} from '@react-navigation/native';
import React, {useCallback, useState} from 'react';
import React, {useCallback, useMemo, useState} from 'react';
import {GestureResponderEvent, Image} from 'react-native';
import {List, Menu, Text} from 'react-native-paper';
import ConfirmDialog from './ConfirmDialog';
@ -35,15 +35,19 @@ export default function WorkoutItem({
[setShowMenu, setAnchor],
);
const minutes = item.minutes?.toString().padStart(2, '0');
const seconds = item.seconds?.toString().padStart(2, '0');
const description = useMemo(() => {
const minutes = item.minutes?.toString().padStart(2, '0');
const seconds = item.seconds?.toString().padStart(2, '0');
if (settings.alarm) return `${item.sets} sets ${minutes}:${seconds} rest`;
return `${item.sets} sets`;
}, [item, settings.alarm]);
return (
<>
<List.Item
onPress={() => navigation.navigate('EditWorkout', {value: item})}
title={item.name}
description={`${item.sets} sets ${minutes}:${seconds} rest`}
description={description}
onLongPress={longPress}
left={() =>
!!settings.images &&