Something went wrong. Try again.
A functional toolkit for authoring resource-leveling algorithms — compose constraint and scoring blocks, enumerate feasible schedules
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354export const TimeUnit = { Minutes: "minutes", Hours: "hours", Days: "days", Weeks: "weeks", Months: "months", Percent: "percent",} as const;export type TimeUnit = (typeof TimeUnit)[keyof typeof TimeUnit];
export const RelationType = { FinishToStart: "FS", StartToStart: "SS", FinishToFinish: "FF", StartToFinish: "SF",} as const;export type RelationType = (typeof RelationType)[keyof typeof RelationType];
export const ResourceType = { Material: "Material", Work: "Work", Cost: "Cost",} as const;export type ResourceType = (typeof ResourceType)[keyof typeof ResourceType];
export const ConstraintType = { AsSoonAsPossible: "ASAP", AsLateAsPossible: "ALAP", MustStartOn: "MSO", MustFinishOn: "MFO", StartNoEarlierThan: "SNET", StartNoLaterThan: "SNLT", FinishNoEarlierThan: "FNET", FinishNoLaterThan: "FNLT",} as const;export type ConstraintType = (typeof ConstraintType)[keyof typeof ConstraintType];
export const Priority = { Lowest: 100, Low: 250, Medium: 500, High: 750, Highest: 1000,} as const;export type Priority = (typeof Priority)[keyof typeof Priority];
export type { ProjectProperties } from "../schema/project.ts";export type { WorkingTimeRange, CalendarWeekDay, CalendarException,} from "../schema/calendar.ts";