components/customer-logo-marquee/index.tsx (30 lines of code) (raw):
import React from 'react';
import cn from 'classnames';
import { Marquee } from '../marquee';
import styles from './index.module.css';
export interface LogoItem {
id: string;
logo: string;
link: string;
}
const CustomerLogoMarqueeSection: React.FC<{ className?: string, items: LogoItem[] }> = ({ className, items }) => {
return (
<div className={cn(styles.section, className)} data-testid={'customers-block'}>
<Marquee className={styles.list} pauseOnHover hasFadingEdges>
{items.map((item) => (
<a
key={item.id}
href={item.link}
target="_blank"
rel="noopener noreferrer"
className={styles.logoLink}
data-testid="customers-link"
>
<img src={item.logo} alt={item.link} className={styles.logo} />
</a>
))}
</Marquee>
</div>
);
};
export default CustomerLogoMarqueeSection;