"use client"; import { useState, useEffect } from "react"; import { motion } from "framer-motion"; import Loader from '@/app/(landing)/components/Loader'; import { useCompanies } from '@/app/(landing)/home/services/companies'; import { assetUrl } from '@/app/(landing)/services/api'; import type { ThemeProps } from '@/app/(landing)/types/ui'; function ClientsInner({ isNavyBg }: ThemeProps) { const { data, isLoading } = useCompanies(); const bg = isNavyBg ? "var(--background)" : "#f0efec"; const border = isNavyBg ? "rgba(255,255,255,0.07)" : "rgba(0,0,0,0.07)"; const label = isNavyBg ? "rgba(255,255,255,0.28)" : "rgba(0,0,0,0.28)"; const companies = (data ?? []).filter((c) => c.showInLanding && c.logoUrl); if (isLoading) { return (
); } if (companies.length === 0) return null; return (

Empresas que confían en Rynext

{companies.map((c) => (
{c.name} { (e.currentTarget as HTMLImageElement).style.display = "none"; }} onMouseEnter={(e) => ((e.currentTarget as HTMLImageElement).style.opacity = "1") } onMouseLeave={(e) => ((e.currentTarget as HTMLImageElement).style.opacity = "0.6") } />
))}
); } export const Clients = (props: ThemeProps) => { const [mounted, setMounted] = useState(false); useEffect(() => setMounted(true), []); if (!mounted) return null; return ; };