import type { WorkOrderBoardCreatePayload } from "@/domain/work-orders/types/work-order-board"; import type { WorkOrderWizardDraft } from "@/domain/work-orders/types/work-order-wizard"; import { mondayOf } from "@/domain/work-orders/utils/wizard-date-utils"; /** Mutates `payload` with `dueDate` and day/week schedule fields (range mode has no schedule fields). */ export function assignWizardScheduleFields( payload: WorkOrderBoardCreatePayload, draft: WorkOrderWizardDraft, ): void { if (draft.dueDate) { payload.dueDate = draft.dueDate; } const isRange = draft.schedMode === "range"; if (!isRange && draft.scheduleWeekOnly) { payload.scheduleWeekOnly = true; const week = draft.targetWeek?.trim() || (draft.scheduledOn ? mondayOf(draft.scheduledOn) : ""); if (week) { payload.targetWeek = week; } } else if (!isRange && draft.scheduledOn) { payload.scheduledDate = draft.scheduledOn; } }