import { useCallback } from 'react'; import { useDropzone } from 'react-dropzone'; import { Card } from '@/components/ui/card'; import { Music, X } from 'lucide-react'; interface CreateProductViewFilesCardProps { previewFile: File | null; onPreviewFileChange: (file: File | null) => void; } export function CreateProductViewFilesCard({ previewFile, onPreviewFileChange, }: CreateProductViewFilesCardProps) { const onDrop = useCallback( (accepted: File[]) => { onPreviewFileChange(accepted[0] ?? null); }, [onPreviewFileChange] ); const { getRootProps, getInputProps, isDragActive } = useDropzone({ onDrop, accept: { 'audio/*': ['.mp3', '.wav', '.m4a', '.ogg'] }, maxFiles: 1, disabled: false, }); return (

Product Files

Drop full product here
{previewFile ? ( {previewFile.name} ) : ( Drop preview audio )}
); }