// Imported from investidor/resources/js/modules/news/sections/about/CompanyValues.tsx; original content preserved. import { useState, useEffect, useRef } from 'react'; import { Users, Lightbulb, Globe, ChevronDown, ChevronUp } from 'lucide-react'; import { Trans } from './source-text'; const img01 = '/assets/imgs/img01.jpg'; const img02 = '/assets/imgs/img02.jpg'; const img03 = '/assets/imgs/img03.jpg'; const img04 = '/assets/imgs/img04.jpg'; interface CompanyValue { id: number; title: string; description: string; image?: string; icon?: React.ReactNode; color?: string; label?: string; } export const CompanyValues = () => { const [hoveredId, setHoveredId] = useState(null); const [isInView, setIsInView] = useState(false); const [expandedId, setExpandedId] = useState(null); const sectionRef = useRef(null); useEffect(() => { const handleScroll = () => { if (sectionRef.current) { const rect = sectionRef.current.getBoundingClientRect(); setIsInView( rect.top < window.innerHeight * 0.8 && rect.bottom > 100, ); } }; window.addEventListener('scroll', handleScroll); handleScroll(); return () => window.removeEventListener('scroll', handleScroll); }, []); const values: CompanyValue[] = [ { id: 1, title: 'Diversidade & Inclusão', description: 'Representando todas as vozes e realidades de Moçambique', image: img01, icon: , color: 'from-red-500 to-orange-500', label: 'Valor Central', }, { id: 2, title: 'Inovação', description: 'Soluções tecnológicas e sustentáveis que impulsionam o desenvolvimento', image: img02, icon: , color: 'from-red-600 to-red-700', label: 'Essencial', }, { id: 3, title: 'Excelência', description: 'Acreditamos que cada história merece ser contada com propósito. Combinamos visão criativa e conhecimento estratégico para dar vida às ideias.', image: img03, label: 'Somos mais que comunicação, somos transformação', }, { id: 4, title: 'Impacto Positivo', description: 'Criamos marcas que inspiram, conteúdo que conecta e experiências memoráveis. Transformamos visão em realidade com estratégia, criatividade e tecnologia.', image: img04, icon: , color: 'from-red-600 to-red-700', label: 'Propósito', }, ]; const toggleExpand = (id: number) => { setExpandedId(expandedId === id ? null : id); }; return (

Valores

{values.map((value, i) => { const isExpanded = expandedId === value.id; const hasLongText = value.id === 3 || value.id === 4; return (
setHoveredId(value.id)} onMouseLeave={() => setHoveredId(null)} className={`group relative transition-all duration-500 ${isInView ? 'translate-y-0 opacity-100' : 'translate-y-10 opacity-0'}`} style={{ transitionDelay: `${i * 100}ms` }} >
{value.title}
{value.icon && value.color && (
{value.icon}
)} {value.label && (
{value.label}
)}

{value.title}

{value.description}

{hasLongText && ( )}
{hoveredId === value.id && (
)}
); })}
); }; export default CompanyValues;