import { projectPhotoSrc, projectPhotoSrcSet, type ProjectPhoto as Photo } from '../lib/project-photos';

export function ProjectPhoto({ photo, priority = false, sizes = '(max-width: 760px) 100vw, 45vw' }: {
  photo: Photo; priority?: boolean; sizes?: string;
}) {
  // Pre-encoded local variants avoid a runtime image service and preserve the full photograph.
  // eslint-disable-next-line @next/next/no-img-element
  return <img className="project-photo" src={projectPhotoSrc(photo)} srcSet={projectPhotoSrcSet(photo)} sizes={sizes}
    width={photo.width} height={photo.height} alt={photo.alt}
    loading={priority ? 'eager' : 'lazy'} fetchPriority={priority ? 'high' : undefined} decoding="async" />;
}
