Skip to main content
function createTimeOffRule(config): CompilationRule;
Blocks or penalizes assignments during specified time periods. Supports entity scoping (people, roles, skills) and time scoping (date ranges, specific dates, days of week, recurring periods). Optionally supports partial-day time-off with startTime/endTime.

Parameters

config
TimeOffConfig
required

Returns

CompilationRule

Examples

createTimeOffRule({
  employeeIds: ["alice"],
  dateRange: { start: "2024-02-01", end: "2024-02-05" },
  priority: "MANDATORY",
});
createTimeOffRule({
  roleIds: ["student"],
  dayOfWeek: ["wednesday"],
  startTime: { hours: 14, minutes: 0 },
  endTime: { hours: 23, minutes: 59 },
  priority: "MANDATORY",
});
createTimeOffRule({
  employeeIds: ["bob"],
  specificDates: ["2024-03-15"],
  startTime: { hours: 16, minutes: 0 },
  endTime: { hours: 23, minutes: 59 },
  priority: "MANDATORY",
});