cpd_2022_zi/lib/utils/timer_util.dart

28 lines
981 B
Dart

import 'package:flutter/material.dart';
String formatTime(int seconds) {
Duration duration = Duration(seconds: seconds);
String formattedTime = '';
String twoDigits(int n) => n.toString().padLeft(2, "0");
String days = duration.inDays.toString();
String hours = twoDigits(duration.inHours.remainder(24));
String minutes = twoDigits(duration.inMinutes.remainder(60));
String formattedSeconds = twoDigits(duration.inSeconds.remainder(60));
if (duration.inDays != 0) {
formattedTime += '$days Tag ${duration.inDays > 1 ? "e" : ""}, ';
}
if (duration.inHours != 0) formattedTime += '$hours:';
formattedTime += '$minutes:';
formattedTime += formattedSeconds;
return formattedTime;
}
extension TimeOfDayExtension on TimeOfDay {
TimeOfDay durationBetween(TimeOfDay time) {
int hourOffset = time.minute - minute < 0 ? 1 : 0;
return TimeOfDay(
hour: (time.hour - hour - hourOffset) % 24,
minute: (time.minute - minute) % 60);
}
}