Merged in fix/remove-deafult-centering-behaviour-in-carousels (pull request #1543)

refactor(SW-1941): clean up custom Carousel component centering

* refactor: clean up custom Carousel component centering

- Removed unused centerContent class from carousel.module.css.
- Simplified CarouselContent component by eliminating unnecessary state and effect hooks.
- Updated HotelCardCarousel to include responsive breakpoints for scrolling behavior.

* refactor: simplify scrolling options in HotelCardCarousel

- Updated the HotelCardCarousel component to streamline scrolling options by removing responsive breakpoints and setting containScroll to false.


Approved-by: Matilda Landström
This commit is contained in:
Chuma Mcphoy (We Ahead)
2025-03-17 15:28:24 +00:00
parent 38f3b0e6a4
commit 0a150a4eca
3 changed files with 3 additions and 17 deletions

View File

@@ -1,7 +1,6 @@
"use client"
import { cx } from "class-variance-authority"
import { useEffect, useState } from "react"
import { useCarousel } from "./CarouselContext"
@@ -12,21 +11,11 @@ export function CarouselContent({
children,
...props
}: React.HTMLAttributes<HTMLDivElement>) {
const { carouselRef, canScrollNext, canScrollPrev } = useCarousel()
const [isOneItem, setIsOneItem] = useState(false)
useEffect(() => {
setIsOneItem(!canScrollPrev() && !canScrollNext())
}, [canScrollPrev, canScrollNext])
const { carouselRef } = useCarousel()
return (
<div ref={carouselRef} className={styles.viewport}>
<div
className={cx(styles.container, className, {
[styles.centerContent]: isOneItem,
})}
{...props}
>
<div className={cx(styles.container, className)} {...props}>
{children}
</div>
</div>

View File

@@ -13,10 +13,6 @@
gap: var(--Spacing-x2);
}
.centerContent {
justify-content: center;
}
.item {
min-width: 0;
}

View File

@@ -29,6 +29,7 @@ export default function HotelCardCarousel({
className={styles.carousel}
scrollToIdx={selectedHotelIdx}
align="center"
opts={{ containScroll: false }}
>
<Carousel.Content className={styles.carouselContent}>
{visibleHotels.map(({ hotel, url }) => (