--- import { Image } from 'astro:assets'; import type { ImageMetadata } from 'astro'; import Button from '@/components/ui/form/Button/Button.astro'; import Icon from '@/components/ui/primitives/Icon/Icon.astro'; interface Props { title: string; description: string; tags?: string[]; year?: number; client?: string; role?: string; services?: string[]; url?: string; repo?: string; image?: ImageMetadata; imageAlt?: string; } const { title, description, tags = [], year, client, role, url, repo, image, imageAlt, } = Astro.props; const hasMeta = year || client || role; ---
{tags.length > 0 && (
{tags.map((tag) => ( {tag} ))}
)}

{title}

{description}

{hasMeta && (
{year && (
{year}
)} {client && ( <> {year && }
{client}
)} {role && ( <> {(year || client) && }
{role}
)}
)} {(url || repo) && (
{url && ( )} {repo && ( )}
)}
{image && (
{imageAlt
)}