Merge version_5 into main #5
@@ -1,5 +1,6 @@
|
||||
"use client";
|
||||
|
||||
import { useState, useRef } from "react";
|
||||
import TextBox from "@/components/Textbox";
|
||||
import MediaContent from "@/components/shared/MediaContent";
|
||||
import AutoCarousel from "@/components/cardStack/layouts/carousels/AutoCarousel";
|
||||
@@ -83,6 +84,8 @@ const HeroBillboardCarousel = ({
|
||||
buttonTextClassName = "",
|
||||
mediaWrapperClassName = "",
|
||||
}: HeroBillboardCarouselProps) => {
|
||||
const [isHovered, setIsHovered] = useState(false);
|
||||
const carouselRef = useRef<HTMLDivElement>(null);
|
||||
const renderCarouselItem = (item: MediaItem, index: number) => (
|
||||
<div
|
||||
key={index}
|
||||
@@ -146,7 +149,12 @@ const HeroBillboardCarousel = ({
|
||||
center={true}
|
||||
/>
|
||||
|
||||
<div className={cls("w-full -mx-[var(--content-padding)] relative z-20", mediaWrapperClassName)}>
|
||||
<div
|
||||
ref={carouselRef}
|
||||
className={cls("w-full -mx-[var(--content-padding)] relative z-20", mediaWrapperClassName)}
|
||||
onMouseEnter={() => setIsHovered(true)}
|
||||
onMouseLeave={() => setIsHovered(false)}
|
||||
>
|
||||
<AutoCarousel
|
||||
title=""
|
||||
description=""
|
||||
@@ -158,6 +166,8 @@ const HeroBillboardCarousel = ({
|
||||
itemClassName="!w-55 md:!w-carousel-item-4"
|
||||
ariaLabel="Hero carousel"
|
||||
showTextBox={false}
|
||||
autoPlayInterval={isHovered ? 0 : 5000}
|
||||
pauseOnHover={true}
|
||||
>
|
||||
{mediaItems?.map(renderCarouselItem)}
|
||||
</AutoCarousel>
|
||||
|
||||
Reference in New Issue
Block a user