formatCompactDuration method
Formats to compact text like 1h 03m 07s, 12m 04s, 8s.
Implementation
String formatCompactDuration({bool includeSeconds = true}) {
final h = inHours;
final m = inMinutes.remainder(60);
final s = inSeconds.remainder(60);
if (h > 0) {
if (includeSeconds) {
return '${h}h ${m.toString().padLeft(2, '0')}m ${s.toString().padLeft(2, '0')}s';
}
return '${h}h ${m.toString().padLeft(2, '0')}m';
}
if (inMinutes > 0) {
if (includeSeconds) {
return '${inMinutes}m ${s.toString().padLeft(2, '0')}s';
}
return '${inMinutes}m';
}
return '${inSeconds}s';
}