finishActiveSet method
Implementation
Future<bool> finishActiveSet({
required double weight,
required int reps,
required int rir,
Duration? setDuration,
int restSeconds = 90,
}) async {
if (_plan == null || _state == null) return false;
if (_activeSetExerciseIndex == null || _activeSetIndex == null) {
return false;
}
final taken = setDuration ?? _setElapsed;
final ex = _activeSetExerciseIndex!;
final si = _activeSetIndex!;
_setTicker?.cancel();
_setTicker = null;
_setStartedAt = null;
_setElapsed = Duration.zero;
await completeSet(
exerciseIndex: ex,
setIndex: si,
weight: weight,
reps: reps,
rir: rir,
setDuration: taken,
pauseDuration: Duration(seconds: restSeconds),
);
_activeSetExerciseIndex = null;
_activeSetIndex = null;
beginRest(seconds: restSeconds);
notifyListeners();
return true;
}