feat(upload): preview uploaded videos with ProtectedVideoPlayer

This commit is contained in:
2026-06-24 00:14:18 +05:30
parent 5439a5ff45
commit 81b68fdb61
8 changed files with 99 additions and 92 deletions

View File

@@ -13,14 +13,14 @@ import type { UploadVideo } from '@/types';
interface UploadActionsMenuProps {
upload: UploadVideo;
onViewVideo: (upload: UploadVideo) => void;
onViewDetails: (upload: UploadVideo) => void;
onViewProcessedVideo: (upload: UploadVideo) => void;
}
export function UploadActionsMenu({
upload,
onViewVideo,
onViewDetails,
onViewProcessedVideo,
}: UploadActionsMenuProps) {
return (
<DropdownMenu>
@@ -37,16 +37,26 @@ export function UploadActionsMenu({
</Button>
</DropdownMenuTrigger>
<DropdownMenuContent align="end">
<DropdownMenuItem onClick={() => onViewDetails(upload)}>
{upload.video_url ? (
<DropdownMenuItem
onClick={(event) => {
event.stopPropagation();
onViewVideo(upload);
}}
>
<PlayCircle className="size-4" />
View Video
</DropdownMenuItem>
) : null}
<DropdownMenuItem
onClick={(event) => {
event.stopPropagation();
onViewDetails(upload);
}}
>
<Eye className="size-4" />
View Details
</DropdownMenuItem>
{upload.processed_video_url ? (
<DropdownMenuItem onClick={() => onViewProcessedVideo(upload)}>
<PlayCircle className="size-4" />
View Processed Video
</DropdownMenuItem>
) : null}
</DropdownMenuContent>
</DropdownMenu>
);