@8man/react-native-media-console
Version:
Controls for react-native-video
75 lines • 2.83 kB
JavaScript
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
// @ts-nocheck
import React, { createRef } from 'react';
import { Image, Platform, TouchableOpacity } from 'react-native';
import { Control } from '../Control';
import { NullControl } from '../NullControl';
import { styles } from './styles';
import { Loader } from '@8man/react-native-media-console/src/components/Loader';
export const playPauseRef = /*#__PURE__*/createRef();
const play = require('../../assets/img/playNew.png');
const pause = require('../../assets/img/pauseNew.png');
const rewind = require('../../assets/img/rewind10.png');
const forward = require('../../assets/img/forward10.png');
export const PlayPause = ({
animations: {
AnimatedView,
...animations
},
disablePlayPause,
disableSeekButtons,
paused,
// pauseLabel,
buffering,
togglePlayPause,
resetControlTimeout,
showControls,
onPressForward,
onPressRewind,
primaryColor
}) => {
const animatedStyles = {
zIndex: showControls ? 99999 : 0
};
if (disablePlayPause) {
return /*#__PURE__*/React.createElement(NullControl, null);
}
return /*#__PURE__*/React.createElement(AnimatedView, {
pointerEvents: 'box-none',
style: [styles.container, animatedStyles, animations.controlsOpacity]
}, !disableSeekButtons ? /*#__PURE__*/React.createElement(Control, {
disabled: !showControls,
callback: onPressRewind,
resetControlTimeout: resetControlTimeout
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: onPressRewind
}, /*#__PURE__*/React.createElement(Image, {
source: rewind,
style: styles.rewind
}))) : null, /*#__PURE__*/React.createElement(Control, _extends({
disabled: !showControls,
callback: togglePlayPause,
resetControlTimeout: resetControlTimeout,
style: styles.playContainer,
controlRef: playPauseRef
}, Platform.isTV ? {
hasTVPreferredFocus: showControls
} : {}), buffering ? /*#__PURE__*/React.createElement(Loader, {
color: primaryColor
}) : /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: togglePlayPause
}, /*#__PURE__*/React.createElement(Image, {
source: paused ? play : pause,
style: styles.play
}))), !disableSeekButtons ? /*#__PURE__*/React.createElement(Control, {
disabled: !showControls,
callback: onPressForward,
resetControlTimeout: resetControlTimeout
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: onPressForward
}, /*#__PURE__*/React.createElement(Image, {
source: forward,
style: styles.forward
}))) : null);
};
//# sourceMappingURL=PlayPause.js.map