import Grid from '@mui/material/GridLegacy'; import IconButton from '@mui/material/IconButton'; import { FC } from 'react'; import { PiX, PiArrowClockwise, PiArrowCounterClockwise, PiPlayCircleFill, PiArrowCounterClockwiseFill, PiPauseCircleFill, } from 'react-icons/pi'; import { useMediaStore } from '../../context'; import { useOnHoveredPipControlElement } from '../../hooks/use-on-hovered-element'; import { SECONDS_TO_SKIP } from '../../utils/constants'; import { PlayPauseReplay, PlaybackRateButton, } from '../bottom-control-buttons/components'; import { ProgressBar } from '../progress-bar/ProgressBar'; import { usePipControlsHook } from './usePipControlsHook'; import { usePipControlsStyles } from './usePipControlsStyles'; interface PipControlsProps { skipSeconds?: number; } /** * Controls for the PIP player. * @category React Component * @category UI Controls */ export const PipControls: FC = ({ skipSeconds = SECONDS_TO_SKIP, }) => { const showPipControls = useMediaStore(state => state.showPipControls); const { onMouseEnter, onMouseLeave } = useOnHoveredPipControlElement(); const { onClose, onFwd, onRwd } = usePipControlsHook({ skipSeconds, }); const { wrapper, iconButton, iconRightWrapper, centerIcon, centerButtonIcon, playBackRateWrapper, progressBar, } = usePipControlsStyles().classes; if (!showPipControls) { return ; } return ( <>
); };