From 3e89d2998588f8e35c524e523ba2ee853f0f6475 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Mon, 20 Apr 2026 11:31:17 +0200 Subject: refactor: restructure files to their domains, new preview overlay system, and dep graph --- .../src/lib/timeline/placement/compatibility.ts | 51 ---------------------- 1 file changed, 51 deletions(-) delete mode 100644 apps/web/src/lib/timeline/placement/compatibility.ts (limited to 'apps/web/src/lib/timeline/placement/compatibility.ts') diff --git a/apps/web/src/lib/timeline/placement/compatibility.ts b/apps/web/src/lib/timeline/placement/compatibility.ts deleted file mode 100644 index de1baff3..00000000 --- a/apps/web/src/lib/timeline/placement/compatibility.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { ElementType, TrackType } from "@/lib/timeline"; - -const ELEMENT_TRACK_MAP: Record = { - audio: "audio", - text: "text", - sticker: "graphic", - graphic: "graphic", - effect: "effect", - video: "video", - image: "video", -}; - -export function getTrackTypeForElementType({ - elementType, -}: { - elementType: ElementType; -}): TrackType { - return ELEMENT_TRACK_MAP[elementType]; -} - -export function canElementGoOnTrack({ - elementType, - trackType, -}: { - elementType: ElementType; - trackType: TrackType; -}): boolean { - return getTrackTypeForElementType({ elementType }) === trackType; -} - -export function validateElementTrackCompatibility({ - element, - track, -}: { - element: { type: ElementType }; - track: { type: TrackType }; -}): { isValid: boolean; errorMessage?: string } { - const isValid = canElementGoOnTrack({ - elementType: element.type, - trackType: track.type, - }); - - if (!isValid) { - return { - isValid: false, - errorMessage: `${element.type} elements cannot be placed on ${track.type} tracks`, - }; - } - - return { isValid: true }; -} -- cgit v1.3.1