mirror of
https://github.com/OpenCut-app/OpenCut.git
synced 2026-07-13 21:52:53 +02:00
refactor: remove unused functions
This commit is contained in:
@@ -100,92 +100,6 @@ export function TimelineElement({
|
|||||||
// Element should always be positioned at startTime - trimStart only affects content, not position
|
// Element should always be positioned at startTime - trimStart only affects content, not position
|
||||||
const elementLeft = elementStartTime * 50 * zoomLevel;
|
const elementLeft = elementStartTime * 50 * zoomLevel;
|
||||||
|
|
||||||
const handleDeleteElement = () => {
|
|
||||||
removeElementFromTrack(track.id, element.id);
|
|
||||||
setElementMenuOpen(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleSplitElement = () => {
|
|
||||||
const effectiveStart = element.startTime;
|
|
||||||
const effectiveEnd =
|
|
||||||
element.startTime +
|
|
||||||
(element.duration - element.trimStart - element.trimEnd);
|
|
||||||
|
|
||||||
if (currentTime <= effectiveStart || currentTime >= effectiveEnd) {
|
|
||||||
toast.error("Playhead must be within element to split");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const secondElementId = splitElement(track.id, element.id, currentTime);
|
|
||||||
if (!secondElementId) {
|
|
||||||
toast.error("Failed to split element");
|
|
||||||
}
|
|
||||||
setElementMenuOpen(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleSplitAndKeepLeft = () => {
|
|
||||||
const effectiveStart = element.startTime;
|
|
||||||
const effectiveEnd =
|
|
||||||
element.startTime +
|
|
||||||
(element.duration - element.trimStart - element.trimEnd);
|
|
||||||
|
|
||||||
if (currentTime <= effectiveStart || currentTime >= effectiveEnd) {
|
|
||||||
toast.error("Playhead must be within element");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
splitAndKeepLeft(track.id, element.id, currentTime);
|
|
||||||
setElementMenuOpen(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleSplitAndKeepRight = () => {
|
|
||||||
const effectiveStart = element.startTime;
|
|
||||||
const effectiveEnd =
|
|
||||||
element.startTime +
|
|
||||||
(element.duration - element.trimStart - element.trimEnd);
|
|
||||||
|
|
||||||
if (currentTime <= effectiveStart || currentTime >= effectiveEnd) {
|
|
||||||
toast.error("Playhead must be within element");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
splitAndKeepRight(track.id, element.id, currentTime);
|
|
||||||
setElementMenuOpen(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleSeparateAudio = () => {
|
|
||||||
if (element.type !== "media") {
|
|
||||||
toast.error("Audio separation only available for media elements");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const mediaItem = mediaItems.find((item) => item.id === element.mediaId);
|
|
||||||
if (!mediaItem || mediaItem.type !== "video") {
|
|
||||||
toast.error("Audio separation only available for video elements");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const audioElementId = separateAudio(track.id, element.id);
|
|
||||||
if (!audioElementId) {
|
|
||||||
toast.error("Failed to separate audio");
|
|
||||||
}
|
|
||||||
setElementMenuOpen(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const canSplitAtPlayhead = () => {
|
|
||||||
const effectiveStart = element.startTime;
|
|
||||||
const effectiveEnd =
|
|
||||||
element.startTime +
|
|
||||||
(element.duration - element.trimStart - element.trimEnd);
|
|
||||||
return currentTime > effectiveStart && currentTime < effectiveEnd;
|
|
||||||
};
|
|
||||||
|
|
||||||
const canSeparateAudio = () => {
|
|
||||||
if (element.type !== "media") return false;
|
|
||||||
const mediaItem = mediaItems.find((item) => item.id === element.mediaId);
|
|
||||||
return mediaItem?.type === "video" && track.type === "media";
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleElementSplitContext = () => {
|
const handleElementSplitContext = () => {
|
||||||
const effectiveStart = element.startTime;
|
const effectiveStart = element.startTime;
|
||||||
const effectiveEnd =
|
const effectiveEnd =
|
||||||
|
|||||||
Reference in New Issue
Block a user