diff --git a/src/pages/discover/components/LazyMediaCarousel.tsx b/src/pages/discover/components/LazyMediaCarousel.tsx
index 86dfc799..527bbbbf 100644
--- a/src/pages/discover/components/LazyMediaCarousel.tsx
+++ b/src/pages/discover/components/LazyMediaCarousel.tsx
@@ -10,7 +10,6 @@ interface LazyMediaCarouselProps {
category?: Category | null;
genre?: Genre | null;
mediaType: "movie" | "tv";
- movieWidth: string;
isMobile: boolean;
carouselRefs: React.MutableRefObject<{
[key: string]: HTMLDivElement | null;
@@ -21,7 +20,6 @@ export function LazyMediaCarousel({
category,
genre,
mediaType,
- movieWidth,
isMobile,
carouselRefs,
}: LazyMediaCarouselProps) {
@@ -57,7 +55,6 @@ export function LazyMediaCarousel({
medias={medias}
category={categoryName}
isTVShow={mediaType === "tv"}
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
diff --git a/src/pages/discover/components/MediaCarousel.tsx b/src/pages/discover/components/MediaCarousel.tsx
index e29f0f42..1c69bf50 100644
--- a/src/pages/discover/components/MediaCarousel.tsx
+++ b/src/pages/discover/components/MediaCarousel.tsx
@@ -7,7 +7,6 @@ interface MediaCarouselProps {
medias: Media[];
category: string;
isTVShow: boolean;
- movieWidth: string;
isMobile: boolean;
carouselRefs: React.MutableRefObject<{
[key: string]: HTMLDivElement | null;
@@ -18,7 +17,6 @@ export function MediaCarousel({
medias,
category,
isTVShow,
- movieWidth,
isMobile,
carouselRefs,
}: MediaCarouselProps) {
@@ -65,76 +63,70 @@ export function MediaCarousel({
const displayCategory = getDisplayCategory(category, isTVShow);
return (
-
-
+ <>
+
{displayCategory}
-
- {
- carouselRefs.current[categorySlug] = el;
- }}
- onWheel={handleWheel}
- >
- {medias
- .filter(
- (media, index, self) =>
- index ===
- self.findIndex(
- (m) => m.id === media.id && m.title === media.title,
- ),
- )
- .slice(0, 25)
- .map((media, index, array) => (
-
) =>
- e.preventDefault()
- }
- key={media.id}
- className={`max-h-200 relative mt-3 transition-transform duration-[0.45s] hover:scale-105 ${
- index === 0
- ? "md:ml-[6.5rem] mr-[0.2em] md:mr-[0.5em]"
- : index === array.length - 1
- ? "md:mr-[6.5rem] ml-[0.2em] md:ml-[0.5em]"
- : "mx-[0.2em] md:mx-[0.5em]"
- } group cursor-pointer rounded-xl relative p-[0.65em] bg-background-main transition-colors duration-300 bg-transparent`}
- style={{
- flex: `0 0 ${movieWidth}`,
- userSelect: "none",
- aspectRatio: "2/3",
- width: movieWidth,
- height: "auto",
- }}
- >
-
+ {
+ carouselRefs.current[categorySlug] = el;
+ }}
+ onWheel={handleWheel}
+ >
+ {medias
+ .filter(
+ (media, index, self) =>
+ index ===
+ self.findIndex(
+ (m) => m.id === media.id && m.title === media.title,
+ ),
+ )
+ .slice(0, 25)
+ .map((media, index, array) => (
+
) =>
+ e.preventDefault()
+ }
key={media.id}
- media={{
- id: media.id.toString(),
- title: media.title || media.name || "",
- poster: `https://image.tmdb.org/t/p/w342${media.poster_path}`,
- type: isTVShow ? "show" : "movie",
- year: isTVShow
- ? media.first_air_date
- ? parseInt(media.first_air_date.split("-")[0], 10)
- : undefined
- : media.release_date
- ? parseInt(media.release_date.split("-")[0], 10)
- : undefined,
- }}
- />
-
- ))}
-
+ className={`relative mt-4 group cursor-pointer user-select-none rounded-xl p-2 bg-background-main transition-colors duration-300 bg-transparent min-w-[200px] max-w-[200px] max-h-[500px] ${
+ index === 0
+ ? "ml-6 md:ml-[6.5rem] mr-[0.2em] md:mr-[0.5em]"
+ : index === array.length - 1
+ ? "mr-6 md:mr-[6.5rem] ml-[0.2em] md:ml-[0.5em]"
+ : "mx-2 md:mx-3"
+ }`}
+ >
+
+
+ ))}
+
- {!isMobile && (
-
- )}
-
+ {!isMobile && (
+
+ )}
+
+ >
);
}
diff --git a/src/pages/discover/discoverContent.tsx b/src/pages/discover/discoverContent.tsx
index 01a135d5..a66d040b 100644
--- a/src/pages/discover/discoverContent.tsx
+++ b/src/pages/discover/discoverContent.tsx
@@ -54,9 +54,6 @@ export function DiscoverContent() {
name: "",
id: "",
});
- const [movieWidth, setMovieWidth] = useState(
- window.innerWidth < 600 ? "150px" : "200px",
- );
const [providerMovies, setProviderMovies] = useState([]);
const [providerTVShows, setProviderTVShows] = useState([]);
@@ -118,14 +115,6 @@ export function DiscoverContent() {
fetchGenres();
}, [isMoviesTab]);
- useEffect(() => {
- const handleResize = () => {
- setMovieWidth(window.innerWidth < 600 ? "150px" : "200px");
- };
- window.addEventListener("resize", handleResize);
- return () => window.removeEventListener("resize", handleResize);
- }, []);
-
useEffect(() => {
let countdownInterval: NodeJS.Timeout;
if (countdown !== null && countdown > 0) {
@@ -204,7 +193,6 @@ export function DiscoverContent() {
medias={providerMovies}
category={selectedProvider.name}
isTVShow={false}
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
@@ -216,7 +204,6 @@ export function DiscoverContent() {
key={category.name}
category={category}
mediaType="movie"
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
@@ -228,7 +215,6 @@ export function DiscoverContent() {
key={genre.id}
genre={genre}
mediaType="movie"
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
@@ -247,7 +233,6 @@ export function DiscoverContent() {
medias={providerTVShows}
category={selectedProvider.name}
isTVShow
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
@@ -259,7 +244,6 @@ export function DiscoverContent() {
key={category.name}
category={category}
mediaType="tv"
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>
@@ -271,7 +255,6 @@ export function DiscoverContent() {
key={genre.id}
genre={genre}
mediaType="tv"
- movieWidth={movieWidth}
isMobile={isMobile}
carouselRefs={carouselRefs}
/>