"use client"; import { useEffect, useState } from "react"; interface Props { organFlags: { liver?: boolean; heart?: boolean; kidney?: boolean; lungs?: boolean; }; } export default function BodyMap({ organFlags }: Props) { const [pulse, setPulse] = useState(false); useEffect(() => { setTimeout(() => setPulse(true), 600); }, []); const glowStyle = { fill: "#FF9933", opacity: pulse ? 1 : 0.3, transition: "opacity 0.5s ease", }; const normalStyle = { fill: "#334155", opacity: 0.6, }; return (
{/* Head */} {/* Neck */} {/* Body */} {/* Heart */} {organFlags.heart && ( )} {/* Lungs */} {/* Liver */} {organFlags.liver && ( liver )} {/* Kidneys */} {/* Arms */} {/* Legs */} {/* Legend */}
{Object.entries(organFlags).map(([organ, active]) => active ? ( 🟠 {organ.charAt(0).toUpperCase() + organ.slice(1)} ) : null )} {!Object.values(organFlags).some(Boolean) && ( No specific organ detected )}
); }