react-jplayer
Version:
Html5 audio and video player library for React
1,913 lines (1,494 loc) • 116 kB
JavaScript
var ReactJPlayer =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 34);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports) {
module.exports = ReactJPlayerUtils;
/***/ }),
/* 1 */
/***/ (function(module, exports) {
module.exports = PropTypes;
/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var actionNames = exports.actionNames = {
SET_MEDIA: 'JPLAYER_SET_MEDIA',
CLEAR_MEDIA: 'JPLAYER_CLEAR_MEDIA',
PLAY: 'JPLAYER_PLAY',
PAUSE: 'JPLAYER_PAUSE',
PLAY_HEAD: 'JPLAYER_PLAY_HEAD',
VOLUME: 'JPLAYER_VOLUME',
MUTE: 'JPLAYER_MUTE',
FOCUS: 'JPLAYER_FOCUS',
SET_OPTION: 'JPLAYER_SET_JPLAYER_OPTION'
};
var errors = exports.errors = {
FORMAT_NO_SUPPORT: 'It is not possible to play any media format ' + 'provided on this browser using your current defaultOptions.',
URL_NO_SUPPORT: 'The media URL could not be loaded.',
URL_NOT_SET: 'Attempted to issue media playback commands while no media url is set.',
INVALID_GLOBAL_METHOD: 'You passed an invalid jPlayer method to the global array'
};
var hints = exports.hints = {
FORMAT_NO_SUPPORT: 'The browser may not support these file types.',
URL_NO_SUPPORT: 'Check the media URL is valid.',
URL_NOT_SET: 'Pass the media through the defaultOptions or use the setMedia() ' + 'action that is passed into the component props.',
INVALID_GLOBAL_METHOD: 'Remove the invalid method from the "global" option'
};
var classes = exports.classes = {
MEDIA: 'jp-media',
JPLAYER: 'jp-jplayer',
MUTE: 'jp-mute',
DOWNLOAD: 'jp-download',
VOLUME_BAR: 'jp-volume-bar',
VOLUME_BAR_VALUE: 'jp-volume-bar-value',
PLAYBACK_RATE_BAR: 'jp-playback-rate-bar',
PLAYBACK_RATE_BAR_VALUE: 'jp-playback-rate-bar-value',
BUFFER_BAR: 'jp-buffer-bar',
PROGRESS: 'jp-progress',
SEEK_BAR: 'jp-seek-bar',
PLAY_BAR: 'jp-play-bar',
SEEKING: 'jp-seeking-bg',
GUI: 'jp-gui',
NO_BROWSER_SUPPORT: 'jp-no-browser-support',
PLAY: 'jp-play',
PAUSE: 'jp-pause',
STOP: 'jp-stop',
REPEAT: 'jp-repeat',
FULL_SCREEN: 'jp-full-screen',
CURRENT_TIME: 'jp-current-time',
DURATION: 'jp-duration',
DETAILS: 'jp-details',
TITLE: 'jp-title',
SHUFFLE: 'jp-shuffle',
PREVIOUS: 'jp-previous',
NEXT: 'jp-next',
POSTER: 'jp-poster',
states: {
AUDIO: 'jp-state-audio',
VIDEO: 'jp-state-video',
PLAYING: 'jp-state-playing',
IDLE: 'jp-state-idle',
SEEKING: 'jp-state-seeking',
MUTED: 'jp-state-muted',
VOLUME_LOW: 'jp-state-volume-low',
VOLUME_HIGH: 'jp-state-volume-high',
LOOPED: 'jp-state-looped',
FULL_SCREEN: 'jp-state-full-screen',
SHUFFLED: 'jp-state-shuffled',
NO_BROWSER_SUPPORT: 'jp-state-no-browser-support',
NO_VOLUME_SUPPORT: 'jp-state-no-volume-support'
}
};
var keyIgnoredElementNames = exports.keyIgnoredElementNames = ['INPUT', 'TEXTAREA', 'SELECT'];
var formats = exports.formats = {
mp3: {
CODEC: 'audio/mpeg',
MEDIA: 'audio'
},
m4a: { // AAC / MP4
CODEC: 'audio/mp4; codecs="mp4a.40.2"',
MEDIA: 'audio'
},
m3u8a: { // AAC / MP4 / Apple HLS
CODEC: 'application/vnd.apple.mpegurl; codecs="mp4a.40.2"',
MEDIA: 'audio'
},
m3ua: { // M3U
CODEC: 'audio/mpegurl',
MEDIA: 'audio'
},
oga: { // OGG
CODEC: 'audio/ogg; codecs="vorbis, opus"',
MEDIA: 'audio'
},
flac: { // FLAC
CODEC: 'audio/x-flac',
MEDIA: 'audio'
},
wav: { // PCM
CODEC: 'audio/wav; codecs="1"',
MEDIA: 'audio'
},
webma: { // WEBM
CODEC: 'audio/webm; codecs="vorbis"',
MEDIA: 'audio'
},
fla: { // FLV / F4A
CODEC: 'audio/x-flv',
MEDIA: 'audio'
},
rtmpa: { // RTMP AUDIO
CODEC: 'audio/rtmp; codecs="rtmp"',
MEDIA: 'audio'
},
m4v: { // H.264 / MP4
CODEC: 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',
MEDIA: 'video'
},
m3u8v: { // H.264 / AAC / MP4 / Apple HLS
CODEC: 'application/vnd.apple.mpegurl; codecs="avc1.42E01E, mp4a.40.2"',
MEDIA: 'video'
},
m3uv: { // M3U
CODEC: 'audio/mpegurl',
MEDIA: 'video'
},
ogv: { // OGG
CODEC: 'video/ogg; codecs="theora, vorbis"',
MEDIA: 'video'
},
webmv: { // WEBM
CODEC: 'video/webm; codecs="vorbis, vp8"',
MEDIA: 'video'
},
flv: { // FLV / F4V
CODEC: 'video/x-flv',
MEDIA: 'video'
},
rtmpv: { // RTMP VIDEO
CODEC: 'video/rtmp; codecs="rtmp"',
MEDIA: 'video'
}
};
var defaultStatus = exports.defaultStatus = {
newTime: null, // Needed to set a newTime as currentTime is auto updated by the audio
guiFadeOut: false,
playHeadPercent: 0,
mediaSettings: {
video: false,
nonSupported: false,
formats: []
},
paused: true,
seeking: false,
src: null,
currentTimeText: '0:00',
durationText: null,
seekPercent: 0,
currentPercentRelative: 0,
currentPercentAbsolute: 0,
currentTime: 0,
duration: 0,
bufferedTimeRanges: [],
focused: false
};
var defaultOptions = exports.defaultOptions = {
preload: 'metadata',
minPlaybackRate: 0.5,
maxPlaybackRate: 4,
playbackRate: 1.0,
defaultPlaybackRate: 1.0,
bufferColour: '#ddd',
volume: 0.8,
barDrag: true,
pauseOthersOnPlay: true,
startGuiFadeOut: false,
guiFadeHoldTime: 2000,
media: {
sources: {},
tracks: [],
title: null,
artist: null,
poster: null,
free: false
},
keyBindings: {},
showRemainingDuration: false,
muted: false,
loop: false,
autoplay: false,
smoothPlayBar: false,
fullScreen: false,
verticalPlaybackRate: false,
verticalVolume: false,
keyEnabled: true,
timeFormats: {
showHour: false,
showMin: true,
showSec: true,
padHour: false,
padMin: true,
padSec: true,
sepHour: ':',
sepMin: ':',
sepSec: ''
}
};
/***/ }),
/* 3 */
/***/ (function(module, exports) {
module.exports = React;
/***/ }),
/* 4 */
/***/ (function(module, exports) {
module.exports = Recompose;
/***/ }),
/* 5 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.setOption = exports.focus = exports.setMute = exports.setVolume = exports.setPlayHead = exports.pause = exports.play = exports.clearMedia = exports.setMedia = undefined;
var _constants = __webpack_require__(2);
var setMedia = exports.setMedia = function setMedia(id, media) {
return {
type: _constants.actionNames.SET_MEDIA,
id: id,
media: media
};
};
var clearMedia = exports.clearMedia = function clearMedia(id) {
return {
type: _constants.actionNames.CLEAR_MEDIA,
id: id
};
};
var play = exports.play = function play(id, time) {
return {
type: _constants.actionNames.PLAY,
id: id,
time: time
};
};
var pause = exports.pause = function pause(id, time) {
return {
type: _constants.actionNames.PAUSE,
id: id,
time: time
};
};
var setPlayHead = exports.setPlayHead = function setPlayHead(id, percent) {
return {
type: _constants.actionNames.PLAY_HEAD,
id: id,
percent: percent
};
};
var setVolume = exports.setVolume = function setVolume(id, volume) {
return {
type: _constants.actionNames.VOLUME,
id: id,
volume: volume
};
};
var setMute = exports.setMute = function setMute(id, mute) {
return {
type: _constants.actionNames.MUTE,
id: id,
mute: mute
};
};
var focus = exports.focus = function focus(id) {
return {
type: _constants.actionNames.FOCUS,
id: id
};
};
var setOption = exports.setOption = function setOption(id, key, value) {
return {
type: _constants.actionNames.SET_OPTION,
id: id,
key: key,
value: value
};
};
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactJplayerUtils = __webpack_require__(0);
var _recompose = __webpack_require__(4);
var _bar = __webpack_require__(65);
var _bar2 = _interopRequireDefault(_bar);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStateToProps = function mapStateToProps(_ref, _ref2) {
var jPlayers = _ref.jPlayers;
var id = _ref2.id;
return {
barDrag: jPlayers[id].barDrag
};
};
var handlers = function handlers() {
var bar = void 0;
var dragging = void 0;
return {
setBar: function setBar() {
return function (ref) {
bar = ref;
};
},
onClick: function onClick(props) {
return function (e) {
return props.clickMoveBar(bar, e);
};
},
onTouchStart: function onTouchStart() {
return function () {
dragging = true;
};
},
onTouchMove: function onTouchMove(props) {
return function (e) {
if (props.barDrag && dragging) {
props.touchMoveBar(bar, e);
}
};
},
onTouchEnd: function onTouchEnd() {
return function () {
dragging = false;
};
},
onMouseMove: function onMouseMove(props) {
return function (e) {
if (props.barDrag && dragging) {
props.clickMoveBar(bar, e);
}
};
},
onMouseDown: function onMouseDown() {
return function () {
dragging = true;
};
},
onMouseUp: function onMouseUp() {
return function () {
dragging = false;
};
}
};
};
var lifecycle = {
componentDidMount: function componentDidMount() {
document.addEventListener('mouseup', this.props.onMouseUp);
document.addEventListener('mousemove', this.props.onMouseMove);
document.addEventListener('touchmove', this.props.onTouchMove, { passive: false });
document.addEventListener('touchend', this.props.onTouchEnd);
},
componentWillUnmount: function componentWillUnmount() {
document.removeEventListener('mouseup', this.props.onMouseUp);
document.removeEventListener('mousemove', this.props.onMouseMove);
document.removeEventListener('touchmove', this.props.onTouchMove);
document.removeEventListener('touchend', this.props.onTouchEnd);
}
};
exports.default = (0, _recompose.compose)((0, _reactJplayerUtils.connectWithId)(mapStateToProps), (0, _recompose.withHandlers)(handlers), (0, _recompose.lifecycle)(lifecycle))(_bar2.default);
/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.initialState = undefined;
var _lodash = __webpack_require__(8);
var _lodash2 = _interopRequireDefault(_lodash);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var initialState = exports.initialState = {};
var options = function options(jPlayerOptions) {
initialState[jPlayerOptions.id] = (0, _lodash2.default)({}, _constants.defaultStatus, _constants.defaultOptions, jPlayerOptions);
};
exports.default = options;
/***/ }),
/* 8 */
/***/ (function(module, exports) {
module.exports = _.merge;
/***/ }),
/* 9 */
/***/ (function(module, exports) {
module.exports = ReactMotion;
/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Gui = function Gui(_ref) {
var opacity = _ref.opacity,
children = _ref.children,
onMouseMove = _ref.onMouseMove;
return _react2.default.createElement(
'div',
{
className: _constants.classes.GUI,
onMouseMove: onMouseMove,
style: { opacity: opacity }
},
children
);
};
Gui.propTypes = {
opacity: _propTypes2.default.number.isRequired,
onMouseMove: _propTypes2.default.func.isRequired,
children: _propTypes2.default.oneOfType([_propTypes2.default.arrayOf(_propTypes2.default.element), _propTypes2.default.element]).isRequired
};
exports.default = Gui;
/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _mediaContainer = __webpack_require__(12);
var _mediaContainer2 = _interopRequireDefault(_mediaContainer);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable jsx-a11y/media-has-caption */
var Video = function Video(props) {
return _react2.default.createElement(
_mediaContainer2.default,
{
onAbort: props.onAbort,
onCanPlay: props.onCanPlay,
onCanPlayThrough: props.onCanPlayThrough,
onDurationChange: props.onDurationChange,
onEmptied: props.onEmptied,
onEncrypted: props.onEncrypted,
onEnded: props.onEnded,
onError: props.onError,
onLoadedData: props.onLoadedData,
onLoadedMetadata: props.onLoadedMetadata,
onLoadStart: props.onLoadStart,
onPause: props.onPause,
onPlay: props.onPlay,
onPlaying: props.onPlaying,
onProgress: props.onProgress,
onRateChange: props.onRateChange,
onSeeked: props.onSeeked,
onSeeking: props.onSeeking,
onStalled: props.onStalled,
onSuspend: props.onSuspend,
onTimeUpdate: props.onTimeUpdate,
onVolumeChange: props.onVolumeChange,
onWaiting: props.onWaiting
},
_react2.default.createElement('video', null)
);
};
Video.defaultProps = {
onAbort: Function.prototype,
onCanPlay: Function.prototype,
onCanPlayThrough: Function.prototype,
onDurationChange: Function.prototype,
onEmptied: Function.prototype,
onEncrypted: Function.prototype,
onEnded: Function.prototype,
onError: Function.prototype,
onLoadedData: Function.prototype,
onLoadedMetadata: Function.prototype,
onLoadStart: Function.prototype,
onPause: Function.prototype,
onPlay: Function.prototype,
onPlaying: Function.prototype,
onProgress: Function.prototype,
onRateChange: Function.prototype,
onSeeked: Function.prototype,
onSeeking: Function.prototype,
onStalled: Function.prototype,
onSuspend: Function.prototype,
onTimeUpdate: Function.prototype,
onVolumeChange: Function.prototype,
onWaiting: Function.prototype
};
Video.propTypes = {
onAbort: _propTypes2.default.func,
onCanPlay: _propTypes2.default.func,
onCanPlayThrough: _propTypes2.default.func,
onDurationChange: _propTypes2.default.func,
onEmptied: _propTypes2.default.func,
onEncrypted: _propTypes2.default.func,
onEnded: _propTypes2.default.func,
onError: _propTypes2.default.func,
onLoadedData: _propTypes2.default.func,
onLoadedMetadata: _propTypes2.default.func,
onLoadStart: _propTypes2.default.func,
onPause: _propTypes2.default.func,
onPlay: _propTypes2.default.func,
onPlaying: _propTypes2.default.func,
onProgress: _propTypes2.default.func,
onRateChange: _propTypes2.default.func,
onSeeked: _propTypes2.default.func,
onSeeking: _propTypes2.default.func,
onStalled: _propTypes2.default.func,
onSuspend: _propTypes2.default.func,
onTimeUpdate: _propTypes2.default.func,
onVolumeChange: _propTypes2.default.func,
onWaiting: _propTypes2.default.func
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.require;
}, (0, _recompose.renderComponent)(Video)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactJplayerUtils = __webpack_require__(0);
var _recompose = __webpack_require__(4);
var _media = __webpack_require__(41);
var _media2 = _interopRequireDefault(_media);
var _actions = __webpack_require__(5);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStateToProps = function mapStateToProps(_ref, _ref2) {
var jPlayers = _ref.jPlayers;
var id = _ref2.id;
return {
loop: jPlayers[id].loop,
src: jPlayers[id].src,
playHeadPercent: jPlayers[id].playHeadPercent,
paused: jPlayers[id].paused,
defaultPlaybackRate: jPlayers[id].defaultPlaybackRate,
playbackRate: jPlayers[id].playbackRate,
preload: jPlayers[id].preload,
volume: jPlayers[id].volume,
muted: jPlayers[id].muted,
autoplay: jPlayers[id].autoplay,
newTime: jPlayers[id].newTime,
tracks: jPlayers[id].media.tracks
};
};
var handlers = function handlers() {
var currentMedia = void 0;
var getSeekableEnd = function getSeekableEnd() {
if (currentMedia.seekable.length > 0) {
return currentMedia.seekable.end(currentMedia.seekable.length - 1);
}
return NaN;
};
var getCurrentPercentRelative = function getCurrentPercentRelative() {
return (0, _reactJplayerUtils.toPercentage)(currentMedia.currentTime, getSeekableEnd());
};
var getSeekPercent = function getSeekPercent() {
return (0, _reactJplayerUtils.toPercentage)(getSeekableEnd(), currentMedia.duration);
};
return {
setCurrentMedia: function setCurrentMedia() {
return function (ref) {
currentMedia = ref;
};
},
updateMediaStatus: function updateMediaStatus(props) {
return function () {
var currentPercentAbsolute = (0, _reactJplayerUtils.toPercentage)(currentMedia.currentTime, currentMedia.duration);
// Is infinite when live streaming
if (isFinite(currentMedia.duration)) {
props.setOption(props.id, 'duration', currentMedia.duration);
}
props.setOption(props.id, 'currentPercentRelative', getCurrentPercentRelative());
props.setOption(props.id, 'seekPercent', getSeekPercent());
props.setOption(props.id, 'currentPercentAbsolute', currentPercentAbsolute);
props.setOption(props.id, 'currentTime', currentMedia.currentTime);
props.setOption(props.id, 'playbackRate', currentMedia.playbackRate);
};
},
updateMediaSrc: function updateMediaSrc(props) {
return function () {
if (props.src !== null) {
currentMedia.src = props.src;
}
};
},
updateMediaTime: function updateMediaTime(props) {
return function () {
currentMedia.currentTime = props.newTime;
props.setOption(props.id, 'newTime', null);
};
},
updateMediaTimeAfterSeeking: function updateMediaTimeAfterSeeking(props) {
return function () {
var seekableEnd = getSeekableEnd();
// TODO: Investigate why some .mp3 urls don't fire media events enough (http://www.davidgagne.net/m/song.mp3).
// Hasn't fully loaded the song????
if (isFinite(seekableEnd)) {
currentMedia.currentTime = (0, _reactJplayerUtils.toRelativePercentage)(props.playHeadPercent, seekableEnd);
/* Media events don't fire fast enough to give a smooth animation
when dragging so we update it here as well, same problem as above? */
props.setOption(props.id, 'currentPercentRelative', getCurrentPercentRelative());
}
};
},
updateMediaPlayState: function updateMediaPlayState(props) {
return function () {
if (props.paused) {
currentMedia.pause();
} else {
currentMedia.play();
}
};
},
updateOtherMediaValues: function updateOtherMediaValues(props) {
return function () {
currentMedia.defaultPlaybackRate = props.defaultPlaybackRate;
currentMedia.playbackRate = props.playbackRate;
currentMedia.preload = props.preload;
currentMedia.volume = props.volume;
currentMedia.muted = props.muted;
currentMedia.autoplay = props.autoplay;
currentMedia.loop = props.loop;
};
}
};
};
var lifecycle = {
componentDidMount: function componentDidMount() {
if (this.props.src !== null) {
this.props.updateMediaSrc();
}
this.props.updateOtherMediaValues();
},
componentDidUpdate: function componentDidUpdate(prevProps) {
if (prevProps.src !== this.props.src) {
this.props.updateMediaSrc();
}
if (this.props.newTime !== null) {
this.props.updateMediaTime();
}
if (prevProps.playHeadPercent !== this.props.playHeadPercent) {
this.props.updateMediaTimeAfterSeeking();
}
this.props.updateMediaPlayState();
this.props.updateOtherMediaValues();
}
};
exports.default = (0, _recompose.compose)((0, _reactJplayerUtils.connectWithId)(mapStateToProps, {
setOption: _actions.setOption
}), (0, _recompose.withHandlers)(handlers), (0, _recompose.lifecycle)(lifecycle))(_media2.default);
/***/ }),
/* 13 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _mediaContainer = __webpack_require__(12);
var _mediaContainer2 = _interopRequireDefault(_mediaContainer);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable jsx-a11y/media-has-caption */
var Audio = function Audio(props) {
return _react2.default.createElement(
_mediaContainer2.default,
{
onAbort: props.onAbort,
onCanPlay: props.onCanPlay,
onCanPlayThrough: props.onCanPlayThrough,
onDurationChange: props.onDurationChange,
onEmptied: props.onEmptied,
onEncrypted: props.onEncrypted,
onEnded: props.onEnded,
onError: props.onError,
onLoadedData: props.onLoadedData,
onLoadedMetadata: props.onLoadedMetadata,
onLoadStart: props.onLoadStart,
onPause: props.onPause,
onPlay: props.onPlay,
onPlaying: props.onPlaying,
onProgress: props.onProgress,
onRateChange: props.onRateChange,
onSeeked: props.onSeeked,
onSeeking: props.onSeeking,
onStalled: props.onStalled,
onSuspend: props.onSuspend,
onTimeUpdate: props.onTimeUpdate,
onVolumeChange: props.onVolumeChange,
onWaiting: props.onWaiting
},
_react2.default.createElement('audio', null)
);
};
Audio.defaultProps = {
onAbort: Function.prototype,
onCanPlay: Function.prototype,
onCanPlayThrough: Function.prototype,
onDurationChange: Function.prototype,
onEmptied: Function.prototype,
onEncrypted: Function.prototype,
onEnded: Function.prototype,
onError: Function.prototype,
onLoadedData: Function.prototype,
onLoadedMetadata: Function.prototype,
onLoadStart: Function.prototype,
onPause: Function.prototype,
onPlay: Function.prototype,
onPlaying: Function.prototype,
onProgress: Function.prototype,
onRateChange: Function.prototype,
onSeeked: Function.prototype,
onSeeking: Function.prototype,
onStalled: Function.prototype,
onSuspend: Function.prototype,
onTimeUpdate: Function.prototype,
onVolumeChange: Function.prototype,
onWaiting: Function.prototype
};
Audio.propTypes = {
onAbort: _propTypes2.default.func,
onCanPlay: _propTypes2.default.func,
onCanPlayThrough: _propTypes2.default.func,
onDurationChange: _propTypes2.default.func,
onEmptied: _propTypes2.default.func,
onEncrypted: _propTypes2.default.func,
onEnded: _propTypes2.default.func,
onError: _propTypes2.default.func,
onLoadedData: _propTypes2.default.func,
onLoadedMetadata: _propTypes2.default.func,
onLoadStart: _propTypes2.default.func,
onPause: _propTypes2.default.func,
onPlay: _propTypes2.default.func,
onPlaying: _propTypes2.default.func,
onProgress: _propTypes2.default.func,
onRateChange: _propTypes2.default.func,
onSeeked: _propTypes2.default.func,
onSeeking: _propTypes2.default.func,
onStalled: _propTypes2.default.func,
onSuspend: _propTypes2.default.func,
onTimeUpdate: _propTypes2.default.func,
onVolumeChange: _propTypes2.default.func,
onWaiting: _propTypes2.default.func
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.require;
}, (0, _recompose.renderComponent)(Audio)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _keyControlContainer = __webpack_require__(50);
var _keyControlContainer2 = _interopRequireDefault(_keyControlContainer);
var _screenFullContainer = __webpack_require__(51);
var _screenFullContainer2 = _interopRequireDefault(_screenFullContainer);
var _errorLoggerContainer = __webpack_require__(53);
var _errorLoggerContainer2 = _interopRequireDefault(_errorLoggerContainer);
var _timeDisplayContainer = __webpack_require__(54);
var _timeDisplayContainer2 = _interopRequireDefault(_timeDisplayContainer);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable react/forbid-prop-types */
var JPlayer = function JPlayer(props) {
var className = props.className,
keyBindings = props.keyBindings,
children = props.children,
onMouseMoveCapture = props.onMouseMoveCapture,
id = props.id;
return _react2.default.createElement(
'div',
{
id: id,
className: className,
draggable: false,
onMouseMoveCapture: onMouseMoveCapture
},
_react2.default.createElement(_keyControlContainer2.default, { keyBindings: keyBindings }),
_react2.default.createElement(_timeDisplayContainer2.default, null),
_react2.default.createElement(_screenFullContainer2.default, null),
_react2.default.createElement(_errorLoggerContainer2.default, null),
children
);
};
JPlayer.defaultProps = {
keyBindings: null
};
JPlayer.propTypes = {
keyBindings: _propTypes2.default.object,
onMouseMoveCapture: _propTypes2.default.func.isRequired,
className: _propTypes2.default.string.isRequired,
id: _propTypes2.default.string.isRequired,
children: _propTypes2.default.oneOfType([_propTypes2.default.arrayOf(_propTypes2.default.element), _propTypes2.default.element]).isRequired
};
exports.default = JPlayer;
/***/ }),
/* 15 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var PlayBar = function PlayBar(props) {
var width = props.smoothPlayBar ? props.smoothWidth + '%' : props.currentPercentRelative + '%';
return _react2.default.createElement('div', {
className: _constants.classes.PLAY_BAR,
style: { width: width }
});
};
PlayBar.propTypes = {
smoothPlayBar: _propTypes2.default.bool.isRequired,
smoothWidth: _propTypes2.default.number.isRequired,
currentPercentRelative: _propTypes2.default.number.isRequired
};
exports.default = PlayBar;
/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var BufferBar = function BufferBar(_ref) {
var setCanvas = _ref.setCanvas;
return _react2.default.createElement('canvas', {
ref: setCanvas,
className: _constants.classes.BUFFER_BAR
});
};
BufferBar.propTypes = {
setCanvas: _propTypes2.default.func.isRequired
};
exports.default = BufferBar;
/***/ }),
/* 17 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Poster = function Poster(_ref) {
var src = _ref.src;
return _react2.default.createElement('img', { className: _constants.classes.POSTER, alt: '', src: src });
};
Poster.defaultProps = {
src: null
};
Poster.propTypes = {
src: _propTypes2.default.string
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.src;
}, (0, _recompose.renderComponent)(Poster)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Title = function Title(_ref) {
var title = _ref.title;
return _react2.default.createElement(
'div',
{ className: _constants.classes.TITLE },
title
);
};
Title.propTypes = {
title: _propTypes2.default.string.isRequired
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.title;
}, (0, _recompose.renderComponent)(Title)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 19 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FullScreen = function FullScreen(_ref) {
var setFullScreen = _ref.setFullScreen,
id = _ref.id,
fullScreen = _ref.fullScreen,
children = _ref.children;
return _react2.default.createElement(
'button',
{
className: _constants.classes.FULL_SCREEN,
onClick: function onClick() {
return setFullScreen(id, !fullScreen);
}
},
children
);
};
FullScreen.propTypes = {
children: _propTypes2.default.node.isRequired,
setFullScreen: _propTypes2.default.func.isRequired,
id: _propTypes2.default.string.isRequired,
fullScreen: _propTypes2.default.bool.isRequired
};
exports.default = FullScreen;
/***/ }),
/* 20 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Mute = function Mute(_ref) {
var setMute = _ref.setMute,
id = _ref.id,
muted = _ref.muted,
children = _ref.children;
return _react2.default.createElement(
'button',
{ className: _constants.classes.MUTE, onClick: function onClick() {
return setMute(id, !muted);
} },
children
);
};
Mute.propTypes = {
id: _propTypes2.default.string.isRequired,
children: _propTypes2.default.node.isRequired,
setMute: _propTypes2.default.func.isRequired,
muted: _propTypes2.default.bool.isRequired
};
exports.default = Mute;
/***/ }),
/* 21 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Play = function Play(_ref) {
var play = _ref.play,
id = _ref.id,
paused = _ref.paused,
children = _ref.children;
return _react2.default.createElement(
'button',
{ className: _constants.classes.PLAY, onClick: function onClick() {
return play(id, paused);
} },
children
);
};
Play.propTypes = {
children: _propTypes2.default.node.isRequired,
play: _propTypes2.default.func.isRequired,
id: _propTypes2.default.string.isRequired,
paused: _propTypes2.default.bool.isRequired
};
exports.default = Play;
/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Repeat = function Repeat(_ref) {
var loop = _ref.loop,
children = _ref.children;
return _react2.default.createElement(
'button',
{ className: _constants.classes.REPEAT, onClick: loop },
children
);
};
Repeat.propTypes = {
children: _propTypes2.default.node.isRequired,
loop: _propTypes2.default.func.isRequired
};
exports.default = Repeat;
/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _barContainer = __webpack_require__(6);
var _barContainer2 = _interopRequireDefault(_barContainer);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var SeekBar = function SeekBar(props) {
return _react2.default.createElement(
_barContainer2.default,
{
clickMoveBar: props.clickMoveBar,
touchMoveBar: props.touchMoveBar
},
_react2.default.createElement(
'div',
{
className: _constants.classes.SEEK_BAR,
style: { width: props.seekPercent + '%' }
},
props.children
)
);
};
SeekBar.propTypes = {
seekPercent: _propTypes2.default.number.isRequired,
clickMoveBar: _propTypes2.default.func.isRequired,
touchMoveBar: _propTypes2.default.func.isRequired,
children: _propTypes2.default.oneOfType([_propTypes2.default.arrayOf(_propTypes2.default.element), _propTypes2.default.element]).isRequired
};
exports.default = SeekBar;
/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _barContainer = __webpack_require__(6);
var _barContainer2 = _interopRequireDefault(_barContainer);
var _playbackRateBarValueContainer = __webpack_require__(25);
var _playbackRateBarValueContainer2 = _interopRequireDefault(_playbackRateBarValueContainer);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var PlaybackRateBar = function PlaybackRateBar(props) {
return _react2.default.createElement(
_barContainer2.default,
{
clickMoveBar: props.clickMoveBar,
touchMoveBar: props.touchMoveBar
},
_react2.default.createElement(
'div',
{ className: _constants.classes.PLAYBACK_RATE_BAR },
props.children
)
);
};
PlaybackRateBar.defaultProps = {
children: _react2.default.createElement(_playbackRateBarValueContainer2.default, null)
};
PlaybackRateBar.propTypes = {
clickMoveBar: _propTypes2.default.func.isRequired,
touchMoveBar: _propTypes2.default.func.isRequired,
children: _propTypes2.default.node
};
exports.default = PlaybackRateBar;
/***/ }),
/* 25 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactJplayerUtils = __webpack_require__(0);
var _playbackRateBarValue = __webpack_require__(26);
var _playbackRateBarValue2 = _interopRequireDefault(_playbackRateBarValue);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStateToProps = function mapStateToProps(_ref, _ref2) {
var jPlayers = _ref.jPlayers;
var id = _ref2.id;
return {
verticalPlaybackRate: jPlayers[id].verticalPlaybackRate,
minPlaybackRate: jPlayers[id].minPlaybackRate,
maxPlaybackRate: jPlayers[id].maxPlaybackRate,
playbackRate: jPlayers[id].playbackRate
};
};
exports.default = (0, _reactJplayerUtils.connectWithId)(mapStateToProps)(_playbackRateBarValue2.default);
/***/ }),
/* 26 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var PlaybackRateBarValue = function PlaybackRateBarValue(props) {
var ratio = (props.playbackRate - props.minPlaybackRate) / (props.maxPlaybackRate - props.minPlaybackRate);
var playbackRateBarPercentage = ratio * 100 + '%';
var style = {
width: !props.verticalPlaybackRate ? playbackRateBarPercentage : null,
height: props.verticalPlaybackRate ? playbackRateBarPercentage : null
};
return _react2.default.createElement('div', {
className: _constants.classes.PLAYBACK_RATE_BAR_VALUE,
style: style
});
};
PlaybackRateBarValue.propTypes = {
verticalPlaybackRate: _propTypes2.default.bool.isRequired,
minPlaybackRate: _propTypes2.default.number.isRequired,
maxPlaybackRate: _propTypes2.default.number.isRequired,
playbackRate: _propTypes2.default.number.isRequired
};
exports.default = PlaybackRateBarValue;
/***/ }),
/* 27 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _barContainer = __webpack_require__(6);
var _barContainer2 = _interopRequireDefault(_barContainer);
var _volumeBarValueContainer = __webpack_require__(28);
var _volumeBarValueContainer2 = _interopRequireDefault(_volumeBarValueContainer);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var VolumeBar = function VolumeBar(props) {
return _react2.default.createElement(
_barContainer2.default,
{
clickMoveBar: props.clickMoveBar,
touchMoveBar: props.touchMoveBar
},
_react2.default.createElement(
'div',
{ className: _constants.classes.VOLUME_BAR },
props.children
)
);
};
VolumeBar.defaultProps = {
children: _react2.default.createElement(_volumeBarValueContainer2.default, null)
};
VolumeBar.propTypes = {
clickMoveBar: _propTypes2.default.func.isRequired,
touchMoveBar: _propTypes2.default.func.isRequired,
children: _propTypes2.default.node
};
exports.default = VolumeBar;
/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactJplayerUtils = __webpack_require__(0);
var _volumeBarValue = __webpack_require__(29);
var _volumeBarValue2 = _interopRequireDefault(_volumeBarValue);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStateToProps = function mapStateToProps(_ref, _ref2) {
var jPlayers = _ref.jPlayers;
var id = _ref2.id;
return {
verticalVolume: jPlayers[id].verticalVolume,
muted: jPlayers[id].muted,
volume: jPlayers[id].volume
};
};
exports.default = (0, _reactJplayerUtils.connectWithId)(mapStateToProps)(_volumeBarValue2.default);
/***/ }),
/* 29 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var VolumeBarValue = function VolumeBarValue(_ref) {
var muted = _ref.muted,
volume = _ref.volume,
verticalVolume = _ref.verticalVolume;
var volumeBarValuePercentage = (muted ? 0 : volume * 100) + '%';
var style = {
width: !verticalVolume ? volumeBarValuePercentage : null,
height: verticalVolume ? volumeBarValuePercentage : null
};
return _react2.default.createElement('div', { className: _constants.classes.VOLUME_BAR_VALUE, style: style });
};
VolumeBarValue.propTypes = {
muted: _propTypes2.default.bool.isRequired,
volume: _propTypes2.default.number.isRequired,
verticalVolume: _propTypes2.default.bool.isRequired
};
exports.default = VolumeBarValue;
/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Download = function Download(_ref) {
var url = _ref.url,
children = _ref.children;
return _react2.default.createElement(
'a',
{
className: _constants.classes.DOWNLOAD,
href: url,
download: true,
target: '_blank',
rel: 'noopener noreferrer'
},
children
);
};
Download.defaultProps = {
url: null
};
Download.propTypes = {
children: _propTypes2.default.node.isRequired,
url: _propTypes2.default.string
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.free;
}, (0, _recompose.renderComponent)(Download)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 31 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Duration = function Duration(_ref) {
var durationText = _ref.durationText;
return _react2.default.createElement(
'div',
{ className: _constants.classes.DURATION },
durationText
);
};
Duration.propTypes = {
durationText: _propTypes2.default.string.isRequired
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.durationText;
}, (0, _recompose.renderComponent)(Duration)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 32 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var CurrentTime = function CurrentTime(_ref) {
var currentTimeText = _ref.currentTimeText;
return _react2.default.createElement(
'div',
{ className: _constants.classes.CURRENT_TIME },
currentTimeText
);
};
CurrentTime.propTypes = {
currentTimeText: _propTypes2.default.string.isRequired
};
exports.default = CurrentTime;
/***/ }),
/* 33 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(3);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _recompose = __webpack_require__(4);
var _constants = __webpack_require__(2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var BrowserUnsupported = function BrowserUnsupported(_ref) {
var children = _ref.children;
return _react2.default.createElement(
'div',
{ className: _constants.classes.NO_BROWSER_SUPPORT },
children
);
};
var defaultChildren = _react2.default.createElement(
'div',
null,
_react2.default.createElement(
'h4',
null,
'Browser Unsupported'
),
'Your browser does not support this media file. To play the media you will need to update your browser to a more recent version.'
);
BrowserUnsupported.defaultProps = {
children: defaultChildren
};
BrowserUnsupported.propTypes = {
children: _propTypes2.default.node
};
exports.default = (0, _recompose.compose)((0, _recompose.branch)(function (props) {
return props.nonSupported;
}, (0, _recompose.renderComponent)(BrowserUnsupported)))((0, _recompose.renderNothing)(null));
/***/ }),
/* 34 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.BrowserUnsupportedComponent = exports.CurrentTimeComponent = exports.DurationComponent = exports.DownloadComponent = exports.VolumeBa