mirror of
https://github.com/OpenCut-app/OpenCut.git
synced 2026-07-13 21:52:53 +02:00
55 lines
1.4 KiB
TypeScript
55 lines
1.4 KiB
TypeScript
"use client";
|
|
|
|
import { TabBar } from "./tabbar";
|
|
import { MediaView } from "./views/media";
|
|
import { useMediaPanelStore, Tab } from "./store";
|
|
import { TextView } from "./views/text";
|
|
import { AudioView } from "./views/audio";
|
|
|
|
export function MediaPanel() {
|
|
const { activeTab } = useMediaPanelStore();
|
|
|
|
const viewMap: Record<Tab, React.ReactNode> = {
|
|
media: <MediaView />,
|
|
audio: <AudioView />,
|
|
text: <TextView />,
|
|
stickers: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Stickers view coming soon...
|
|
</div>
|
|
),
|
|
effects: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Effects view coming soon...
|
|
</div>
|
|
),
|
|
transitions: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Transitions view coming soon...
|
|
</div>
|
|
),
|
|
captions: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Captions view coming soon...
|
|
</div>
|
|
),
|
|
filters: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Filters view coming soon...
|
|
</div>
|
|
),
|
|
adjustment: (
|
|
<div className="p-4 text-muted-foreground">
|
|
Adjustment view coming soon...
|
|
</div>
|
|
),
|
|
};
|
|
|
|
return (
|
|
<div className="h-full flex flex-col bg-panel rounded-sm overflow-hidden">
|
|
<TabBar />
|
|
<div className="flex-1">{viewMap[activeTab]}</div>
|
|
</div>
|
|
);
|
|
}
|