18 lines
423 B
TypeScript
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,
|
|
);
|
|
}
|