Files
CapaKraken/packages/api/src/router/timeline-shift-router-support.ts
T

28 lines
813 B
TypeScript

import type { PrismaClient } from "@capakraken/db";
import { emitProjectShifted } from "../sse/event-bus.js";
import { loadProjectShiftContext } from "./timeline-project-load-support.js";
import { applyTimelineProjectShift } from "./timeline-shift-procedure-support.js";
export async function applyTimelineProjectShiftMutation(input: {
db: PrismaClient;
projectId: string;
newStartDate: Date;
newEndDate: Date;
}) {
const context = await loadProjectShiftContext(input.db, input.projectId);
const result = await applyTimelineProjectShift({
db: input.db,
projectId: input.projectId,
newStartDate: input.newStartDate,
newEndDate: input.newEndDate,
context,
});
emitProjectShifted(result.event);
return {
project: result.project,
validation: result.validation,
};
}