mirror of
https://codeberg.org/shroff/phylum.git
synced 2026-01-05 11:10:47 -06:00
38 lines
960 B
Dart
38 lines
960 B
Dart
import 'package:intl/intl.dart';
|
|
|
|
final _formatTime = DateFormat.jm();
|
|
final _formatMonthDate = DateFormat.MMMd();
|
|
final _formatYearMonthDate = DateFormat.yMMMd();
|
|
final _formatFullNoYear = DateFormat.MMMd().add_jm();
|
|
final _formatFull = DateFormat.yMMMd().add_jm();
|
|
final _formatNumericDateTime = DateFormat('yyyy-MM-ddTHH:mm:ss');
|
|
|
|
DateTime get _today {
|
|
final now = DateTime.now();
|
|
return DateTime(now.year, now.month, now.day);
|
|
}
|
|
|
|
extension Formats on DateTime {
|
|
String formatShort() {
|
|
final today = _today;
|
|
if (isAfter(today)) {
|
|
return _formatTime.format(this);
|
|
}
|
|
if (year == today.year) {
|
|
return _formatMonthDate.format(this);
|
|
}
|
|
return _formatYearMonthDate.format(this);
|
|
}
|
|
|
|
String formatLong() {
|
|
if (year == _today.year) {
|
|
return _formatFullNoYear.format(this);
|
|
}
|
|
return _formatFull.format(this);
|
|
}
|
|
|
|
String formatNumericDateTime() {
|
|
return _formatNumericDateTime.format(this);
|
|
}
|
|
}
|