Skip to content

Commit 13aee28

Browse files
authored
fix(Slider): fix react-slick and react-player import (#1165)
1 parent 9215898 commit 13aee28

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

src/blocks/Slider/Slider.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import {useUniqId} from '@gravity-ui/uikit';
44
import debounce from 'lodash/debounce';
55
import get from 'lodash/get';
66
import noop from 'lodash/noop';
7-
import SlickSlider, {Settings} from 'react-slick';
7+
import _SlickSlider, {Settings} from 'react-slick';
88

99
import Anchor from '../../components/Anchor/Anchor';
1010
import AnimateBlock from '../../components/AnimateBlock/AnimateBlock';
@@ -44,6 +44,11 @@ const slick = block('slick-origin');
4444
const DOT_WIDTH = 8;
4545
const DOT_GAP = 16;
4646

47+
const SlickSlider =
48+
'default' in _SlickSlider && _SlickSlider.default
49+
? (_SlickSlider.default as typeof _SlickSlider)
50+
: _SlickSlider;
51+
4752
export interface SliderProps
4853
extends Omit<SliderParams, 'children'>,
4954
Refable<HTMLDivElement>,
@@ -107,7 +112,7 @@ export const SliderBlock = (props: React.PropsWithChildren<SliderProps>) => {
107112

108113
const [currentIndex, setCurrentIndex] = React.useState<number>(0);
109114
const [childStyles, setChildStyles] = React.useState<Object>({});
110-
const [slider, setSlider] = React.useState<SlickSlider>();
115+
const [slider, setSlider] = React.useState<_SlickSlider>();
111116
const prevIndexRef = React.useRef<number>(0);
112117
const autoplayTimeId = React.useRef<Timeout>();
113118
const {hasFocus, unsetFocus} = useFocus(slider?.innerSlider?.list);
@@ -384,7 +389,7 @@ export const SliderBlock = (props: React.PropsWithChildren<SliderProps>) => {
384389
const variableWidth = isServer && isMobile;
385390

386391
const settings = {
387-
ref: (slickSlider: SlickSlider) => setSlider(slickSlider),
392+
ref: (slickSlider: _SlickSlider) => setSlider(slickSlider),
388393
className: slick(null, className),
389394
arrows,
390395
variableWidth,

src/components/ReactPlayer/ReactPlayer.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import * as React from 'react';
33
import {PlayFill} from '@gravity-ui/icons';
44
import {Icon} from '@gravity-ui/uikit';
55
import debounce from 'lodash/debounce';
6-
import ReactPlayer from 'react-player';
6+
import _ReactPlayer from 'react-player';
77

88
import {MobileContext} from '../../context/mobileContext';
99
import {VideoContext} from '../../context/videoContext';
@@ -35,6 +35,11 @@ const b = block('ReactPlayer');
3535

3636
const FPS = 60;
3737

38+
const ReactPlayer =
39+
'default' in _ReactPlayer && _ReactPlayer.default
40+
? (_ReactPlayer.default as typeof _ReactPlayer)
41+
: _ReactPlayer;
42+
3843
export interface ReactPlayerBlockProps
3944
extends Omit<MediaVideoProps, 'loop' | 'src'>,
4045
ClassNameProps {
@@ -99,7 +104,7 @@ export const ReactPlayerBlock = React.forwardRef<ReactPlayerBlockHandler, ReactP
99104
const ref = React.useRef<HTMLDivElement>(null);
100105
const buttonRef = React.useRef<HTMLButtonElement>(null);
101106

102-
const [playerRef, setPlayerRef] = React.useState<ReactPlayer>();
107+
const [playerRef, setPlayerRef] = React.useState<_ReactPlayer>();
103108
const [isPlaying, setIsPlaying] = React.useState(autoPlay);
104109
const [playedPercent, setPlayedPercent] = React.useState<number>(0);
105110
const [currentHeight, setCurrentHeight] = React.useState(height);
@@ -310,7 +315,7 @@ export const ReactPlayerBlock = React.forwardRef<ReactPlayerBlockHandler, ReactP
310315
}
311316
}, [changeMute, controls, customControlsType, ended, isPlaying, muted]);
312317

313-
const onReady = React.useCallback((player: ReactPlayer) => {
318+
const onReady = React.useCallback((player: _ReactPlayer) => {
314319
setPlayerRef(player);
315320
const videoElement = player.getInternalPlayer();
316321
const videoWidth = videoElement.videoWidth as number | undefined;

0 commit comments

Comments
 (0)