progressOf method
Returns a 0.0-1.0 progress value relative to total.
Pass clampResult as false to allow values outside the 0-1 range.
Implementation
double progressOf(Duration total, {bool clampResult = true}) {
if (total.isZero) return 0.0;
final ratio = inMicroseconds / total.inMicroseconds;
return clampResult ? ratio.clamp(0.0, 1.0) : ratio;
}