diff options
| author | Maze Winther <mazewinther@gmail.com> | 2025-08-27 00:52:39 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2025-08-27 00:52:39 +0200 |
| commit | adc8cb37fcec21afac848b1e5dd724394c344050 (patch) | |
| tree | 9157bc1973840b00a96912d42f6741352abedbc4 /apps/web/src/components/editor/media-panel/views/base-view.tsx | |
| parent | b459b46802a760a4a81ce91fdf24390e07375fb0 (diff) | |
| download | opencut-adc8cb37fcec21afac848b1e5dd724394c344050.tar.gz | |
another huge refactor
Diffstat (limited to 'apps/web/src/components/editor/media-panel/views/base-view.tsx')
| -rw-r--r-- | apps/web/src/components/editor/media-panel/views/base-view.tsx | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/apps/web/src/components/editor/media-panel/views/base-view.tsx b/apps/web/src/components/editor/media-panel/views/base-view.tsx deleted file mode 100644 index 2cd33535..00000000 --- a/apps/web/src/components/editor/media-panel/views/base-view.tsx +++ /dev/null @@ -1,67 +0,0 @@ -import { ScrollArea } from "@/components/ui/scroll-area";
-import { Separator } from "@/components/ui/separator";
-import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
-
-interface BaseViewProps {
- children?: React.ReactNode;
- defaultTab?: string;
- tabs?: {
- value: string;
- label: string;
- content: React.ReactNode;
- }[];
- className?: string;
- ref?: React.RefObject<HTMLDivElement>;
-}
-
-function ViewContent({
- children,
- className,
-}: {
- children: React.ReactNode;
- className?: string;
-}) {
- return (
- <ScrollArea className="flex-1">
- <div className={`p-5 h-full ${className}`}>{children}</div>
- </ScrollArea>
- );
-}
-
-export function BaseView({
- children,
- defaultTab,
- tabs,
- className = "",
- ref,
-}: BaseViewProps) {
- return (
- <div className={`h-full flex flex-col ${className}`} ref={ref}>
- {!tabs || tabs.length === 0 ? (
- <ViewContent className={className}>{children}</ViewContent>
- ) : (
- <Tabs defaultValue={defaultTab} className="flex flex-col h-full">
- <div className="px-3 pt-4 pb-0">
- <TabsList>
- {tabs.map((tab) => (
- <TabsTrigger key={tab.value} value={tab.value}>
- {tab.label}
- </TabsTrigger>
- ))}
- </TabsList>
- </div>
- <Separator className="mt-4" />
- {tabs.map((tab) => (
- <TabsContent
- key={tab.value}
- value={tab.value}
- className="mt-0 flex-1 flex flex-col min-h-0"
- >
- <ViewContent>{tab.content}</ViewContent>
- </TabsContent>
- ))}
- </Tabs>
- )}
- </div>
- );
-}
|
