toDateString method
Implementation
String toDateString({bool shorten = true, bool useAdverbs = false}) {
if (useAdverbs) {
final now = DateTime.now();
final today = DateTime(now.year, now.month, now.day);
final inputDate = DateTime(year, month, day);
return switch (inputDate) {
_ when inputDate == today => "time_adverb.today".i18n(),
_ when inputDate == today.subtract(const Duration(days: 1)) => "time_adverb.yesterday".i18n(),
_ when inputDate == today.add(const Duration(days: 1)) => "time_adverb.tomorrow".i18n(),
_ => toDateString(shorten: shorten),
};
}
return "$day ${switch (month) {
DateTime.january => shorten ? "acronym.months.january".i18n() : "months.january".i18n(),
DateTime.february => shorten ? "acronym.months.february".i18n() : "months.february".i18n(),
DateTime.march => shorten ? "acronym.months.march".i18n() : "months.march".i18n(),
DateTime.april => shorten ? "acronym.months.april".i18n() : "months.april".i18n(),
DateTime.may => shorten ? "acronym.months.may".i18n() : "months.may".i18n(),
DateTime.june => shorten ? "acronym.months.june".i18n() : "months.june".i18n(),
DateTime.july => shorten ? "acronym.months.july".i18n() : "months.july".i18n(),
DateTime.august => shorten ? "acronym.months.august".i18n() : "months.august".i18n(),
DateTime.september => shorten ? "acronym.months.september".i18n() : "months.september".i18n(),
DateTime.october => shorten ? "acronym.months.october".i18n() : "months.october".i18n(),
DateTime.november => shorten ? "acronym.months.november".i18n() : "months.november".i18n(),
DateTime.december => shorten ? "acronym.months.december".i18n() : "months.december".i18n(),
_ => "error".i18n()
}} $year";
}