import type { ImgHTMLAttributes } from 'react'; import { Dialog, DialogContent, DialogTitle, DialogTrigger } from '@/components/ui/dialog'; import { cn } from '@/lib/utils'; export interface ZoomableImageProps extends ImgHTMLAttributes { noZoom?: boolean; } export function ZoomableImage({ noZoom = false, className, alt, src, ...props }: ZoomableImageProps) { const image = ( {alt} ); if (noZoom || !src) { return image; } const label = alt ? `View “${alt}” full size` : 'View image full size'; return ( } > {image} {alt || 'Full-size image'} {alt ); }