isBeforeAndUpBy method
Returns true if "this (a)" is before "b" by the given parameter.
Example:
final a = DateTime.now();
final b = DateTime.now() + 78.sec;
final check = a.isBeforeAndUpBy(b, bySeconds: 50);
print(check); // true
Implementation
bool isBeforeAndUpBy(
DateTime b, {
int? byMilliseconds,
int? byMicroseconds,
int? bySeconds,
int? byMinutes,
int? byHours,
int? byDays,
}) {
final d = b.difference(this);
final diff = byMilliseconds.isNotNull
? d.inMilliseconds >= byMilliseconds!
: byMicroseconds.isNotNull
? d.inMicroseconds >= byMicroseconds!
: bySeconds.isNotNull
? d.inSeconds >= bySeconds!
: byMinutes.isNotNull
? d.inMinutes >= byMinutes!
: byHours.isNotNull
? d.inHours >= byHours!
: byDays.isNotNull
? d.inDays >= byDays!
: false;
return isBefore(b) && diff;
}