summaryrefslogtreecommitdiff
path: root/apps/web/src/lib/timeline/track-capabilities.ts
diff options
context:
space:
mode:
authorMaze Winther <mazewinther@gmail.com>2026-04-01 19:27:49 +0200
committerMaze Winther <mazewinther@gmail.com>2026-04-01 19:27:49 +0200
commitbd9ec023eefc4b5d26fa8b66c4338e97104f0f96 (patch)
tree08350eaa107b27f026eebdb65df54b1ca25521fd /apps/web/src/lib/timeline/track-capabilities.ts
parentf4b9f40ab1ba1cedf208bba708f4331d36bb30cc (diff)
downloadopencut-bd9ec023eefc4b5d26fa8b66c4338e97104f0f96.tar.gz
refactor: split constants by domain and isolate timeline panel from core
Diffstat (limited to 'apps/web/src/lib/timeline/track-capabilities.ts')
-rw-r--r--apps/web/src/lib/timeline/track-capabilities.ts20
1 files changed, 20 insertions, 0 deletions
diff --git a/apps/web/src/lib/timeline/track-capabilities.ts b/apps/web/src/lib/timeline/track-capabilities.ts
new file mode 100644
index 00000000..08ee841c
--- /dev/null
+++ b/apps/web/src/lib/timeline/track-capabilities.ts
@@ -0,0 +1,20 @@
+import type {
+ TimelineTrack,
+ VideoTrack,
+ AudioTrack,
+ GraphicTrack,
+ TextTrack,
+ EffectTrack,
+} from "@/lib/timeline";
+
+export function canTrackHaveAudio(
+ track: TimelineTrack,
+): track is VideoTrack | AudioTrack {
+ return track.type === "audio" || track.type === "video";
+}
+
+export function canTrackBeHidden(
+ track: TimelineTrack,
+): track is VideoTrack | TextTrack | GraphicTrack | EffectTrack {
+ return track.type !== "audio";
+}