react-jplayer
Version:
Html5 audio and video player library for React
215 lines (207 loc) • 5.44 kB
JavaScript
'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: ''
}
};