weekNumberInMonth property
Week number within the month (1-based). First partial week is 1.
Implementation
@useResult
int get weekNumberInMonth {
final int dayOfMonth = day;
final DateTime first = DateTime(year, month);
final int firstWeekday = first.weekday;
// weekday is Mon=1..Sun=7, so 8 - weekday gives remaining days in week 1
final int daysInFirstWeek = 8 - firstWeekday;
if (dayOfMonth <= daysInFirstWeek) return 1;
return ((dayOfMonth - daysInFirstWeek - 1) / 7).floor() + 2;
}