Use div for poster, Vimeo fixes, Tooltip fixes

This commit is contained in:
Sam Potts 2018-05-08 12:57:24 +10:00
parent 1491b017a0
commit 90919411e9
21 changed files with 140 additions and 35 deletions

2
demo/dist/demo.css vendored

File diff suppressed because one or more lines are too long

33
demo/dist/demo.js vendored
View File

@ -3948,6 +3948,39 @@ singleton.Client = Client;
'airplay', 'airplay',
'fullscreen', 'fullscreen',
], */ ], */
/* i18n: {
restart: '重新開始',
rewind: '快退{seektime}秒',
play: '播放',
pause: '暫停',
fastForward: '快進{seektime}秒',
seek: '尋求',
played: '發揮',
buffered: '緩衝的',
currentTime: '當前時間戳',
duration: '長短',
volume: '音量',
mute: '靜音',
unmute: '取消靜音',
enableCaptions: '開啟字幕',
disableCaptions: '關閉字幕',
enterFullscreen: '進入全螢幕',
exitFullscreen: '退出全螢幕',
frameTitle: '球員為{title}',
captions: '字幕',
settings: '設定',
speed: '速度',
normal: '正常',
quality: '質量',
loop: '循環',
start: 'Start',
end: 'End',
all: 'All',
reset: '重啟',
disabled: '殘',
enabled: '啟用',
advertisement: '廣告',
}, */
captions: { captions: {
active: true active: true
}, },

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -74,6 +74,39 @@ import Raven from 'raven-js';
'airplay', 'airplay',
'fullscreen', 'fullscreen',
], */ ], */
/* i18n: {
restart: '重新開始',
rewind: '快退{seektime}秒',
play: '播放',
pause: '暫停',
fastForward: '快進{seektime}秒',
seek: '尋求',
played: '發揮',
buffered: '緩衝的',
currentTime: '當前時間戳',
duration: '長短',
volume: '音量',
mute: '靜音',
unmute: '取消靜音',
enableCaptions: '開啟字幕',
disableCaptions: '關閉字幕',
enterFullscreen: '進入全螢幕',
exitFullscreen: '退出全螢幕',
frameTitle: '球員為{title}',
captions: '字幕',
settings: '設定',
speed: '速度',
normal: '正常',
quality: '質量',
loop: '循環',
start: 'Start',
end: 'End',
all: 'All',
reset: '重啟',
disabled: '殘',
enabled: '啟用',
advertisement: '廣告',
}, */
captions: { captions: {
active: true, active: true,
}, },

2
dist/plyr.css vendored

File diff suppressed because one or more lines are too long

16
dist/plyr.js vendored
View File

@ -1214,7 +1214,7 @@ var utils = {
} }
// Vimeo // Vimeo
if (/^https?:\/\/player.vimeo.com\/video\/\d{8,}(?=\b|\/)/.test(url)) { if (/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(url)) {
return providers.vimeo; return providers.vimeo;
} }
@ -3814,10 +3814,10 @@ var defaults$1 = {
// Localisation // Localisation
i18n: { i18n: {
restart: 'Restart', restart: 'Restart',
rewind: 'Rewind {seektime} secs', rewind: 'Rewind {seektime}s',
play: 'Play', play: 'Play',
pause: 'Pause', pause: 'Pause',
fastForward: 'Forward {seektime} secs', fastForward: 'Forward {seektime}s',
seek: 'Seek', seek: 'Seek',
played: 'Played', played: 'Played',
buffered: 'Buffered', buffered: 'Buffered',
@ -3946,13 +3946,14 @@ var defaults$1 = {
// Class hooks added to the player in different states // Class hooks added to the player in different states
classNames: { classNames: {
type: 'plyr--{0}',
provider: 'plyr--{0}',
video: 'plyr__video-wrapper', video: 'plyr__video-wrapper',
embed: 'plyr__video-embed', embed: 'plyr__video-embed',
embedContainer: 'plyr__video-embed__container',
poster: 'plyr__poster', poster: 'plyr__poster',
ads: 'plyr__ads', ads: 'plyr__ads',
control: 'plyr__control', control: 'plyr__control',
type: 'plyr--{0}',
provider: 'plyr--{0}',
playing: 'plyr--playing', playing: 'plyr--playing',
paused: 'plyr--paused', paused: 'plyr--paused',
stopped: 'plyr--stopped', stopped: 'plyr--stopped',
@ -4920,6 +4921,7 @@ var vimeo = {
var options = { var options = {
loop: player.config.loop.active, loop: player.config.loop.active,
autoplay: player.autoplay, autoplay: player.autoplay,
// muted: player.muted,
byline: false, byline: false,
portrait: false, portrait: false,
title: false, title: false,
@ -4949,7 +4951,7 @@ var vimeo = {
iframe.setAttribute('allow', 'autoplay'); iframe.setAttribute('allow', 'autoplay');
// Inject the package // Inject the package
var wrapper = utils.createElement('div'); var wrapper = utils.createElement('div', { class: player.config.classNames.embedContainer });
wrapper.appendChild(iframe); wrapper.appendChild(iframe);
player.media = utils.replaceElement(wrapper, player.media); player.media = utils.replaceElement(wrapper, player.media);
@ -5769,7 +5771,7 @@ var media = {
utils.wrap(this.media, this.elements.wrapper); utils.wrap(this.media, this.elements.wrapper);
// Faux poster container // Faux poster container
this.elements.poster = utils.createElement('span', { this.elements.poster = utils.createElement('div', {
class: this.config.classNames.poster class: this.config.classNames.poster
}); });

2
dist/plyr.js.map vendored

File diff suppressed because one or more lines are too long

2
dist/plyr.min.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -6248,7 +6248,7 @@ var utils = {
} }
// Vimeo // Vimeo
if (/^https?:\/\/player.vimeo.com\/video\/\d{8,}(?=\b|\/)/.test(url)) { if (/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(url)) {
return providers.vimeo; return providers.vimeo;
} }
@ -8848,10 +8848,10 @@ var defaults$1 = {
// Localisation // Localisation
i18n: { i18n: {
restart: 'Restart', restart: 'Restart',
rewind: 'Rewind {seektime} secs', rewind: 'Rewind {seektime}s',
play: 'Play', play: 'Play',
pause: 'Pause', pause: 'Pause',
fastForward: 'Forward {seektime} secs', fastForward: 'Forward {seektime}s',
seek: 'Seek', seek: 'Seek',
played: 'Played', played: 'Played',
buffered: 'Buffered', buffered: 'Buffered',
@ -8980,13 +8980,14 @@ var defaults$1 = {
// Class hooks added to the player in different states // Class hooks added to the player in different states
classNames: { classNames: {
type: 'plyr--{0}',
provider: 'plyr--{0}',
video: 'plyr__video-wrapper', video: 'plyr__video-wrapper',
embed: 'plyr__video-embed', embed: 'plyr__video-embed',
embedContainer: 'plyr__video-embed__container',
poster: 'plyr__poster', poster: 'plyr__poster',
ads: 'plyr__ads', ads: 'plyr__ads',
control: 'plyr__control', control: 'plyr__control',
type: 'plyr--{0}',
provider: 'plyr--{0}',
playing: 'plyr--playing', playing: 'plyr--playing',
paused: 'plyr--paused', paused: 'plyr--paused',
stopped: 'plyr--stopped', stopped: 'plyr--stopped',
@ -9954,6 +9955,7 @@ var vimeo = {
var options = { var options = {
loop: player.config.loop.active, loop: player.config.loop.active,
autoplay: player.autoplay, autoplay: player.autoplay,
// muted: player.muted,
byline: false, byline: false,
portrait: false, portrait: false,
title: false, title: false,
@ -9983,7 +9985,7 @@ var vimeo = {
iframe.setAttribute('allow', 'autoplay'); iframe.setAttribute('allow', 'autoplay');
// Inject the package // Inject the package
var wrapper = utils.createElement('div'); var wrapper = utils.createElement('div', { class: player.config.classNames.embedContainer });
wrapper.appendChild(iframe); wrapper.appendChild(iframe);
player.media = utils.replaceElement(wrapper, player.media); player.media = utils.replaceElement(wrapper, player.media);
@ -10803,7 +10805,7 @@ var media = {
utils.wrap(this.media, this.elements.wrapper); utils.wrap(this.media, this.elements.wrapper);
// Faux poster container // Faux poster container
this.elements.poster = utils.createElement('span', { this.elements.poster = utils.createElement('div', {
class: this.config.classNames.poster class: this.config.classNames.poster
}); });
@ -13075,6 +13077,38 @@ var Plyr = function () {
value: function loadSprite(url, id) { value: function loadSprite(url, id) {
return utils.loadSprite(url, id); return utils.loadSprite(url, id);
} }
/**
* Setup multiple instances
* @param {*} selector
* @param {object} options
*/
}, {
key: 'setup',
value: function setup(selector) {
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var targets = null;
if (utils.is.string(selector)) {
targets = Array.from(document.querySelectorAll(selector));
} else if (utils.is.nodeList(selector)) {
targets = Array.from(selector);
} else if (utils.is.array(selector)) {
targets = selector.filter(function (i) {
return utils.is.element(i);
});
}
if (utils.is.empty(targets)) {
return null;
}
return targets.map(function (t) {
return new Plyr(t, options);
});
}
}]); }]);
return Plyr; return Plyr;
}(); }();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -157,10 +157,10 @@ const defaults = {
// Localisation // Localisation
i18n: { i18n: {
restart: 'Restart', restart: 'Restart',
rewind: 'Rewind {seektime} secs', rewind: 'Rewind {seektime}s',
play: 'Play', play: 'Play',
pause: 'Pause', pause: 'Pause',
fastForward: 'Forward {seektime} secs', fastForward: 'Forward {seektime}s',
seek: 'Seek', seek: 'Seek',
played: 'Played', played: 'Played',
buffered: 'Buffered', buffered: 'Buffered',
@ -326,13 +326,14 @@ const defaults = {
// Class hooks added to the player in different states // Class hooks added to the player in different states
classNames: { classNames: {
type: 'plyr--{0}',
provider: 'plyr--{0}',
video: 'plyr__video-wrapper', video: 'plyr__video-wrapper',
embed: 'plyr__video-embed', embed: 'plyr__video-embed',
embedContainer: 'plyr__video-embed__container',
poster: 'plyr__poster', poster: 'plyr__poster',
ads: 'plyr__ads', ads: 'plyr__ads',
control: 'plyr__control', control: 'plyr__control',
type: 'plyr--{0}',
provider: 'plyr--{0}',
playing: 'plyr--playing', playing: 'plyr--playing',
paused: 'plyr--paused', paused: 'plyr--paused',
stopped: 'plyr--stopped', stopped: 'plyr--stopped',

View File

@ -39,7 +39,7 @@ const media = {
utils.wrap(this.media, this.elements.wrapper); utils.wrap(this.media, this.elements.wrapper);
// Faux poster container // Faux poster container
this.elements.poster = utils.createElement('span', { this.elements.poster = utils.createElement('div', {
class: this.config.classNames.poster, class: this.config.classNames.poster,
}); });

View File

@ -53,6 +53,7 @@ const vimeo = {
const options = { const options = {
loop: player.config.loop.active, loop: player.config.loop.active,
autoplay: player.autoplay, autoplay: player.autoplay,
// muted: player.muted,
byline: false, byline: false,
portrait: false, portrait: false,
title: false, title: false,
@ -82,7 +83,7 @@ const vimeo = {
iframe.setAttribute('allow', 'autoplay'); iframe.setAttribute('allow', 'autoplay');
// Inject the package // Inject the package
const wrapper = utils.createElement('div'); const wrapper = utils.createElement('div', { class: player.config.classNames.embedContainer });
wrapper.appendChild(iframe); wrapper.appendChild(iframe);
player.media = utils.replaceElement(wrapper, player.media); player.media = utils.replaceElement(wrapper, player.media);

View File

@ -723,7 +723,7 @@ const utils = {
} }
// Vimeo // Vimeo
if (/^https?:\/\/player.vimeo.com\/video\/\d{8,}(?=\b|\/)/.test(url)) { if (/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(url)) {
return providers.vimeo; return providers.vimeo;
} }

View File

@ -32,8 +32,8 @@ $embed-padding: ((100 / 16) * 9);
pointer-events: none; pointer-events: none;
} }
// Vimeo hack // Only used for Vimeo
> div { > .plyr__video-embed__container {
padding-bottom: to-percentage($height); padding-bottom: to-percentage($height);
position: relative; position: relative;
transform: translateY(-$offset); transform: translateY(-$offset);

View File

@ -19,6 +19,7 @@
transform: translate(-50%, 10px) scale(0.8); transform: translate(-50%, 10px) scale(0.8);
transform-origin: 50% 100%; transform-origin: 50% 100%;
transition: transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease; transition: transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease;
white-space: nowrap;
z-index: 2; z-index: 2;
// The background triangle // The background triangle

View File

@ -4857,8 +4857,8 @@ nanomatch@^1.2.9:
to-regex "^3.0.1" to-regex "^3.0.1"
natives@^1.1.0: natives@^1.1.0:
version "1.1.1" version "1.1.3"
resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.1.tgz#011acce1f7cbd87f7ba6b3093d6cd9392be1c574" resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.3.tgz#44a579be64507ea2d6ed1ca04a9415915cf75558"
natural-compare@^1.4.0: natural-compare@^1.4.0:
version "1.4.0" version "1.4.0"