ente/lib/utils/date_time_util.dart

90 lines
1.9 KiB
Dart
Raw Normal View History

Map<int, String> _months = {
1: "Jan",
2: "Feb",
3: "March",
4: "April",
5: "May",
6: "Jun",
7: "July",
8: "Aug",
9: "Sep",
10: "Oct",
11: "Nov",
12: "Dec",
};
Map<int, String> _days = {
1: "Mon",
2: "Tue",
3: "Wed",
4: "Thu",
5: "Fri",
6: "Sat",
7: "Sun",
};
String getMonthAndYear(DateTime dateTime) {
return _months[dateTime.month] + " " + dateTime.year.toString();
}
String getDayAndMonth(DateTime dateTime) {
return _days[dateTime.weekday] +
", " +
_months[dateTime.month] +
" " +
dateTime.day.toString();
}
2020-06-13 18:47:48 +00:00
String getDay(DateTime dateTime) {
return _days[dateTime.weekday];
}
String getMonth(DateTime dateTime) {
return _months[dateTime.month];
}
String getTime(DateTime dateTime) {
final hours = dateTime.hour > 9
? dateTime.hour.toString()
: "0" + dateTime.hour.toString();
final minutes = dateTime.minute > 9
? dateTime.minute.toString()
: "0" + dateTime.minute.toString();
return hours + ":" + minutes;
}
String getFormattedTime(DateTime dateTime) {
return getDay(dateTime) +
", " +
getMonth(dateTime) +
" " +
dateTime.day.toString() +
", " +
dateTime.year.toString() +
" - " +
getTime(dateTime);
}
2020-06-20 23:51:10 +00:00
String formatDuration(Duration position) {
final ms = position.inMilliseconds;
int seconds = ms ~/ 1000;
final int hours = seconds ~/ 3600;
seconds = seconds % 3600;
var minutes = seconds ~/ 60;
seconds = seconds % 60;
final hoursString = hours >= 10 ? '$hours' : hours == 0 ? '00' : '0$hours';
final minutesString =
minutes >= 10 ? '$minutes' : minutes == 0 ? '00' : '0$minutes';
final secondsString =
seconds >= 10 ? '$seconds' : seconds == 0 ? '00' : '0$seconds';
final formattedTime =
'${hoursString == '00' ? '' : hoursString + ':'}$minutesString:$secondsString';
return formattedTime;
}