refactor(api): extract timeline shift mutation routing

This commit is contained in:
2026-03-31 18:15:38 +02:00
parent 7b4c659922
commit 72b13dfaba
4 changed files with 110 additions and 33 deletions
@@ -0,0 +1,27 @@
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,
};
}