|
1 | | -import React, { useState, useRef, useEffect, useCallback } from "react"; |
| 1 | +import React, { useState, useRef, useEffect, useCallback } from 'react'; |
2 | 2 |
|
3 | | -import { CarouselProps as CarouselSlide } from "../types/Carousel"; |
4 | | -import { Genre } from "../types/Movie"; |
| 3 | +import { CarouselProps as CarouselSlide } from '../types/Carousel'; |
| 4 | +import { Genre } from '../types/Movie'; |
5 | 5 |
|
6 | 6 | type Slide = CarouselSlide | Genre; |
7 | 7 |
|
8 | | -const useCarousel = ({ articleWidth, slides }: { articleWidth: number; slides: Slide[] }): { |
9 | | - containerRef: React.RefObject<HTMLDivElement>; |
10 | | - trackRef: React.RefObject<HTMLDivElement>; |
| 8 | +const useCarousel = ({ |
| 9 | + articleWidth, |
| 10 | + slides, |
| 11 | +}: { |
| 12 | + articleWidth: number; |
| 13 | + slides: Slide[]; |
| 14 | +}): { |
| 15 | + containerRef: React.RefObject<HTMLDivElement | null>; |
| 16 | + trackRef: React.RefObject<HTMLDivElement | null>; |
11 | 17 | transitionEnabled: boolean; |
12 | 18 | displayIndex: number; |
13 | 19 | clonedSlides: Slide[]; |
@@ -47,8 +53,8 @@ const useCarousel = ({ articleWidth, slides }: { articleWidth: number; slides: S |
47 | 53 | calculateVisibleCount(); |
48 | 54 | }; |
49 | 55 |
|
50 | | - window.addEventListener("resize", handleResize); |
51 | | - return (): void => window.removeEventListener("resize", handleResize); |
| 56 | + window.addEventListener('resize', handleResize); |
| 57 | + return (): void => window.removeEventListener('resize', handleResize); |
52 | 58 | }, [calculateVisibleCount]); |
53 | 59 |
|
54 | 60 | const clonedSlides = [...slides.slice(-visibleCount), ...slides, ...slides.slice(0, visibleCount)]; |
|
0 commit comments