updatePerformedSet method
Future<void>
updatePerformedSet(
{ - required int exerciseIndex,
- required int setIndex,
- required double weight,
- required int reps,
- required int rir,
})
Implementation
Future<void> updatePerformedSet({
required int exerciseIndex,
required int setIndex,
required double weight,
required int reps,
required int rir,
}) async {
if (_state == null) return;
final updatedPerformed =
_state!.performed.map((ex) {
if (ex.exerciseIndex != exerciseIndex) return ex;
final updatedSets =
ex.sets.map((s) {
if (s.setIndex != setIndex) return s;
return PerformedSet(
exerciseIndex: s.exerciseIndex,
setIndex: s.setIndex,
actualReps: reps,
actualWeight: weight,
rir: rir,
pause: s.pause,
duration: s.duration,
completedAt: s.completedAt,
);
}).toList();
return PerformedExercise(
exerciseIndex: ex.exerciseIndex,
exerciseName: ex.exerciseName,
sets: updatedSets,
);
}).toList();
_state = _state!.copyWith(
performed: updatedPerformed,
updatedAt: DateTime.now(),
);
await _persist();
notifyListeners();
}