validateSleepGoal function
bool
validateSleepGoal({
- required PickedTime inTime,
- required PickedTime outTime,
- required double sleepGoal,
- ClockTimeFormat clockTimeFormat = ClockTimeFormat.twentyFourHours,
- ClockIncrementTimeFormat clockIncrementTimeFormat = ClockIncrementTimeFormat.fiveMin,
Implementation
bool validateSleepGoal({
required PickedTime inTime,
required PickedTime outTime,
required double sleepGoal,
ClockTimeFormat clockTimeFormat = ClockTimeFormat.twentyFourHours,
ClockIncrementTimeFormat clockIncrementTimeFormat =
ClockIncrementTimeFormat.fiveMin,
}) {
var clockTimeDivision = getClockTimeFormatDivision(
clockTimeFormat,
clockIncrementTimeFormat,
);
var _inTime = pickedTimeToDivision(
pickedTime: inTime,
clockTimeFormat: clockTimeFormat,
clockIncrementTimeFormat: clockIncrementTimeFormat,
);
var _outTime = pickedTimeToDivision(
pickedTime: outTime,
clockTimeFormat: clockTimeFormat,
clockIncrementTimeFormat: clockIncrementTimeFormat,
);
var sleepTime = _outTime > _inTime
? _outTime - _inTime
: clockTimeDivision - _inTime + _outTime;
var timeDivisor = 60 ~/ clockIncrementTimeFormat.value;
var sleepHours = sleepTime ~/ timeDivisor;
return (sleepHours >= sleepGoal) ? true : false;
}