UNPKG

529 BJavaScriptView Raw
1import moment from 'moment';
2
3function getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek) {
4 const weekDayDiff = firstDayOfMonth.day() - firstDayOfWeek;
5 return (weekDayDiff + 7) % 7;
6}
7
8export default function getNumberOfCalendarMonthWeeks(
9 month,
10 firstDayOfWeek = moment.localeData().firstDayOfWeek(),
11) {
12 const firstDayOfMonth = month.clone().startOf('month');
13 const numBlankDays = getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek);
14 return Math.ceil((numBlankDays + month.daysInMonth()) / 7);
15}