generateCalendar<T> static method
Year<T>
generateCalendar<
T>( - int year
)
Implementation
static Year<T> generateCalendar<T>(int year) {
List<Month<T>> calendar = [];
for (int month = 1; month <= 12; month++) {
final daysInMonth = DateTime(year, month + 1, 0).day;
final monthName = DateFormat.MMMM().format(DateTime(year, month, 1));
List<Map<int, String>> monthCalendar = [];
List<T> monthData = [];
for (int day = 1; day <= daysInMonth; day++) {
final weekdayName =
DateFormat.EEEE().format(DateTime(year, month, day));
monthCalendar.add({day: weekdayName});
T data = _generateDataForDay<T>(year, month, day);
monthData.add(data);
}
Month<T> monthObject = Month<T>(
name: monthName,
year: year,
days: monthCalendar,
data: monthData,
);
calendar.add(monthObject);
}
return Year<T>(year: year, months: calendar);
}