OpenCut/apps/web/src/lib/ripple/shift.ts

18 lines
423 B
TypeScript

import type { TimelineElement } from "@/lib/timeline/types";
export function rippleShiftElements<TElement extends TimelineElement>({
elements,
afterTime,
shiftAmount,
}: {
elements: TElement[];
afterTime: number;
shiftAmount: number;
}): TElement[] {
return elements.map((element) =>
element.startTime >= afterTime
? ({ ...element, startTime: element.startTime - shiftAmount } as TElement)
: element,
);
}