UNPKG

@zezosoft/zezo-ott-react-native-video-player

Version:

Production-ready React Native OTT video player library for Android & iOS. Features: playlists, seasons, auto-next playback, subtitles (SRT/VTT), custom theming, analytics tracking, fullscreen mode, gesture controls, ads player (pre-roll/mid-roll/post-roll

57 lines (56 loc) 1.51 kB
"use strict"; import { StyleSheet, View } from 'react-native'; import { RFValue } from 'react-native-responsive-fontsize'; import { scale } from 'react-native-size-matters'; import Subtitles from 'react-native-subtitles'; import { useVideoPlayerStore } from "../store/videoPlayerStore.js"; import { Display } from "../utils/index.js"; import { useVideoPlayerConfig } from "../context/index.js"; import { jsx as _jsx } from "react/jsx-runtime"; const SubtitleView = () => { const { activeSubtitle, currentTime, controlsVisible, settingsModal } = useVideoPlayerStore(); const { colors } = useVideoPlayerConfig(); if (!activeSubtitle || !activeSubtitle.url || controlsVisible || settingsModal.isVisible) { return null; } return /*#__PURE__*/_jsx(View, { style: styles.container, children: /*#__PURE__*/_jsx(Subtitles, { containerStyle: styles.subtitleContainer, textStyle: { ...styles.text, color: colors.text }, currentTime: currentTime, selectedsubtitle: { file: activeSubtitle.url } }) }); }; export default SubtitleView; const styles = StyleSheet.create({ container: { width: '100%', position: 'absolute', bottom: Display.setHeight(3), zIndex: 10 }, subtitleContainer: { padding: scale(10) }, text: { fontSize: RFValue(14), paddingHorizontal: scale(10), paddingVertical: scale(5), borderRadius: scale(5) } }); //# sourceMappingURL=SubtitleView.js.map