UNPKG

@burglekitt/gmt

Version:

Temporal-based date and time utilities with timezone support and polyfill integration

16 lines (15 loc) 529 B
function getStep(date, direction) { return direction === 1 ? date.add({ days: 1 }) : date.subtract({ days: 1 }); } export function advanceBusinessDays(start, direction, target) { const advance = (date, remaining) => { if (remaining === 0) return date; const next = getStep(date, direction); if (next.dayOfWeek >= 1 && next.dayOfWeek <= 5) { return advance(next, remaining - 1); } return advance(next, remaining); }; return advance(start, target); }