formatWords static method
Format duration with words (e.g., "2 hours 30 minutes")
Implementation
static String formatWords(Duration duration) {
final hours = duration.inHours;
final minutes = duration.inMinutes % 60;
final seconds = duration.inSeconds % 60;
final parts = <String>[];
if (hours > 0) {
parts.add('$hours ${hours == 1 ? 'hour' : 'hours'}');
}
if (minutes > 0) {
parts.add('$minutes ${minutes == 1 ? 'minute' : 'minutes'}');
}
if (seconds > 0 || parts.isEmpty) {
parts.add('$seconds ${seconds == 1 ? 'second' : 'seconds'}');
}
return parts.join(' ');
}