{"version":3,"file":"LogoMarquee.mjs","names":[],"sources":["../../../src/awesome/LogoMarquee/LogoMarquee.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { type CSSProperties, memo } from 'react';\n\nimport { renderLandingIcon } from '@/awesome/landingIcon';\n\nimport { styles } from './style';\nimport type { LogoMarqueeProps } from './type';\n\nconst Track = ({\n  hidden,\n  iconOnly,\n  iconSize,\n  items,\n}: Pick<LogoMarqueeProps, 'iconOnly' | 'items'> & { hidden?: boolean; iconSize: number }) => (\n  <div aria-hidden={hidden || undefined} className={styles.track}>\n    {items.map(({ icon, label }) => (\n      <span className={styles.item} key={label} title={iconOnly ? label : undefined}>\n        {renderLandingIcon(icon, iconSize)}\n        {!iconOnly && label}\n      </span>\n    ))}\n  </div>\n);\n\nconst LogoMarquee = memo<LogoMarqueeProps>(\n  ({\n    caption,\n    className,\n    duration = 28,\n    gap = 36,\n    iconOnly = false,\n    iconSize = 18,\n    items,\n    maxWidth = 640,\n    style,\n    ...rest\n  }) => {\n    const variables = {\n      '--logo-marquee-duration': `${duration}s`,\n      '--logo-marquee-gap': `${gap}px`,\n      '--logo-marquee-max-width': typeof maxWidth === 'number' ? `${maxWidth}px` : maxWidth,\n    } as CSSProperties;\n\n    return (\n      <div className={cx(styles.root, className)} style={{ ...variables, ...style }} {...rest}>\n        <div className={styles.viewport}>\n          <Track iconOnly={iconOnly} iconSize={iconSize} items={items} />\n          <Track hidden iconOnly={iconOnly} iconSize={iconSize} items={items} />\n        </div>\n        {caption && <p className={styles.caption}>{caption}</p>}\n      </div>\n    );\n  },\n);\n\nLogoMarquee.displayName = 'LogoMarquee';\n\nexport default LogoMarquee;\n"],"mappings":";;;;;;;AAUA,MAAM,SAAS,EACb,QACA,UACA,UACA,YAEA,oBAAC,OAAD;CAAK,eAAa,UAAU,KAAA;CAAW,WAAW,OAAO;CACtD,UAAA,MAAM,KAAK,EAAE,MAAM,YAClB,qBAAC,QAAD;EAAM,WAAW,OAAO;EAAkB,OAAO,WAAW,QAAQ,KAAA;EAApE,UAAA,CACG,kBAAkB,MAAM,QAAQ,GAChC,CAAC,YAAY,KACV;CAH6B,GAAA,KAG7B,CACP;AACE,CAAA;AAGP,MAAM,cAAc,MACjB,EACC,SACA,WACA,WAAW,IACX,MAAM,IACN,WAAW,OACX,WAAW,IACX,OACA,WAAW,KACX,OACA,GAAG,WACC;CACJ,MAAM,YAAY;EAChB,2BAA2B,GAAG,SAAS;EACvC,sBAAsB,GAAG,IAAI;EAC7B,4BAA4B,OAAO,aAAa,WAAW,GAAG,SAAS,MAAM;CAC/E;CAEA,OACE,qBAAC,OAAD;EAAK,WAAW,GAAG,OAAO,MAAM,SAAS;EAAG,OAAO;GAAE,GAAG;GAAW,GAAG;EAAM;EAAG,GAAI;EAAnF,UAAA,CACE,qBAAC,OAAD;GAAK,WAAW,OAAO;GAAvB,UAAA,CACE,oBAAC,OAAD;IAAiB;IAAoB;IAAiB;GAAQ,CAAA,GAC9D,oBAAC,OAAD;IAAO,QAAA;IAAiB;IAAoB;IAAiB;GAAQ,CAAA,CAClE;EACJ,CAAA,GAAA,WAAW,oBAAC,KAAD;GAAG,WAAW,OAAO;GAAU,UAAA;EAAW,CAAA,CACnD;;AAET,CACF;AAEA,YAAY,cAAc"}