in src/common/IterationLookup.ts [197:217]
export function getWorkDays(
startDate: Date | string,
endDate: Date | string
): number {
const [start, end] = [startDate, endDate].map(raw => {
if (raw instanceof Date) return DateTime.fromJSDate(raw);
return DateTime.fromISO(raw);
});
const startWeekDay = start.weekday;
const endWeekDay = end.weekday;
const DAYS_PER_WEEK = 5;
const weeksBetween =
end.startOf("week").diff(start.startOf("week"), "weeks").toObject().weeks ||
0;
let days = weeksBetween * DAYS_PER_WEEK;
const extraDays = Math.min(startWeekDay, 6) - 1;
const missingDays = Math.min(endWeekDay, 5);
// Remove/add extra days
days = days - extraDays + missingDays;
return days;
}