'use client';
import { useRef, useEffect } from 'react';
type props = {
dateLabel: string;
category: string;
roles: string[];
client: string;
};
function MetaItem({ label, children }: { label: string; children: React.ReactNode }) {
return (
);
}
export function ProjectMeta({ dateLabel, category, roles, client }: props) {
const ref = useRef(null);
useEffect(() => {
const el = ref.current;
if (!el) return;
const observer = new IntersectionObserver(
([entry]) => {
if (entry.isIntersecting) {
el.classList.add('visible');
observer.unobserve(el);
}
},
{ threshold: 0.2 }
);
observer.observe(el);
return () => observer.disconnect();
}, []);
return (
{/* Top divider */}
{dateLabel}
{category}
{roles.map((role) => (
{role}
))}
{client}
{/* Bottom divider */}
);
}