import { Badge } from '@/components/ui/badge';
import { ImageIcon, Trash2, Edit } from 'lucide-react';
interface PhotoAdditionPreviewProps {
photos: Array<{
url: string;
title?: string;
caption?: string;
}>;
compact?: boolean;
}
export function PhotoAdditionPreview({ photos, compact = false }: PhotoAdditionPreviewProps) {
if (compact) {
return (
+{photos.length} Photo{photos.length > 1 ? 's' : ''}
);
}
return (
Adding {photos.length} Photo{photos.length > 1 ? 's' : ''}
{photos.slice(0, 6).map((photo, idx) => (

{(photo.title || photo.caption) && (
{photo.title || photo.caption}
)}
))}
{photos.length > 6 && (
+{photos.length - 6} more
)}
);
}
interface PhotoEditPreviewProps {
photo: {
url: string;
oldCaption?: string;
newCaption?: string;
oldTitle?: string;
newTitle?: string;
};
compact?: boolean;
}
export function PhotoEditPreview({ photo, compact = false }: PhotoEditPreviewProps) {
if (compact) {
return (
Photo Edit
);
}
return (
Photo Metadata Edit
{photo.oldTitle !== photo.newTitle && (
Title:
{photo.oldTitle || 'None'}
{photo.newTitle || 'None'}
)}
{photo.oldCaption !== photo.newCaption && (
Caption:
{photo.oldCaption || 'None'}
{photo.newCaption || 'None'}
)}
);
}
interface PhotoDeletionPreviewProps {
photo: {
url: string;
title?: string;
caption?: string;
entity_type?: string;
entity_name?: string;
deletion_reason?: string;
};
compact?: boolean;
}
export function PhotoDeletionPreview({ photo, compact = false }: PhotoDeletionPreviewProps) {
if (compact) {
return (
Delete Photo
{photo.deletion_reason && (
- {photo.deletion_reason}
)}
);
}
return (
Photo Deletion Request
{photo.url && (

)}
{photo.title && (
)}
{photo.caption && (
)}
{photo.entity_type && photo.entity_name && (
From Entity:
{photo.entity_type.replace('_', ' ')} - {photo.entity_name}
)}
{photo.deletion_reason && (
Deletion Reason:
{photo.deletion_reason}
)}
);
}