isBeforeBy method
Returns true if "this (a)" is before "b" by the given parameter.
Example:
final a = DateTime.now();
final b = DateTime.now() + 7.sec;
final check = a.isBeforeBy(b, bySeconds: 7);
print(check); // true
Implementation
bool isBeforeBy(
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;
}