@munsonlabs/video-player 0.0.4 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{d as n,f as r,s as i,t as a}from"./tech-DHDK_NLh.mjs";var o=e(t(),1);function s(e){let t=e.match(/^brightcove:\/\/([^/]+)\/([^/]+)\/([^/]+)\/([^/]+)$/);return t?{accountId:t[1],playerId:t[2],embed:t[3],videoId:t[4]}:null}function c(e){return(e?.plugins??[]).find(e=>e.name===`ima3`)?.options?.serverUrl??null}const l=a(async(e,t,n,i)=>{let a=await fetch(`${r}/${e}/${t}_${n}/config.json`);if(!a.ok)throw Error(`Brightcove: could not load player config (${a.status})`);let o=await a.json(),s=i??o?.video_cloud?.policy_key;if(!s)throw Error(`Brightcove: policy_key not found in player config`);return{policyKey:s,adTagUrl:c(o)}},(e,t,n)=>`${e}/${t}_${n}`);async function u(e,t){let n=s(e);if(!n)return null;let{accountId:r,playerId:i,embed:a}=n;return l(r,i,a,t)}async function d(e,t,r){let a=await fetch(`${n}/${e}/videos/${t}`,{headers:{Accept:`application/json;pk=${r}`}});if(!a.ok)throw Error(`Brightcove Playback API error: ${a.status}`);let o=await a.json(),s=i(o.sources||[]);if(!s.length)throw Error(`Brightcove: no playable sources found`);return{sources:s.map(e=>({src:e.src,type:e.type})),poster:o.poster??o.thumbnail??null}}o.default.use(`video/brightcove`,e=>({setSource(t,n){let r=s(t.src);if(!r){n(Error(`Brightcove: invalid src — expected "brightcove://accountId/playerId/embed/videoId"`),t);return}let{accountId:i,playerId:a,embed:c,videoId:u}=r,f=e.options_?.brightcove?.policyKey;(async()=>{try{let{policyKey:t}=await l(i,a,c,f);o.default.log(`Brightcove: resolved policy key, fetching sources…`);let{sources:r,poster:s}=await d(i,u,t);o.default.log(`Brightcove: sources resolved`,r),s&&!e.poster()&&e.poster(s),n(null,r[0])}catch(e){o.default.log.error(`Brightcove error:`,e.message),n(e,t)}})()}}));export{u as prefetchConfig};
@@ -0,0 +1 @@
1
+ import{d as e,f as t,s as n,t as r}from"./tech-BNI0cffg.mjs";import i from"video.js";function a(e){let t=e.match(/^brightcove:\/\/([^/]+)\/([^/]+)\/([^/]+)\/([^/]+)$/);return t?{accountId:t[1],playerId:t[2],embed:t[3],videoId:t[4]}:null}function o(e){return(e?.plugins??[]).find(e=>e.name===`ima3`)?.options?.serverUrl??null}const s=r(async(e,n,r,i)=>{let a=await fetch(`${t}/${e}/${n}_${r}/config.json`);if(!a.ok)throw Error(`Brightcove: could not load player config (${a.status})`);let s=await a.json(),c=i??s?.video_cloud?.policy_key;if(!c)throw Error(`Brightcove: policy_key not found in player config`);return{policyKey:c,adTagUrl:o(s)}},(e,t,n)=>`${e}/${t}_${n}`);async function c(e,t){let n=a(e);if(!n)return null;let{accountId:r,playerId:i,embed:o}=n;return s(r,i,o,t)}async function l(t,r,i){let a=await fetch(`${e}/${t}/videos/${r}`,{headers:{Accept:`application/json;pk=${i}`}});if(!a.ok)throw Error(`Brightcove Playback API error: ${a.status}`);let o=await a.json(),s=n(o.sources||[]);if(!s.length)throw Error(`Brightcove: no playable sources found`);return{sources:s.map(e=>({src:e.src,type:e.type})),poster:o.poster??o.thumbnail??null}}i.use(`video/brightcove`,e=>({setSource(t,n){let r=a(t.src);if(!r){n(Error(`Brightcove: invalid src — expected "brightcove://accountId/playerId/embed/videoId"`),t);return}let{accountId:o,playerId:c,embed:u,videoId:d}=r,f=e.options_?.brightcove?.policyKey;(async()=>{try{let{policyKey:t}=await s(o,c,u,f);i.log(`Brightcove: resolved policy key, fetching sources…`);let{sources:r,poster:a}=await l(o,d,t);i.log(`Brightcove: sources resolved`,r),a&&!e.poster()&&e.poster(a),n(null,r[0])}catch(e){i.log.error(`Brightcove error:`,e.message),n(e,t)}})()}}));export{c as prefetchConfig};
@@ -1 +1 @@
1
- import{a as e,c as t,l as n,n as r,u as i}from"./tech-BOi4jf1S.mjs";import{t as a}from"./loadScript-Du6JsTc2.mjs";import o from"video.js";const s=o.getTech(`Tech`);var c=class t extends s{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this._dm=null,this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-dailymotion`),this.initPlayer())})}createEl(){let e=document.createElement(`div`);return e.setAttribute(`id`,this.options_.techId),e.setAttribute(`class`,`vjs-tech`),e.setAttribute(`style`,`position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden`),e}async initPlayer(){let e=this.options_,t=e.source?.dailymotion?.playerId;if(!this.videoId){o.log.error(`Dailymotion Tech: could not parse video ID from source URL`);return}this._playerId=t;let n=this.el_?.parentNode;for(;n&&!n.classList?.contains(`player__shell`);)n=n.parentNode;this._shell=n;try{let n=await a(t?`https://geo.dailymotion.com/libs/player/${t}.js`:`https://geo.dailymotion.com/libs/player.js`,t||`dailymotion-sdk`).then(()=>window.dailymotion);if(!this.el_)return;this._dm_sdk=n;let r=await n.createPlayer(this.options_.techId,{...t?{player:t}:{},video:this.videoId,params:{autoplay:!!e.autoplay,mute:!!e.muted}});if(!this.el_)return;this._dm=r;let{events:i}=this._dm_sdk;this.triggerReady(),this.playOnReady&&this.play(),r.on(i.PLAYER_CRITICALPATHREADY,e=>{let t=e.videoThumbnails;if(t){let e=t[Object.keys(t).map(Number).sort((e,t)=>t-e)[0]];e&&this.trigger({type:`posterchange`,src:e})}}),r.on(i.VIDEO_PLAY,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`),!e.autoplay&&!this.initialAutoplayHandled&&(this.initialAutoplayHandled=!0,r.pause())}),r.on(i.VIDEO_PLAYING,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),r.on(i.VIDEO_PAUSE,()=>{this._paused=!0,this.trigger(`pause`)}),i.VIDEO_BUFFERING&&r.on(i.VIDEO_BUFFERING,()=>this.trigger(`waiting`)),r.on(i.VIDEO_END,()=>{this._paused=!0,this.trigger(`ended`)}),r.on(i.VIDEO_TIMECHANGE,e=>{this._currentTime=e.videoTime??this._currentTime,this._duration=e.videoDuration??this._duration,this.trigger(`timeupdate`)}),r.on(i.VIDEO_DURATIONCHANGE,e=>{this._duration=e.videoDuration??this._duration,this.trigger(`durationchange`)}),r.on(i.VIDEO_SEEKSTART,()=>{this._seeking=!0,this.trigger(`seeking`)}),r.on(i.VIDEO_SEEKEND,e=>{this._seeking=!1,this._currentTime=e.videoTime??this._currentTime,this.trigger(`seeked`)}),r.on(i.PLAYER_VOLUMECHANGE,e=>{this._volume=e.playerVolume??this._volume,this._muted=e.playerIsMuted??this._muted,this.trigger(`volumechange`)}),r.on(i.PLAYER_ERROR,()=>this.trigger(`error`)),i.AD_START&&r.on(i.AD_START,()=>this.trigger(`adstart`)),i.AD_END&&r.on(i.AD_END,()=>this.trigger(`adend`))}catch(e){o.log.error(`Dailymotion:`,e.message)}}play(){this._dm?this._dm.play():this.playOnReady=!0}pause(){this._dm?.pause()}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this._currentTime=e,this._dm?.seek(e),this._seeking=!0,this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this._dm?.setVolume(e)}muted(){return this._muted}setMuted(e){this._muted=e,this._dm?.setMute(e)}playbackRate(){return 1}setPlaybackRate(){}buffered(){return o.createTimeRange(0,this._currentTime)}seekable(){return o.createTimeRange(0,this._duration)}currentSrc(){return this.source?.src??``}ended(){return!1}preload(){}load(){}reset(){}networkState(){return+!!this._dm}readyState(){return this._dm?4:0}supportsFullScreen(){return i()}enterFullscreen(){if(e()){this._dm?.setFullscreen(!0);return}n(this._shell)}exitFullscreen(){if(e()){this._dm?.setFullscreen(!1);return}r()}setSrc(e){e?.src&&(this.source=e,this.videoId=t.parseVideoId(e.src),this.options_.autoplay&&(this.playOnReady=!0))}dispose(){this._dm?.destroy?.(),this._dm=null,this.el_?.parentNode?.classList.remove(`vjs-dailymotion`),s.prototype.dispose.call(this)}};c.isSupported=()=>!0,c.canPlayType=e=>e===`video/dailymotion`?`probably`:``,c.canPlaySource=({type:e,src:t})=>e===`video/dailymotion`?`probably`:/dailymotion\.com|dai\.ly/.test(t)?`maybe`:``,c.parseVideoId=e=>{let t=e.match(/[?&]video=([a-zA-Z0-9]+)/);if(t)return t[1];let n=e.match(/(?:dailymotion\.com\/(?:embed\/)?video\/|dai\.ly\/)([a-zA-Z0-9]+)/);return n?n[1]:null},t(`Dailymotion`,c);export{c as default};
1
+ import{a as e,c as t,l as n,n as r,u as i}from"./tech-BNI0cffg.mjs";import{t as a}from"./loadScript-Du6JsTc2.mjs";import o from"video.js";const s=o.getTech(`Tech`);var c=class t extends s{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this._dm=null,this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-dailymotion`),this.initPlayer())})}createEl(){let e=document.createElement(`div`);return e.setAttribute(`id`,this.options_.techId),e.setAttribute(`class`,`vjs-tech`),e.setAttribute(`style`,`position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden`),e}async initPlayer(){let e=this.options_,t=e.source?.dailymotion?.playerId;if(!this.videoId){o.log.error(`Dailymotion Tech: could not parse video ID from source URL`);return}this._playerId=t;let n=this.el_?.parentNode;for(;n&&!n.classList?.contains(`player__shell`);)n=n.parentNode;this._shell=n;try{let n=await a(t?`https://geo.dailymotion.com/libs/player/${t}.js`:`https://geo.dailymotion.com/libs/player.js`,t||`dailymotion-sdk`).then(()=>window.dailymotion);if(!this.el_)return;this._dm_sdk=n;let r=await n.createPlayer(this.options_.techId,{...t?{player:t}:{},video:this.videoId,params:{autoplay:!!e.autoplay,mute:!!e.muted}});if(!this.el_)return;this._dm=r;let{events:i}=this._dm_sdk;this.triggerReady(),this.playOnReady&&this.play(),r.on(i.PLAYER_CRITICALPATHREADY,e=>{let t=e.videoThumbnails;if(t){let e=t[Object.keys(t).map(Number).sort((e,t)=>t-e)[0]];e&&this.trigger({type:`posterchange`,src:e})}}),r.on(i.VIDEO_PLAY,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`),!e.autoplay&&!this.initialAutoplayHandled&&(this.initialAutoplayHandled=!0,r.pause())}),r.on(i.VIDEO_PLAYING,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),r.on(i.VIDEO_PAUSE,()=>{this._paused=!0,this.trigger(`pause`)}),i.VIDEO_BUFFERING&&r.on(i.VIDEO_BUFFERING,()=>this.trigger(`waiting`)),r.on(i.VIDEO_END,()=>{this._paused=!0,this.trigger(`ended`)}),r.on(i.VIDEO_TIMECHANGE,e=>{this._currentTime=e.videoTime??this._currentTime,this._duration=e.videoDuration??this._duration,this.trigger(`timeupdate`)}),r.on(i.VIDEO_DURATIONCHANGE,e=>{this._duration=e.videoDuration??this._duration,this.trigger(`durationchange`)}),r.on(i.VIDEO_SEEKSTART,()=>{this._seeking=!0,this.trigger(`seeking`)}),r.on(i.VIDEO_SEEKEND,e=>{this._seeking=!1,this._currentTime=e.videoTime??this._currentTime,this.trigger(`seeked`)}),r.on(i.PLAYER_VOLUMECHANGE,e=>{this._volume=e.playerVolume??this._volume,this._muted=e.playerIsMuted??this._muted,this.trigger(`volumechange`)}),r.on(i.PLAYER_ERROR,()=>this.trigger(`error`)),i.AD_START&&r.on(i.AD_START,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`adstart`)}),i.AD_END&&r.on(i.AD_END,()=>this.trigger(`adend`))}catch(e){o.log.error(`Dailymotion:`,e.message)}}play(){this._dm?this._dm.play():this.playOnReady=!0}pause(){this._dm?.pause()}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this._currentTime=e,this._dm?.seek(e),this._seeking=!0,this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this._dm?.setVolume(e)}muted(){return this._muted}setMuted(e){this._muted=e,this._dm?.setMute(e)}playbackRate(){return 1}setPlaybackRate(){}buffered(){return o.createTimeRange(0,this._currentTime)}seekable(){return o.createTimeRange(0,this._duration)}currentSrc(){return this.source?.src??``}ended(){return!1}preload(){}load(){}reset(){}networkState(){return+!!this._dm}readyState(){return this._dm?4:0}supportsFullScreen(){return i()}enterFullscreen(){if(e()){this._dm?.setFullscreen(!0);return}n(this._shell)}exitFullscreen(){if(e()){this._dm?.setFullscreen(!1);return}r()}setSrc(e){e?.src&&(this.source=e,this.videoId=t.parseVideoId(e.src),this.options_.autoplay&&(this.playOnReady=!0))}dispose(){this._dm?.destroy?.(),this._dm=null,this.el_?.parentNode?.classList.remove(`vjs-dailymotion`),s.prototype.dispose.call(this)}};c.isSupported=()=>!0,c.canPlayType=e=>e===`video/dailymotion`?`probably`:``,c.canPlaySource=({type:e,src:t})=>e===`video/dailymotion`?`probably`:/dailymotion\.com|dai\.ly/.test(t)?`maybe`:``,c.parseVideoId=e=>{let t=e.match(/[?&]video=([a-zA-Z0-9]+)/);if(t)return t[1];let n=e.match(/(?:dailymotion\.com\/(?:embed\/)?video\/|dai\.ly\/)([a-zA-Z0-9]+)/);return n?n[1]:null},t(`Dailymotion`,c);export{c as default};
@@ -1 +1 @@
1
- import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{a as n,c as r,l as i,n as a,u as o}from"./tech-DQUZqNr6.mjs";import{t as s}from"./loadScript-Du6JsTc2.mjs";var c=e(t(),1);const l=c.default.getTech(`Tech`);var u=class e extends l{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this._dm=null,this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-dailymotion`),this.initPlayer())})}createEl(){let e=document.createElement(`div`);return e.setAttribute(`id`,this.options_.techId),e.setAttribute(`class`,`vjs-tech`),e.setAttribute(`style`,`position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden`),e}async initPlayer(){let e=this.options_,t=e.source?.dailymotion?.playerId;if(!this.videoId){c.default.log.error(`Dailymotion Tech: could not parse video ID from source URL`);return}this._playerId=t;let n=this.el_?.parentNode;for(;n&&!n.classList?.contains(`player__shell`);)n=n.parentNode;this._shell=n;try{let n=await s(t?`https://geo.dailymotion.com/libs/player/${t}.js`:`https://geo.dailymotion.com/libs/player.js`,t||`dailymotion-sdk`).then(()=>window.dailymotion);if(!this.el_)return;this._dm_sdk=n;let r=await n.createPlayer(this.options_.techId,{...t?{player:t}:{},video:this.videoId,params:{autoplay:!!e.autoplay,mute:!!e.muted}});if(!this.el_)return;this._dm=r;let{events:i}=this._dm_sdk;this.triggerReady(),this.playOnReady&&this.play(),r.on(i.PLAYER_CRITICALPATHREADY,e=>{let t=e.videoThumbnails;if(t){let e=t[Object.keys(t).map(Number).sort((e,t)=>t-e)[0]];e&&this.trigger({type:`posterchange`,src:e})}}),r.on(i.VIDEO_PLAY,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`),!e.autoplay&&!this.initialAutoplayHandled&&(this.initialAutoplayHandled=!0,r.pause())}),r.on(i.VIDEO_PLAYING,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),r.on(i.VIDEO_PAUSE,()=>{this._paused=!0,this.trigger(`pause`)}),i.VIDEO_BUFFERING&&r.on(i.VIDEO_BUFFERING,()=>this.trigger(`waiting`)),r.on(i.VIDEO_END,()=>{this._paused=!0,this.trigger(`ended`)}),r.on(i.VIDEO_TIMECHANGE,e=>{this._currentTime=e.videoTime??this._currentTime,this._duration=e.videoDuration??this._duration,this.trigger(`timeupdate`)}),r.on(i.VIDEO_DURATIONCHANGE,e=>{this._duration=e.videoDuration??this._duration,this.trigger(`durationchange`)}),r.on(i.VIDEO_SEEKSTART,()=>{this._seeking=!0,this.trigger(`seeking`)}),r.on(i.VIDEO_SEEKEND,e=>{this._seeking=!1,this._currentTime=e.videoTime??this._currentTime,this.trigger(`seeked`)}),r.on(i.PLAYER_VOLUMECHANGE,e=>{this._volume=e.playerVolume??this._volume,this._muted=e.playerIsMuted??this._muted,this.trigger(`volumechange`)}),r.on(i.PLAYER_ERROR,()=>this.trigger(`error`)),i.AD_START&&r.on(i.AD_START,()=>this.trigger(`adstart`)),i.AD_END&&r.on(i.AD_END,()=>this.trigger(`adend`))}catch(e){c.default.log.error(`Dailymotion:`,e.message)}}play(){this._dm?this._dm.play():this.playOnReady=!0}pause(){this._dm?.pause()}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this._currentTime=e,this._dm?.seek(e),this._seeking=!0,this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this._dm?.setVolume(e)}muted(){return this._muted}setMuted(e){this._muted=e,this._dm?.setMute(e)}playbackRate(){return 1}setPlaybackRate(){}buffered(){return c.default.createTimeRange(0,this._currentTime)}seekable(){return c.default.createTimeRange(0,this._duration)}currentSrc(){return this.source?.src??``}ended(){return!1}preload(){}load(){}reset(){}networkState(){return+!!this._dm}readyState(){return this._dm?4:0}supportsFullScreen(){return o()}enterFullscreen(){if(n()){this._dm?.setFullscreen(!0);return}i(this._shell)}exitFullscreen(){if(n()){this._dm?.setFullscreen(!1);return}a()}setSrc(t){t?.src&&(this.source=t,this.videoId=e.parseVideoId(t.src),this.options_.autoplay&&(this.playOnReady=!0))}dispose(){this._dm?.destroy?.(),this._dm=null,this.el_?.parentNode?.classList.remove(`vjs-dailymotion`),l.prototype.dispose.call(this)}};u.isSupported=()=>!0,u.canPlayType=e=>e===`video/dailymotion`?`probably`:``,u.canPlaySource=({type:e,src:t})=>e===`video/dailymotion`?`probably`:/dailymotion\.com|dai\.ly/.test(t)?`maybe`:``,u.parseVideoId=e=>{let t=e.match(/[?&]video=([a-zA-Z0-9]+)/);if(t)return t[1];let n=e.match(/(?:dailymotion\.com\/(?:embed\/)?video\/|dai\.ly\/)([a-zA-Z0-9]+)/);return n?n[1]:null},r(`Dailymotion`,u);export{u as default};
1
+ import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{a as n,c as r,l as i,n as a,u as o}from"./tech-DHDK_NLh.mjs";import{t as s}from"./loadScript-Du6JsTc2.mjs";var c=e(t(),1);const l=c.default.getTech(`Tech`);var u=class e extends l{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this._dm=null,this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-dailymotion`),this.initPlayer())})}createEl(){let e=document.createElement(`div`);return e.setAttribute(`id`,this.options_.techId),e.setAttribute(`class`,`vjs-tech`),e.setAttribute(`style`,`position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden`),e}async initPlayer(){let e=this.options_,t=e.source?.dailymotion?.playerId;if(!this.videoId){c.default.log.error(`Dailymotion Tech: could not parse video ID from source URL`);return}this._playerId=t;let n=this.el_?.parentNode;for(;n&&!n.classList?.contains(`player__shell`);)n=n.parentNode;this._shell=n;try{let n=await s(t?`https://geo.dailymotion.com/libs/player/${t}.js`:`https://geo.dailymotion.com/libs/player.js`,t||`dailymotion-sdk`).then(()=>window.dailymotion);if(!this.el_)return;this._dm_sdk=n;let r=await n.createPlayer(this.options_.techId,{...t?{player:t}:{},video:this.videoId,params:{autoplay:!!e.autoplay,mute:!!e.muted}});if(!this.el_)return;this._dm=r;let{events:i}=this._dm_sdk;this.triggerReady(),this.playOnReady&&this.play(),r.on(i.PLAYER_CRITICALPATHREADY,e=>{let t=e.videoThumbnails;if(t){let e=t[Object.keys(t).map(Number).sort((e,t)=>t-e)[0]];e&&this.trigger({type:`posterchange`,src:e})}}),r.on(i.VIDEO_PLAY,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`),!e.autoplay&&!this.initialAutoplayHandled&&(this.initialAutoplayHandled=!0,r.pause())}),r.on(i.VIDEO_PLAYING,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),r.on(i.VIDEO_PAUSE,()=>{this._paused=!0,this.trigger(`pause`)}),i.VIDEO_BUFFERING&&r.on(i.VIDEO_BUFFERING,()=>this.trigger(`waiting`)),r.on(i.VIDEO_END,()=>{this._paused=!0,this.trigger(`ended`)}),r.on(i.VIDEO_TIMECHANGE,e=>{this._currentTime=e.videoTime??this._currentTime,this._duration=e.videoDuration??this._duration,this.trigger(`timeupdate`)}),r.on(i.VIDEO_DURATIONCHANGE,e=>{this._duration=e.videoDuration??this._duration,this.trigger(`durationchange`)}),r.on(i.VIDEO_SEEKSTART,()=>{this._seeking=!0,this.trigger(`seeking`)}),r.on(i.VIDEO_SEEKEND,e=>{this._seeking=!1,this._currentTime=e.videoTime??this._currentTime,this.trigger(`seeked`)}),r.on(i.PLAYER_VOLUMECHANGE,e=>{this._volume=e.playerVolume??this._volume,this._muted=e.playerIsMuted??this._muted,this.trigger(`volumechange`)}),r.on(i.PLAYER_ERROR,()=>this.trigger(`error`)),i.AD_START&&r.on(i.AD_START,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`adstart`)}),i.AD_END&&r.on(i.AD_END,()=>this.trigger(`adend`))}catch(e){c.default.log.error(`Dailymotion:`,e.message)}}play(){this._dm?this._dm.play():this.playOnReady=!0}pause(){this._dm?.pause()}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this._currentTime=e,this._dm?.seek(e),this._seeking=!0,this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this._dm?.setVolume(e)}muted(){return this._muted}setMuted(e){this._muted=e,this._dm?.setMute(e)}playbackRate(){return 1}setPlaybackRate(){}buffered(){return c.default.createTimeRange(0,this._currentTime)}seekable(){return c.default.createTimeRange(0,this._duration)}currentSrc(){return this.source?.src??``}ended(){return!1}preload(){}load(){}reset(){}networkState(){return+!!this._dm}readyState(){return this._dm?4:0}supportsFullScreen(){return o()}enterFullscreen(){if(n()){this._dm?.setFullscreen(!0);return}i(this._shell)}exitFullscreen(){if(n()){this._dm?.setFullscreen(!1);return}a()}setSrc(t){t?.src&&(this.source=t,this.videoId=e.parseVideoId(t.src),this.options_.autoplay&&(this.playOnReady=!0))}dispose(){this._dm?.destroy?.(),this._dm=null,this.el_?.parentNode?.classList.remove(`vjs-dailymotion`),l.prototype.dispose.call(this)}};u.isSupported=()=>!0,u.canPlayType=e=>e===`video/dailymotion`?`probably`:``,u.canPlaySource=({type:e,src:t})=>e===`video/dailymotion`?`probably`:/dailymotion\.com|dai\.ly/.test(t)?`maybe`:``,u.parseVideoId=e=>{let t=e.match(/[?&]video=([a-zA-Z0-9]+)/);if(t)return t[1];let n=e.match(/(?:dailymotion\.com\/(?:embed\/)?video\/|dai\.ly\/)([a-zA-Z0-9]+)/);return n?n[1]:null},r(`Dailymotion`,u);export{u as default};
@@ -0,0 +1 @@
1
+ import{_ as e,s as t,t as n}from"./tech-BNI0cffg.mjs";import r from"video.js";function i(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function a(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const o=n(async n=>{let r=await fetch(`${e}/${n}`);if(!r.ok)throw Error(`JW Platform API error: ${r.status}`);let i=(await r.json()).playlist?.[0];if(!i)throw Error(`JW Platform: empty playlist`);let o=t((i.sources??[]).map(e=>({src:e.file,type:e.type})));if(!o.length)throw Error(`JW Platform: no playable sources found`);return{src:o[0].src,type:o[0].type,poster:i.image??null,adTagUrl:a(i)}});async function s(e){let t=i(e);if(!t)throw Error(`JW Platform: unrecognised source URL: ${e}`);let n=await o(t);if(e.startsWith(`jwplayer://`))return n;let r=/\.mp4(\?|$)/.test(e)?`video/mp4`:`application/x-mpegURL`;return{...n,src:e,type:r}}async function c(e){let t=i(e);return t?o(t).catch(()=>null):null}r.use(`video/jwplayer`,e=>({setSource(t,n){(async()=>{try{let{src:i,type:a,poster:o}=await s(t.src);r.log(`JW Platform: resolved source`,i),o&&!e.poster()&&e.poster(o),n(null,{src:i,type:a})}catch(e){r.log.error(`JW Platform error:`,e.message),n(e,t)}})()}}));export{c as prefetchConfig};
@@ -0,0 +1 @@
1
+ import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{_ as n,s as r,t as i}from"./tech-DHDK_NLh.mjs";var a=e(t(),1);function o(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function s(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const c=i(async e=>{let t=await fetch(`${n}/${e}`);if(!t.ok)throw Error(`JW Platform API error: ${t.status}`);let i=(await t.json()).playlist?.[0];if(!i)throw Error(`JW Platform: empty playlist`);let a=r((i.sources??[]).map(e=>({src:e.file,type:e.type})));if(!a.length)throw Error(`JW Platform: no playable sources found`);return{src:a[0].src,type:a[0].type,poster:i.image??null,adTagUrl:s(i)}});async function l(e){let t=o(e);if(!t)throw Error(`JW Platform: unrecognised source URL: ${e}`);let n=await c(t);if(e.startsWith(`jwplayer://`))return n;let r=/\.mp4(\?|$)/.test(e)?`video/mp4`:`application/x-mpegURL`;return{...n,src:e,type:r}}async function u(e){let t=o(e);return t?c(t).catch(()=>null):null}a.default.use(`video/jwplayer`,e=>({setSource(t,n){(async()=>{try{let{src:r,type:i,poster:o}=await l(t.src);a.default.log(`JW Platform: resolved source`,r),o&&!e.poster()&&e.poster(o),n(null,{src:r,type:i})}catch(e){a.default.log.error(`JW Platform error:`,e.message),n(e,t)}})()}}));export{u as prefetchConfig};
@@ -0,0 +1 @@
1
+ import e from"video.js";const t=`video-select`,n=`video-toggle`,r=`video-state`,i=`fullscreen-pending`,a=`fullscreen-pending-done`,o=`ads-pod-started`,s=`ads-pod-ended`,c=`player:positions`,l=`16:9`,u=[.5,.75,1,1.25,1.5,2],d=3500,f=3e3,p=.6,m=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]],h=new Set([`Youtube`,`Vimeo`,`Dailymotion`]),g=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,_=`https://cdn.jwplayer.com/v2/media`,v=`https://edge.api.brightcove.com/playback/v1/accounts`,y=`https://players.brightcove.net`;function b(e){return h.has(e)}function x(){return/iPad|iPhone|iPod/.test(navigator.userAgent)||/Mac/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function S(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled)}function C(e){(e.requestFullscreen||e.webkitRequestFullscreen)?.call(e)}function w(){(document.exitFullscreen||document.webkitExitFullscreen)?.call(document)}function T(t,n){e.registerTech(t,n)}function E(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}function D(e){return!e||isNaN(e)?`0:00`:`${Math.floor(e/60)}:${String(Math.floor(e%60)).padStart(2,`0`)}`}function O(e,t=(...e)=>String(e[0])){let n={};return async(...r)=>{let i=t(...r);if(n[i])return n[i];let a=await e(...r);return n[i]=a,a}}function k(e){return e.filter(e=>e.src&&(e.type===`application/x-mpegURL`||e.type===`video/mp4`)).sort((e,t)=>e.type===`application/x-mpegURL`?-1:1)}export{o as C,r as D,t as E,n as O,s as S,a as T,_,x as a,f as b,T as c,v as d,y as f,g,d as h,b as i,C as l,p as m,w as n,E as o,l as p,D as r,k as s,O as t,S as u,u as v,i as w,c as x,m as y};
@@ -0,0 +1 @@
1
+ import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";var n=e(t(),1);const r=`video-select`,i=`video-toggle`,a=`video-state`,o=`fullscreen-pending`,s=`fullscreen-pending-done`,c=`ads-pod-started`,l=`ads-pod-ended`,u=`player:positions`,d=`16:9`,f=[.5,.75,1,1.25,1.5,2],p=3500,m=3e3,h=.6,g=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]],_=new Set([`Youtube`,`Vimeo`,`Dailymotion`]),v=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,y=`https://cdn.jwplayer.com/v2/media`,b=`https://edge.api.brightcove.com/playback/v1/accounts`,x=`https://players.brightcove.net`;function S(e){return _.has(e)}function C(){return/iPad|iPhone|iPod/.test(navigator.userAgent)||/Mac/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function w(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled)}function T(e){(e.requestFullscreen||e.webkitRequestFullscreen)?.call(e)}function E(){(document.exitFullscreen||document.webkitExitFullscreen)?.call(document)}function D(e,t){n.default.registerTech(e,t)}function O(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}function k(e){return!e||isNaN(e)?`0:00`:`${Math.floor(e/60)}:${String(Math.floor(e%60)).padStart(2,`0`)}`}function A(e,t=(...e)=>String(e[0])){let n={};return async(...r)=>{let i=t(...r);if(n[i])return n[i];let a=await e(...r);return n[i]=a,a}}function j(e){return e.filter(e=>e.src&&(e.type===`application/x-mpegURL`||e.type===`video/mp4`)).sort((e,t)=>e.type===`application/x-mpegURL`?-1:1)}export{c as C,a as D,r as E,i as O,l as S,s as T,y as _,C as a,m as b,D as c,b as d,x as f,v as g,p as h,S as i,T as l,h as m,E as n,O as o,d as p,k as r,j as s,A as t,w as u,f as v,o as w,u as x,g as y};
@@ -1 +1 @@
1
- import{a as e,c as t,l as n,n as r,u as i}from"./tech-BOi4jf1S.mjs";import a from"video.js";import o from"@vimeo/player";const s=a.getTech(`Tech`);var c=class t extends s{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this.setSrc(this.options_.source,!0),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-vimeo`),this.initVimeoPlayer())})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initVimeoPlayer(){if(!this.url||!this.url.videoId)return;let e={id:this.url.videoId,byline:!1,portrait:!1,title:!1,transparent:!0,controls:!!this.options_.nativeUi,autopause:!1,width:`100%`,height:`100%`};this.options_.autoplay!==void 0&&(e.autoplay=this.options_.autoplay),this.options_.loop!==void 0&&(e.loop=this.options_.loop),this.options_.muted!==void 0&&(e.muted=this.options_.muted),this.vimeoPlayer=new o(this.options_.techId,e),this.vimeoPlayer.ready().then(()=>this.onPlayerReady()).catch(e=>{this.player_.error({code:4,message:e?.message||`This video is unavailable or cannot be embedded here.`})}),this.vimeoPlayer.on(`play`,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),this.vimeoPlayer.on(`pause`,()=>{this._paused=!0,this.trigger(`pause`)}),this.vimeoPlayer.on(`ended`,()=>{this._paused=!0,this.trigger(`ended`)}),this.vimeoPlayer.on(`timeupdate`,({seconds:e,duration:t})=>{this._currentTime=e,this._duration=t,this.trigger(`timeupdate`),t&&!this._durationSet&&(this._durationSet=!0,this.trigger(`durationchange`))}),this.vimeoPlayer.on(`loaded`,()=>{this._durationSet=!1,this.trigger(`loadedmetadata`),this.trigger(`durationchange`)}),this.vimeoPlayer.on(`seeking`,({seconds:e})=>{this._currentTime=e,this._seeking=!0,this.trigger(`seeking`)}),this.vimeoPlayer.on(`seeked`,({seconds:e})=>{this._currentTime=e,this._seeking=!1,this.trigger(`seeked`),this.trigger(`timeupdate`)}),this.vimeoPlayer.on(`bufferstart`,()=>this.trigger(`waiting`)),this.vimeoPlayer.on(`bufferend`,()=>this.trigger(`canplay`)),this.vimeoPlayer.on(`volumechange`,({volume:e})=>{this._volume=e,this.trigger(`volumechange`)}),this.vimeoPlayer.on(`error`,e=>this.trigger(`error`,e)),this.vimeoPlayer.on(`fullscreenchange`,({fullscreen:e})=>{this.trigger(`fullscreenchange`,{isFullscreen:e})})}enterFullscreen(){if(!e())return n(this.player_.el().parentElement);this.vimeoPlayer?.requestFullscreen().catch(()=>{})}exitFullscreen(){r()}onPlayerReady(){this.triggerReady(),this.options_.muted&&this.vimeoPlayer.setMuted(!0),this.playOnReady&&this.play()}setSrc(e){!e||!e.src||(this.source=e,this.url=t.parseUrl(e.src),this.options_.autoplay&&(this.playOnReady=!0))}play(){if(!this.vimeoPlayer){this.playOnReady=!0;return}this.vimeoPlayer.play().catch(()=>{})}pause(){this.vimeoPlayer?.pause().catch(()=>{})}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this.vimeoPlayer?.setCurrentTime(e).catch(()=>{}),this.trigger(`timeupdate`),this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this.vimeoPlayer?.setVolume(e).catch(()=>{})}muted(){return this._muted}setMuted(e){this._muted=e,this.vimeoPlayer?.setMuted(e).then(()=>{this.setTimeout(()=>this.trigger(`volumechange`),50)}).catch(()=>{})}buffered(){return a.createTimeRange(0,this._currentTime)}seekable(){return a.createTimeRange(0,this._duration)}playbackRate(){return this._playbackRate||1}setPlaybackRate(e){this._playbackRate=e,this.vimeoPlayer?.setPlaybackRate(e).catch(()=>{}),this.trigger(`ratechange`)}preload(){}load(){}reset(){}currentSrc(){return this.source?.src||``}ended(){return!1}networkState(){return+!!this.vimeoPlayer}readyState(){return this.vimeoPlayer?4:0}supportsFullScreen(){return i()}dispose(){this.vimeoPlayer?.destroy().catch(()=>{}),this.vimeoPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-vimeo`),s.prototype.dispose.call(this)}};c.isSupported=()=>!0,c.canPlayType=e=>e===`video/vimeo`?`probably`:``,c.canPlaySource=({type:e,src:t})=>e===`video/vimeo`?`probably`:/vimeo\.com|player\.vimeo\.com/.test(t)?`maybe`:``,c.parseUrl=e=>{let t={videoId:null},n=e.match(/(?:vimeo\.com\/(?:video\/|channels\/[^/]+\/|groups\/[^/]+\/videos\/)?|player\.vimeo\.com\/video\/)(\d+)/);return n&&(t.videoId=n[1]),t},t(`Vimeo`,c);export{c as default};
1
+ import{a as e,c as t,l as n,n as r,u as i}from"./tech-BNI0cffg.mjs";import a from"video.js";import o from"@vimeo/player";const s=a.getTech(`Tech`);var c=class t extends s{constructor(e,t){super(e,t),this._currentTime=0,this._duration=0,this._volume=1,this._muted=!1,this._paused=!0,this._seeking=!1,this.setSrc(this.options_.source,!0),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-vimeo`),this.initVimeoPlayer())})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initVimeoPlayer(){if(!this.url||!this.url.videoId)return;let e={id:this.url.videoId,byline:!1,portrait:!1,title:!1,transparent:!0,controls:!!this.options_.nativeUi,autopause:!1,width:`100%`,height:`100%`};this.options_.autoplay!==void 0&&(e.autoplay=this.options_.autoplay),this.options_.loop!==void 0&&(e.loop=this.options_.loop),this.options_.muted!==void 0&&(e.muted=this.options_.muted),this.vimeoPlayer=new o(this.options_.techId,e),this.vimeoPlayer.ready().then(()=>this.onPlayerReady()).catch(e=>{this.player_.error({code:4,message:e?.message||`This video is unavailable or cannot be embedded here.`})}),this.vimeoPlayer.on(`play`,()=>{this._paused=!1,this.trigger(`play`),this.trigger(`playing`)}),this.vimeoPlayer.on(`pause`,()=>{this._paused=!0,this.trigger(`pause`)}),this.vimeoPlayer.on(`ended`,()=>{this._paused=!0,this.trigger(`ended`)}),this.vimeoPlayer.on(`timeupdate`,({seconds:e,duration:t})=>{this._currentTime=e,this._duration=t,this.trigger(`timeupdate`),t&&!this._durationSet&&(this._durationSet=!0,this.trigger(`durationchange`))}),this.vimeoPlayer.on(`loaded`,()=>{this._durationSet=!1,this.trigger(`loadedmetadata`),this.trigger(`durationchange`)}),this.vimeoPlayer.on(`seeking`,({seconds:e})=>{this._currentTime=e,this._seeking=!0,this.trigger(`seeking`)}),this.vimeoPlayer.on(`seeked`,({seconds:e})=>{this._currentTime=e,this._seeking=!1,this.trigger(`seeked`),this.trigger(`timeupdate`)}),this.vimeoPlayer.on(`bufferstart`,()=>this.trigger(`waiting`)),this.vimeoPlayer.on(`bufferend`,()=>this.trigger(`canplay`)),this.vimeoPlayer.on(`volumechange`,({volume:e})=>{this._volume=e,this.trigger(`volumechange`)}),this.vimeoPlayer.on(`error`,e=>this.trigger(`error`,e)),this.vimeoPlayer.on(`fullscreenchange`,({fullscreen:e})=>{this.trigger(`fullscreenchange`,{isFullscreen:e})})}enterFullscreen(){if(!e())return n(this.player_.el().parentElement);this.vimeoPlayer?.requestFullscreen().catch(()=>{})}exitFullscreen(){r()}onPlayerReady(){this.triggerReady(),this.options_.muted&&this.vimeoPlayer.setMuted(!0),this.playOnReady&&this.play()}setSrc(e){!e||!e.src||(this.source=e,this.url=t.parseUrl(e.src),this.options_.autoplay&&(this.playOnReady=!0))}play(){if(!this.vimeoPlayer){this.playOnReady=!0;return}this.vimeoPlayer.play().catch(()=>{})}pause(){this.vimeoPlayer?.pause().catch(()=>{})}paused(){return this._paused}seeking(){return this._seeking}currentTime(){return this._currentTime}setCurrentTime(e){this.vimeoPlayer?.setCurrentTime(e).catch(()=>{}),this.trigger(`timeupdate`),this.trigger(`seeking`)}duration(){return this._duration}volume(){return this._volume}setVolume(e){this._volume=e,this.vimeoPlayer?.setVolume(e).catch(()=>{})}muted(){return this._muted}setMuted(e){this._muted=e,this.vimeoPlayer?.setMuted(e).then(()=>{this.setTimeout(()=>this.trigger(`volumechange`),50)}).catch(()=>{})}buffered(){return a.createTimeRange(0,this._currentTime)}seekable(){return a.createTimeRange(0,this._duration)}playbackRate(){return this._playbackRate||1}setPlaybackRate(e){this._playbackRate=e,this.vimeoPlayer?.setPlaybackRate(e).catch(()=>{}),this.trigger(`ratechange`)}preload(){}load(){}reset(){}currentSrc(){return this.source?.src||``}ended(){return!1}networkState(){return+!!this.vimeoPlayer}readyState(){return this.vimeoPlayer?4:0}supportsFullScreen(){return i()}dispose(){this.vimeoPlayer?.destroy().catch(()=>{}),this.vimeoPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-vimeo`),s.prototype.dispose.call(this)}};c.isSupported=()=>!0,c.canPlayType=e=>e===`video/vimeo`?`probably`:``,c.canPlaySource=({type:e,src:t})=>e===`video/vimeo`?`probably`:/vimeo\.com|player\.vimeo\.com/.test(t)?`maybe`:``,c.parseUrl=e=>{let t={videoId:null},n=e.match(/(?:vimeo\.com\/(?:video\/|channels\/[^/]+\/|groups\/[^/]+\/videos\/)?|player\.vimeo\.com\/video\/)(\d+)/);return n&&(t.videoId=n[1]),t},t(`Vimeo`,c);export{c as default};
@@ -1,4 +1,4 @@
1
- import{a as e,i as t,t as n}from"./video.cjs-gZWrkL0e.mjs";import{a as r,c as i,l as a,n as o,u as s}from"./tech-DQUZqNr6.mjs";var c=t(((e,t)=>{
1
+ import{a as e,i as t,t as n}from"./video.cjs-gZWrkL0e.mjs";import{a as r,c as i,l as a,n as o,u as s}from"./tech-DHDK_NLh.mjs";var c=t(((e,t)=>{
2
2
  /*! @vimeo/player v2.30.4 | (c) 2026 Vimeo | MIT License | https://github.com/vimeo/player.js */
3
3
  (function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self,n.Vimeo=n.Vimeo||{},n.Vimeo.Player=r())})(e,(function(){let e=typeof global<`u`&&{}.toString.call(global)===`[object global]`,t=typeof Bun<`u`,n=typeof Deno<`u`,r=typeof WebSocketPair==`function`&&caches?.default!==void 0,i=e||t||n||r;function a(e,t){return e.indexOf(t.toLowerCase())===0?e:`${t.toLowerCase()}${e.substr(0,1).toUpperCase()}${e.substr(1)}`}function o(e){return!!(e&&e.nodeType===1&&`nodeName`in e&&e.ownerDocument&&e.ownerDocument.defaultView)}function s(e){return!isNaN(parseFloat(e))&&isFinite(e)&&Math.floor(e)==e}function c(e){return/^(https?:)?\/\/((((player|www)\.)?vimeo\.com)|((player\.)?[a-zA-Z0-9-]+\.(videoji\.(hk|cn)|vimeo\.work)))(?=$|\/)/.test(e)}function l(e){return/^https:\/\/player\.((vimeo\.com)|([a-zA-Z0-9-]+\.(videoji\.(hk|cn)|vimeo\.work)))\/video\/\d+/.test(e)}function u(e){let t=(e||``).match(/^(?:https?:)?(?:\/\/)?([^/?]+)/),n=(t&&t[1]||``).replace(`player.`,``);for(let e of[`.videoji.hk`,`.vimeo.work`,`.videoji.cn`])if(n.endsWith(e))return n;return`vimeo.com`}function d(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.id,n=e.url,r=t||n;if(!r)throw Error(`An id or url must be passed, either in an options object or as a data-vimeo-id or data-vimeo-url attribute.`);if(s(r))return`https://vimeo.com/${r}`;if(c(r))return r.replace(`http:`,`https:`);throw TypeError(t?`“${t}” is not a valid video id.`:`“${r}” is not a vimeo.com url.`)}let f=function(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`addEventListener`,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:`removeEventListener`,a=typeof t==`string`?[t]:t;return a.forEach(t=>{e[r](t,n)}),{cancel:()=>a.forEach(t=>e[i](t,n))}};function p(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:document;if(!e||!t||typeof t.querySelectorAll!=`function`)return null;let n=t.querySelectorAll(`iframe`);for(let t=0;t<n.length;t++)if(n[t]&&n[t].contentWindow===e)return n[t];return null}let m=Array.prototype.indexOf!==void 0,h=typeof window<`u`&&window.postMessage!==void 0;if(!i&&(!m||!h))throw Error(`Sorry, the Vimeo Player API is not available in this browser.`);var g=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function _(e,t){return t={exports:{}},e(t,t.exports),t.exports}
4
4
  /*!
@@ -1 +1 @@
1
- import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{a as n,c as r,h as i,l as a,m as o,n as s,u as c}from"./tech-DQUZqNr6.mjs";import{t as l}from"./loadScript-Du6JsTc2.mjs";var u=e(t(),1);const d=u.default.getTech(`Tech`),f=u.default.browser.IS_IOS||u.default.browser.IS_NATIVE_ANDROID;var p=class e extends d{constructor(t,n){super(t,n),this.setPoster(t.poster),this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-youtube`),f&&this.el_.parentNode.classList.add(`vjs-youtube-mobile`),e.isApiReady?this.initYTPlayer():e.apiReadyQueue.push(this))})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initYTPlayer(){let e=this.options_,t={controls:+!!e.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!e.muted,loop:+!!e.loop,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,...e.iv_load_policy!==void 0&&{iv_load_policy:e.iv_load_policy},...e.cc_load_policy!==void 0&&{cc_load_policy:e.cc_load_policy},...e.color!==void 0&&{color:e.color},...e.hl!==void 0&&{hl:e.hl},...e.playsinline!==void 0&&{playsinline:e.playsinline},...e.rel!==void 0&&{rel:e.rel},...e.start!==void 0&&{start:e.start},...e.end!==void 0&&{end:e.end},...e.ytControls!==void 0&&{controls:e.ytControls},...e.customVars};e.youtube&&Object.assign(t,e.youtube),this.activeVideoId=this.url?.videoId??null,this.ytPlayer=new window.YT.Player(this.options_.techId,{videoId:this.activeVideoId,playerVars:t,...e.enablePrivacyEnhancedMode&&{host:`https://www.youtube-nocookie.com`},events:{onReady:this.onPlayerReady.bind(this),onStateChange:this.onPlayerStateChange.bind(this),onPlaybackRateChange:this.onPlayerPlaybackRateChange.bind(this),onVolumeChange:this.onPlayerVolumeChange.bind(this),onError:this.onPlayerError.bind(this)}}),window.yt=this.ytPlayer}onPlayerReady(){this.ytPlayer.getAvailablePlaybackRates().length>1&&(this.featuresPlaybackRate=!0),this.playerReady_=!0,this.triggerReady(),this.playOnReady?this.play():this.cueOnReady&&(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId)}_isAdPlaying(){try{let e=this.ytPlayer?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}onPlayerStateChange(e){let t=e.data;if(t===this.lastState||this.errorNumber)return;this.lastState=t;let n=this._isAdPlaying();switch(n!==this._adWasPlaying&&(this._adWasPlaying=n,this.trigger(n?`adstart`:`adend`)),t){case-1:this.trigger(`loadstart`),this.trigger(`loadedmetadata`),this.trigger(`durationchange`),this.trigger(`ratechange`);break;case YT.PlayerState.ENDED:this.trigger(`ended`);break;case YT.PlayerState.PLAYING:this.trigger(`timeupdate`),this.trigger(`durationchange`),this.trigger(`playing`),this.trigger(`play`),this.isSeeking&&this.onSeeked();break;case YT.PlayerState.PAUSED:this.trigger(`canplay`),this.isSeeking||this.trigger(`pause`);break;case YT.PlayerState.BUFFERING:this.player_.trigger(`waiting`);break;case YT.PlayerState.CUED:this.trigger(`canplay`);break}this.startInterval&&=(clearInterval(this.startInterval),null),t===YT.PlayerState.PLAYING&&(this.startInterval=setInterval(()=>this.trigger(`timeupdate`),250))}onPlayerPlaybackRateChange(){this.trigger(`ratechange`)}onPlayerVolumeChange(){this.trigger(`volumechange`)}onPlayerError(e){this.errorNumber=e.data,this.trigger(`error`),this.setTimeout(()=>{this.errorNumber=null},0)}play(){this.url?.videoId&&(this.wasPausedBeforeSeek=!1,this.isReady_?this.activeVideoId===this.url.videoId?this.ytPlayer.playVideo():(this.loadVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):(this.trigger(`waiting`),this.playOnReady=!0))}pause(){this.ytPlayer?.pauseVideo()}paused(){return this.ytPlayer?this.lastState!==YT.PlayerState.PLAYING&&this.lastState!==YT.PlayerState.BUFFERING:!0}loadVideoById_(e){this.ytPlayer.loadVideoById({videoId:e})}cueVideoById_(e){this.ytPlayer.cueVideoById({videoId:e})}currentTime(){return this.ytPlayer?.getCurrentTime()??0}setCurrentTime(e){this.lastState===YT.PlayerState.PAUSED&&(this.timeBeforeSeek=this.currentTime()),this.isSeeking||(this.wasPausedBeforeSeek=this.paused()),this.ytPlayer.seekTo(e,!0),this.trigger(`timeupdate`),this.trigger(`seeking`),this.isSeeking=!0,this.lastState===YT.PlayerState.PAUSED&&this.timeBeforeSeek!==e&&(clearInterval(this.checkSeekedInPauseInterval),this.checkSeekedInPauseInterval=setInterval(()=>{this.lastState!==YT.PlayerState.PAUSED||!this.isSeeking?clearInterval(this.checkSeekedInPauseInterval):this.currentTime()!==this.timeBeforeSeek&&(this.trigger(`timeupdate`),this.onSeeked())},250))}onSeeked(){clearInterval(this.checkSeekedInPauseInterval),this.isSeeking=!1,this.wasPausedBeforeSeek&&this.pause(),this.trigger(`seeked`)}seeking(){return this.isSeeking}seekable(){return u.default.createTimeRange(0,this.ytPlayer?.getDuration()??0)}duration(){return this.ytPlayer?.getDuration()??0}ended(){return this.ytPlayer?this.lastState===YT.PlayerState.ENDED:!1}volume(){return this.ytPlayer?this.ytPlayer.getVolume()/100:1}setVolume(e){this.ytPlayer?.setVolume(e*100)}muted(){return this.ytPlayer?.isMuted()??!1}setMuted(e){this.ytPlayer&&(e?this.ytPlayer.mute():this.ytPlayer.unMute(),this.setTimeout(()=>this.trigger(`volumechange`),50))}buffered(){return this.ytPlayer?.getVideoLoadedFraction?u.default.createTimeRange(0,this.ytPlayer.getVideoLoadedFraction()*this.ytPlayer.getDuration()):u.default.createTimeRange()}playbackRate(){return this.ytPlayer?.getPlaybackRate()??1}setPlaybackRate(e){this.ytPlayer?.setPlaybackRate(e)}currentSrc(){return this.source?.src??``}preload(){}load(){}reset(){}networkState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 3:return 2;default:return 1}}readyState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 5:return 1;case 3:return 2;default:return 4}}supportsFullScreen(){return c()}setSrc(t){t?.src&&(this.source=t,this.url=e.parseUrl(t.src),!this.options_.poster&&this.url.videoId&&(this.poster_=`https://img.youtube.com/vi/${this.url.videoId}/0.jpg`,this.setTimeout(()=>{this.trigger(`posterchange`),this.checkHighResPoster()},0)),this.options_.autoplay?this.isReady_?this.play():this.playOnReady=!0:this.activeVideoId!==this.url.videoId&&(this.isReady_?(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):this.cueOnReady=!0))}poster(){return f?null:this.poster_}setPoster(e){this.poster_=e}autoplay(){return this.options_.autoplay}setAutoplay(e){this.options_.autoplay=e}loop(){return this.options_.loop}setLoop(e){this.options_.loop=e}checkHighResPoster(){let e=`https://img.youtube.com/vi/${this.url.videoId}/maxresdefault.jpg`,t=new Image;t.onload=()=>{(t.naturalHeight||t.height)<=90||(this.poster_=e,this.trigger(`posterchange`))},t.src=e}enterFullscreen(){if(n()&&this.ytPlayer){this._spawnIosFullscreen();return}a(this.player_.el().parentElement)}exitFullscreen(){s()}_spawnIosFullscreen(){let e=this.ytPlayer,t=e.getCurrentTime(),{video_id:n}=e.getVideoData();e.pauseVideo(),this.player_.trigger(o);let r=document.createElement(`div`);r.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(r);let a=document.createElement(`div`);a.id=`yt-fs-${Date.now()}`,r.appendChild(a);let s=null,c=!1,l=()=>{if(c)return;c=!0,this.player_.trigger(i);let n=s?s.getCurrentTime():t;try{s?.destroy()}catch{}r.remove(),e.seekTo(n,!0),this.trigger(`timeupdate`)};s=new window.YT.Player(a.id,{videoId:n,playerVars:{playsinline:0,autoplay:1,controls:1,modestbranding:1,rel:0,start:Math.floor(t)},events:{onReady:e=>{this.player_.trigger(i),e.target.seekTo(t,!0),e.target.playVideo()},onStateChange:e=>{(e.data===window.YT.PlayerState.PAUSED||e.data===window.YT.PlayerState.ENDED)&&l()}}})}dispose(){clearInterval(this.startInterval),this.ytPlayer?(this.ytPlayer.stopVideo?.(),this.ytPlayer.destroy?.()):e.apiReadyQueue=e.apiReadyQueue.filter(e=>e!==this),this.ytPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-youtube`,`vjs-youtube-mobile`),d.prototype.dispose.call(this)}};p.isApiReady=!1,p.apiReadyQueue=[],p.isSupported=()=>!0,p.canPlayType=e=>e===`video/youtube`?`probably`:``,p.canPlaySource=({type:e,src:t})=>e===`video/youtube`?`probably`:/youtu\.be|youtube\.com/.test(t)?`maybe`:``,p.parseUrl=e=>{let t={videoId:null,listId:null},n=e.match(/^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|shorts\/|&v=)([^#&?]*).*/);n?.[2]?.length===11&&(t.videoId=n[2]);let r=e.match(/[?&]list=([^#&?]+)/);return r?.[1]&&(t.listId=r[1]),t},typeof document<`u`&&l(`https://www.youtube.com/iframe_api`).then(()=>{window.YT.ready(()=>{p.isApiReady=!0,p.apiReadyQueue.forEach(e=>e.initYTPlayer()),p.apiReadyQueue=[]})}),r(`Youtube`,p);export{p as default};
1
+ import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{T as n,a as r,c as i,l as a,n as o,u as s,w as c}from"./tech-DHDK_NLh.mjs";import{t as l}from"./loadScript-Du6JsTc2.mjs";var u=e(t(),1);const d=u.default.getTech(`Tech`),f=u.default.browser.IS_IOS||u.default.browser.IS_NATIVE_ANDROID;var p=class e extends d{constructor(t,n){super(t,n),this.setPoster(t.poster),this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-youtube`),f&&this.el_.parentNode.classList.add(`vjs-youtube-mobile`),e.isApiReady?this.initYTPlayer():e.apiReadyQueue.push(this))})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initYTPlayer(){let e=this.options_,t={controls:+!!e.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!e.muted,loop:+!!e.loop,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,...e.iv_load_policy!==void 0&&{iv_load_policy:e.iv_load_policy},...e.cc_load_policy!==void 0&&{cc_load_policy:e.cc_load_policy},...e.color!==void 0&&{color:e.color},...e.hl!==void 0&&{hl:e.hl},...e.playsinline!==void 0&&{playsinline:e.playsinline},...e.rel!==void 0&&{rel:e.rel},...e.start!==void 0&&{start:e.start},...e.end!==void 0&&{end:e.end},...e.ytControls!==void 0&&{controls:e.ytControls},...e.customVars};e.youtube&&Object.assign(t,e.youtube),this.activeVideoId=this.url?.videoId??null,this.ytPlayer=new window.YT.Player(this.options_.techId,{videoId:this.activeVideoId,playerVars:t,...e.enablePrivacyEnhancedMode&&{host:`https://www.youtube-nocookie.com`},events:{onReady:this.onPlayerReady.bind(this),onStateChange:this.onPlayerStateChange.bind(this),onPlaybackRateChange:this.onPlayerPlaybackRateChange.bind(this),onVolumeChange:this.onPlayerVolumeChange.bind(this),onError:this.onPlayerError.bind(this)}}),window.yt=this.ytPlayer}onPlayerReady(){this.ytPlayer.getAvailablePlaybackRates().length>1&&(this.featuresPlaybackRate=!0),this.playerReady_=!0,this.triggerReady(),this.playOnReady?this.play():this.cueOnReady&&(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId)}_isAdPlaying(){try{let e=this.ytPlayer?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}onPlayerStateChange(e){let t=e.data;if(t===this.lastState||this.errorNumber)return;this.lastState=t;let n=this._isAdPlaying();switch(n!==this._adWasPlaying&&(this._adWasPlaying=n,this.trigger(n?`adstart`:`adend`)),t){case-1:this.trigger(`loadstart`),this.trigger(`loadedmetadata`),this.trigger(`durationchange`),this.trigger(`ratechange`);break;case YT.PlayerState.ENDED:this.trigger(`ended`);break;case YT.PlayerState.PLAYING:this.trigger(`timeupdate`),this.trigger(`durationchange`),this.trigger(`playing`),this.trigger(`play`),this.isSeeking&&this.onSeeked();break;case YT.PlayerState.PAUSED:this.trigger(`canplay`),this.isSeeking||this.trigger(`pause`);break;case YT.PlayerState.BUFFERING:this.player_.trigger(`waiting`);break;case YT.PlayerState.CUED:this.trigger(`canplay`);break}this.startInterval&&=(clearInterval(this.startInterval),null),t===YT.PlayerState.PLAYING&&(this.startInterval=setInterval(()=>this.trigger(`timeupdate`),250))}onPlayerPlaybackRateChange(){this.trigger(`ratechange`)}onPlayerVolumeChange(){this.trigger(`volumechange`)}onPlayerError(e){this.errorNumber=e.data,this.trigger(`error`),this.setTimeout(()=>{this.errorNumber=null},0)}play(){this.url?.videoId&&(this.wasPausedBeforeSeek=!1,this.isReady_?this.activeVideoId===this.url.videoId?this.ytPlayer.playVideo():(this.loadVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):(this.trigger(`waiting`),this.playOnReady=!0))}pause(){this.ytPlayer?.pauseVideo()}paused(){return this.ytPlayer?this.lastState!==YT.PlayerState.PLAYING&&this.lastState!==YT.PlayerState.BUFFERING:!0}loadVideoById_(e){this.ytPlayer.loadVideoById({videoId:e})}cueVideoById_(e){this.ytPlayer.cueVideoById({videoId:e})}currentTime(){return this.ytPlayer?.getCurrentTime()??0}setCurrentTime(e){this.lastState===YT.PlayerState.PAUSED&&(this.timeBeforeSeek=this.currentTime()),this.isSeeking||(this.wasPausedBeforeSeek=this.paused()),this.ytPlayer.seekTo(e,!0),this.trigger(`timeupdate`),this.trigger(`seeking`),this.isSeeking=!0,this.lastState===YT.PlayerState.PAUSED&&this.timeBeforeSeek!==e&&(clearInterval(this.checkSeekedInPauseInterval),this.checkSeekedInPauseInterval=setInterval(()=>{this.lastState!==YT.PlayerState.PAUSED||!this.isSeeking?clearInterval(this.checkSeekedInPauseInterval):this.currentTime()!==this.timeBeforeSeek&&(this.trigger(`timeupdate`),this.onSeeked())},250))}onSeeked(){clearInterval(this.checkSeekedInPauseInterval),this.isSeeking=!1,this.wasPausedBeforeSeek&&this.pause(),this.trigger(`seeked`)}seeking(){return this.isSeeking}seekable(){return u.default.createTimeRange(0,this.ytPlayer?.getDuration()??0)}duration(){return this.ytPlayer?.getDuration()??0}ended(){return this.ytPlayer?this.lastState===YT.PlayerState.ENDED:!1}volume(){return this.ytPlayer?this.ytPlayer.getVolume()/100:1}setVolume(e){this.ytPlayer?.setVolume(e*100)}muted(){return this.ytPlayer?.isMuted()??!1}setMuted(e){this.ytPlayer&&(e?this.ytPlayer.mute():this.ytPlayer.unMute(),this.setTimeout(()=>this.trigger(`volumechange`),50))}buffered(){return this.ytPlayer?.getVideoLoadedFraction?u.default.createTimeRange(0,this.ytPlayer.getVideoLoadedFraction()*this.ytPlayer.getDuration()):u.default.createTimeRange()}playbackRate(){return this.ytPlayer?.getPlaybackRate()??1}setPlaybackRate(e){this.ytPlayer?.setPlaybackRate(e)}currentSrc(){return this.source?.src??``}preload(){}load(){}reset(){}networkState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 3:return 2;default:return 1}}readyState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 5:return 1;case 3:return 2;default:return 4}}supportsFullScreen(){return s()}setSrc(t){t?.src&&(this.source=t,this.url=e.parseUrl(t.src),!this.options_.poster&&this.url.videoId&&(this.poster_=`https://img.youtube.com/vi/${this.url.videoId}/0.jpg`,this.setTimeout(()=>{this.trigger(`posterchange`),this.checkHighResPoster()},0)),this.options_.autoplay?this.isReady_?this.play():this.playOnReady=!0:this.activeVideoId!==this.url.videoId&&(this.isReady_?(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):this.cueOnReady=!0))}poster(){return f?null:this.poster_}setPoster(e){this.poster_=e}autoplay(){return this.options_.autoplay}setAutoplay(e){this.options_.autoplay=e}loop(){return this.options_.loop}setLoop(e){this.options_.loop=e}checkHighResPoster(){let e=`https://img.youtube.com/vi/${this.url.videoId}/maxresdefault.jpg`,t=new Image;t.onload=()=>{(t.naturalHeight||t.height)<=90||(this.poster_=e,this.trigger(`posterchange`))},t.src=e}enterFullscreen(){if(r()&&this.ytPlayer){this._spawnIosFullscreen();return}a(this.player_.el().parentElement)}exitFullscreen(){o()}_spawnIosFullscreen(){let e=this.ytPlayer,t=e.getCurrentTime(),{video_id:r}=e.getVideoData();e.pauseVideo(),this.player_.trigger(c);let i=document.createElement(`div`);i.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(i);let a=document.createElement(`div`);a.id=`yt-fs-${Date.now()}`,i.appendChild(a);let o=null,s=!1,l=()=>{if(s)return;s=!0,this.player_.trigger(n);let r=o?o.getCurrentTime():t;try{o?.destroy()}catch{}i.remove(),e.seekTo(r,!0),this.trigger(`timeupdate`)};o=new window.YT.Player(a.id,{videoId:r,playerVars:{playsinline:0,autoplay:1,controls:1,modestbranding:1,rel:0,start:Math.floor(t)},events:{onReady:e=>{this.player_.trigger(n),e.target.seekTo(t,!0),e.target.playVideo()},onStateChange:e=>{(e.data===window.YT.PlayerState.PAUSED||e.data===window.YT.PlayerState.ENDED)&&l()}}})}dispose(){clearInterval(this.startInterval),this.ytPlayer?(this.ytPlayer.stopVideo?.(),this.ytPlayer.destroy?.()):e.apiReadyQueue=e.apiReadyQueue.filter(e=>e!==this),this.ytPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-youtube`,`vjs-youtube-mobile`),d.prototype.dispose.call(this)}};p.isApiReady=!1,p.apiReadyQueue=[],p.isSupported=()=>!0,p.canPlayType=e=>e===`video/youtube`?`probably`:``,p.canPlaySource=({type:e,src:t})=>e===`video/youtube`?`probably`:/youtu\.be|youtube\.com/.test(t)?`maybe`:``,p.parseUrl=e=>{let t={videoId:null,listId:null},n=e.match(/^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|shorts\/|&v=)([^#&?]*).*/);n?.[2]?.length===11&&(t.videoId=n[2]);let r=e.match(/[?&]list=([^#&?]+)/);return r?.[1]&&(t.listId=r[1]),t},typeof document<`u`&&l(`https://www.youtube.com/iframe_api`).then(()=>{window.YT.ready(()=>{p.isApiReady=!0,p.apiReadyQueue.forEach(e=>e.initYTPlayer()),p.apiReadyQueue=[]})}),i(`Youtube`,p);export{p as default};
@@ -1 +1 @@
1
- import{a as e,c as t,h as n,l as r,m as i,n as a,u as o}from"./tech-BOi4jf1S.mjs";import{t as s}from"./loadScript-Du6JsTc2.mjs";import c from"video.js";const l=c.getTech(`Tech`),u=c.browser.IS_IOS||c.browser.IS_NATIVE_ANDROID;var d=class t extends l{constructor(e,n){super(e,n),this.setPoster(e.poster),this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-youtube`),u&&this.el_.parentNode.classList.add(`vjs-youtube-mobile`),t.isApiReady?this.initYTPlayer():t.apiReadyQueue.push(this))})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initYTPlayer(){let e=this.options_,t={controls:+!!e.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!e.muted,loop:+!!e.loop,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,...e.iv_load_policy!==void 0&&{iv_load_policy:e.iv_load_policy},...e.cc_load_policy!==void 0&&{cc_load_policy:e.cc_load_policy},...e.color!==void 0&&{color:e.color},...e.hl!==void 0&&{hl:e.hl},...e.playsinline!==void 0&&{playsinline:e.playsinline},...e.rel!==void 0&&{rel:e.rel},...e.start!==void 0&&{start:e.start},...e.end!==void 0&&{end:e.end},...e.ytControls!==void 0&&{controls:e.ytControls},...e.customVars};e.youtube&&Object.assign(t,e.youtube),this.activeVideoId=this.url?.videoId??null,this.ytPlayer=new window.YT.Player(this.options_.techId,{videoId:this.activeVideoId,playerVars:t,...e.enablePrivacyEnhancedMode&&{host:`https://www.youtube-nocookie.com`},events:{onReady:this.onPlayerReady.bind(this),onStateChange:this.onPlayerStateChange.bind(this),onPlaybackRateChange:this.onPlayerPlaybackRateChange.bind(this),onVolumeChange:this.onPlayerVolumeChange.bind(this),onError:this.onPlayerError.bind(this)}}),window.yt=this.ytPlayer}onPlayerReady(){this.ytPlayer.getAvailablePlaybackRates().length>1&&(this.featuresPlaybackRate=!0),this.playerReady_=!0,this.triggerReady(),this.playOnReady?this.play():this.cueOnReady&&(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId)}_isAdPlaying(){try{let e=this.ytPlayer?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}onPlayerStateChange(e){let t=e.data;if(t===this.lastState||this.errorNumber)return;this.lastState=t;let n=this._isAdPlaying();switch(n!==this._adWasPlaying&&(this._adWasPlaying=n,this.trigger(n?`adstart`:`adend`)),t){case-1:this.trigger(`loadstart`),this.trigger(`loadedmetadata`),this.trigger(`durationchange`),this.trigger(`ratechange`);break;case YT.PlayerState.ENDED:this.trigger(`ended`);break;case YT.PlayerState.PLAYING:this.trigger(`timeupdate`),this.trigger(`durationchange`),this.trigger(`playing`),this.trigger(`play`),this.isSeeking&&this.onSeeked();break;case YT.PlayerState.PAUSED:this.trigger(`canplay`),this.isSeeking||this.trigger(`pause`);break;case YT.PlayerState.BUFFERING:this.player_.trigger(`waiting`);break;case YT.PlayerState.CUED:this.trigger(`canplay`);break}this.startInterval&&=(clearInterval(this.startInterval),null),t===YT.PlayerState.PLAYING&&(this.startInterval=setInterval(()=>this.trigger(`timeupdate`),250))}onPlayerPlaybackRateChange(){this.trigger(`ratechange`)}onPlayerVolumeChange(){this.trigger(`volumechange`)}onPlayerError(e){this.errorNumber=e.data,this.trigger(`error`),this.setTimeout(()=>{this.errorNumber=null},0)}play(){this.url?.videoId&&(this.wasPausedBeforeSeek=!1,this.isReady_?this.activeVideoId===this.url.videoId?this.ytPlayer.playVideo():(this.loadVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):(this.trigger(`waiting`),this.playOnReady=!0))}pause(){this.ytPlayer?.pauseVideo()}paused(){return this.ytPlayer?this.lastState!==YT.PlayerState.PLAYING&&this.lastState!==YT.PlayerState.BUFFERING:!0}loadVideoById_(e){this.ytPlayer.loadVideoById({videoId:e})}cueVideoById_(e){this.ytPlayer.cueVideoById({videoId:e})}currentTime(){return this.ytPlayer?.getCurrentTime()??0}setCurrentTime(e){this.lastState===YT.PlayerState.PAUSED&&(this.timeBeforeSeek=this.currentTime()),this.isSeeking||(this.wasPausedBeforeSeek=this.paused()),this.ytPlayer.seekTo(e,!0),this.trigger(`timeupdate`),this.trigger(`seeking`),this.isSeeking=!0,this.lastState===YT.PlayerState.PAUSED&&this.timeBeforeSeek!==e&&(clearInterval(this.checkSeekedInPauseInterval),this.checkSeekedInPauseInterval=setInterval(()=>{this.lastState!==YT.PlayerState.PAUSED||!this.isSeeking?clearInterval(this.checkSeekedInPauseInterval):this.currentTime()!==this.timeBeforeSeek&&(this.trigger(`timeupdate`),this.onSeeked())},250))}onSeeked(){clearInterval(this.checkSeekedInPauseInterval),this.isSeeking=!1,this.wasPausedBeforeSeek&&this.pause(),this.trigger(`seeked`)}seeking(){return this.isSeeking}seekable(){return c.createTimeRange(0,this.ytPlayer?.getDuration()??0)}duration(){return this.ytPlayer?.getDuration()??0}ended(){return this.ytPlayer?this.lastState===YT.PlayerState.ENDED:!1}volume(){return this.ytPlayer?this.ytPlayer.getVolume()/100:1}setVolume(e){this.ytPlayer?.setVolume(e*100)}muted(){return this.ytPlayer?.isMuted()??!1}setMuted(e){this.ytPlayer&&(e?this.ytPlayer.mute():this.ytPlayer.unMute(),this.setTimeout(()=>this.trigger(`volumechange`),50))}buffered(){return this.ytPlayer?.getVideoLoadedFraction?c.createTimeRange(0,this.ytPlayer.getVideoLoadedFraction()*this.ytPlayer.getDuration()):c.createTimeRange()}playbackRate(){return this.ytPlayer?.getPlaybackRate()??1}setPlaybackRate(e){this.ytPlayer?.setPlaybackRate(e)}currentSrc(){return this.source?.src??``}preload(){}load(){}reset(){}networkState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 3:return 2;default:return 1}}readyState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 5:return 1;case 3:return 2;default:return 4}}supportsFullScreen(){return o()}setSrc(e){e?.src&&(this.source=e,this.url=t.parseUrl(e.src),!this.options_.poster&&this.url.videoId&&(this.poster_=`https://img.youtube.com/vi/${this.url.videoId}/0.jpg`,this.setTimeout(()=>{this.trigger(`posterchange`),this.checkHighResPoster()},0)),this.options_.autoplay?this.isReady_?this.play():this.playOnReady=!0:this.activeVideoId!==this.url.videoId&&(this.isReady_?(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):this.cueOnReady=!0))}poster(){return u?null:this.poster_}setPoster(e){this.poster_=e}autoplay(){return this.options_.autoplay}setAutoplay(e){this.options_.autoplay=e}loop(){return this.options_.loop}setLoop(e){this.options_.loop=e}checkHighResPoster(){let e=`https://img.youtube.com/vi/${this.url.videoId}/maxresdefault.jpg`,t=new Image;t.onload=()=>{(t.naturalHeight||t.height)<=90||(this.poster_=e,this.trigger(`posterchange`))},t.src=e}enterFullscreen(){if(e()&&this.ytPlayer){this._spawnIosFullscreen();return}r(this.player_.el().parentElement)}exitFullscreen(){a()}_spawnIosFullscreen(){let e=this.ytPlayer,t=e.getCurrentTime(),{video_id:r}=e.getVideoData();e.pauseVideo(),this.player_.trigger(i);let a=document.createElement(`div`);a.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(a);let o=document.createElement(`div`);o.id=`yt-fs-${Date.now()}`,a.appendChild(o);let s=null,c=!1,l=()=>{if(c)return;c=!0,this.player_.trigger(n);let r=s?s.getCurrentTime():t;try{s?.destroy()}catch{}a.remove(),e.seekTo(r,!0),this.trigger(`timeupdate`)};s=new window.YT.Player(o.id,{videoId:r,playerVars:{playsinline:0,autoplay:1,controls:1,modestbranding:1,rel:0,start:Math.floor(t)},events:{onReady:e=>{this.player_.trigger(n),e.target.seekTo(t,!0),e.target.playVideo()},onStateChange:e=>{(e.data===window.YT.PlayerState.PAUSED||e.data===window.YT.PlayerState.ENDED)&&l()}}})}dispose(){clearInterval(this.startInterval),this.ytPlayer?(this.ytPlayer.stopVideo?.(),this.ytPlayer.destroy?.()):t.apiReadyQueue=t.apiReadyQueue.filter(e=>e!==this),this.ytPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-youtube`,`vjs-youtube-mobile`),l.prototype.dispose.call(this)}};d.isApiReady=!1,d.apiReadyQueue=[],d.isSupported=()=>!0,d.canPlayType=e=>e===`video/youtube`?`probably`:``,d.canPlaySource=({type:e,src:t})=>e===`video/youtube`?`probably`:/youtu\.be|youtube\.com/.test(t)?`maybe`:``,d.parseUrl=e=>{let t={videoId:null,listId:null},n=e.match(/^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|shorts\/|&v=)([^#&?]*).*/);n?.[2]?.length===11&&(t.videoId=n[2]);let r=e.match(/[?&]list=([^#&?]+)/);return r?.[1]&&(t.listId=r[1]),t},typeof document<`u`&&s(`https://www.youtube.com/iframe_api`).then(()=>{window.YT.ready(()=>{d.isApiReady=!0,d.apiReadyQueue.forEach(e=>e.initYTPlayer()),d.apiReadyQueue=[]})}),t(`Youtube`,d);export{d as default};
1
+ import{T as e,a as t,c as n,l as r,n as i,u as a,w as o}from"./tech-BNI0cffg.mjs";import{t as s}from"./loadScript-Du6JsTc2.mjs";import c from"video.js";const l=c.getTech(`Tech`),u=c.browser.IS_IOS||c.browser.IS_NATIVE_ANDROID;var d=class n extends l{constructor(e,t){super(e,t),this.setPoster(e.poster),this.setSrc(this.options_.source),this.setTimeout(()=>{this.el_&&(this.el_.parentNode.classList.add(`vjs-youtube`),u&&this.el_.parentNode.classList.add(`vjs-youtube-mobile`),n.isApiReady?this.initYTPlayer():n.apiReadyQueue.push(this))})}createEl(){let e=document.createElement(`div`);e.setAttribute(`id`,this.options_.techId),e.setAttribute(`style`,`width:100%;height:100%;top:0;left:0;position:absolute`),e.setAttribute(`class`,`vjs-tech`);let t=document.createElement(`div`);return t.appendChild(e),t}initYTPlayer(){let e=this.options_,t={controls:+!!e.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!e.muted,loop:+!!e.loop,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,...e.iv_load_policy!==void 0&&{iv_load_policy:e.iv_load_policy},...e.cc_load_policy!==void 0&&{cc_load_policy:e.cc_load_policy},...e.color!==void 0&&{color:e.color},...e.hl!==void 0&&{hl:e.hl},...e.playsinline!==void 0&&{playsinline:e.playsinline},...e.rel!==void 0&&{rel:e.rel},...e.start!==void 0&&{start:e.start},...e.end!==void 0&&{end:e.end},...e.ytControls!==void 0&&{controls:e.ytControls},...e.customVars};e.youtube&&Object.assign(t,e.youtube),this.activeVideoId=this.url?.videoId??null,this.ytPlayer=new window.YT.Player(this.options_.techId,{videoId:this.activeVideoId,playerVars:t,...e.enablePrivacyEnhancedMode&&{host:`https://www.youtube-nocookie.com`},events:{onReady:this.onPlayerReady.bind(this),onStateChange:this.onPlayerStateChange.bind(this),onPlaybackRateChange:this.onPlayerPlaybackRateChange.bind(this),onVolumeChange:this.onPlayerVolumeChange.bind(this),onError:this.onPlayerError.bind(this)}}),window.yt=this.ytPlayer}onPlayerReady(){this.ytPlayer.getAvailablePlaybackRates().length>1&&(this.featuresPlaybackRate=!0),this.playerReady_=!0,this.triggerReady(),this.playOnReady?this.play():this.cueOnReady&&(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId)}_isAdPlaying(){try{let e=this.ytPlayer?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}onPlayerStateChange(e){let t=e.data;if(t===this.lastState||this.errorNumber)return;this.lastState=t;let n=this._isAdPlaying();switch(n!==this._adWasPlaying&&(this._adWasPlaying=n,this.trigger(n?`adstart`:`adend`)),t){case-1:this.trigger(`loadstart`),this.trigger(`loadedmetadata`),this.trigger(`durationchange`),this.trigger(`ratechange`);break;case YT.PlayerState.ENDED:this.trigger(`ended`);break;case YT.PlayerState.PLAYING:this.trigger(`timeupdate`),this.trigger(`durationchange`),this.trigger(`playing`),this.trigger(`play`),this.isSeeking&&this.onSeeked();break;case YT.PlayerState.PAUSED:this.trigger(`canplay`),this.isSeeking||this.trigger(`pause`);break;case YT.PlayerState.BUFFERING:this.player_.trigger(`waiting`);break;case YT.PlayerState.CUED:this.trigger(`canplay`);break}this.startInterval&&=(clearInterval(this.startInterval),null),t===YT.PlayerState.PLAYING&&(this.startInterval=setInterval(()=>this.trigger(`timeupdate`),250))}onPlayerPlaybackRateChange(){this.trigger(`ratechange`)}onPlayerVolumeChange(){this.trigger(`volumechange`)}onPlayerError(e){this.errorNumber=e.data,this.trigger(`error`),this.setTimeout(()=>{this.errorNumber=null},0)}play(){this.url?.videoId&&(this.wasPausedBeforeSeek=!1,this.isReady_?this.activeVideoId===this.url.videoId?this.ytPlayer.playVideo():(this.loadVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):(this.trigger(`waiting`),this.playOnReady=!0))}pause(){this.ytPlayer?.pauseVideo()}paused(){return this.ytPlayer?this.lastState!==YT.PlayerState.PLAYING&&this.lastState!==YT.PlayerState.BUFFERING:!0}loadVideoById_(e){this.ytPlayer.loadVideoById({videoId:e})}cueVideoById_(e){this.ytPlayer.cueVideoById({videoId:e})}currentTime(){return this.ytPlayer?.getCurrentTime()??0}setCurrentTime(e){this.lastState===YT.PlayerState.PAUSED&&(this.timeBeforeSeek=this.currentTime()),this.isSeeking||(this.wasPausedBeforeSeek=this.paused()),this.ytPlayer.seekTo(e,!0),this.trigger(`timeupdate`),this.trigger(`seeking`),this.isSeeking=!0,this.lastState===YT.PlayerState.PAUSED&&this.timeBeforeSeek!==e&&(clearInterval(this.checkSeekedInPauseInterval),this.checkSeekedInPauseInterval=setInterval(()=>{this.lastState!==YT.PlayerState.PAUSED||!this.isSeeking?clearInterval(this.checkSeekedInPauseInterval):this.currentTime()!==this.timeBeforeSeek&&(this.trigger(`timeupdate`),this.onSeeked())},250))}onSeeked(){clearInterval(this.checkSeekedInPauseInterval),this.isSeeking=!1,this.wasPausedBeforeSeek&&this.pause(),this.trigger(`seeked`)}seeking(){return this.isSeeking}seekable(){return c.createTimeRange(0,this.ytPlayer?.getDuration()??0)}duration(){return this.ytPlayer?.getDuration()??0}ended(){return this.ytPlayer?this.lastState===YT.PlayerState.ENDED:!1}volume(){return this.ytPlayer?this.ytPlayer.getVolume()/100:1}setVolume(e){this.ytPlayer?.setVolume(e*100)}muted(){return this.ytPlayer?.isMuted()??!1}setMuted(e){this.ytPlayer&&(e?this.ytPlayer.mute():this.ytPlayer.unMute(),this.setTimeout(()=>this.trigger(`volumechange`),50))}buffered(){return this.ytPlayer?.getVideoLoadedFraction?c.createTimeRange(0,this.ytPlayer.getVideoLoadedFraction()*this.ytPlayer.getDuration()):c.createTimeRange()}playbackRate(){return this.ytPlayer?.getPlaybackRate()??1}setPlaybackRate(e){this.ytPlayer?.setPlaybackRate(e)}currentSrc(){return this.source?.src??``}preload(){}load(){}reset(){}networkState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 3:return 2;default:return 1}}readyState(){if(!this.ytPlayer)return 0;switch(this.ytPlayer.getPlayerState()){case-1:return 0;case 5:return 1;case 3:return 2;default:return 4}}supportsFullScreen(){return a()}setSrc(e){e?.src&&(this.source=e,this.url=n.parseUrl(e.src),!this.options_.poster&&this.url.videoId&&(this.poster_=`https://img.youtube.com/vi/${this.url.videoId}/0.jpg`,this.setTimeout(()=>{this.trigger(`posterchange`),this.checkHighResPoster()},0)),this.options_.autoplay?this.isReady_?this.play():this.playOnReady=!0:this.activeVideoId!==this.url.videoId&&(this.isReady_?(this.cueVideoById_(this.url.videoId),this.activeVideoId=this.url.videoId):this.cueOnReady=!0))}poster(){return u?null:this.poster_}setPoster(e){this.poster_=e}autoplay(){return this.options_.autoplay}setAutoplay(e){this.options_.autoplay=e}loop(){return this.options_.loop}setLoop(e){this.options_.loop=e}checkHighResPoster(){let e=`https://img.youtube.com/vi/${this.url.videoId}/maxresdefault.jpg`,t=new Image;t.onload=()=>{(t.naturalHeight||t.height)<=90||(this.poster_=e,this.trigger(`posterchange`))},t.src=e}enterFullscreen(){if(t()&&this.ytPlayer){this._spawnIosFullscreen();return}r(this.player_.el().parentElement)}exitFullscreen(){i()}_spawnIosFullscreen(){let t=this.ytPlayer,n=t.getCurrentTime(),{video_id:r}=t.getVideoData();t.pauseVideo(),this.player_.trigger(o);let i=document.createElement(`div`);i.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(i);let a=document.createElement(`div`);a.id=`yt-fs-${Date.now()}`,i.appendChild(a);let s=null,c=!1,l=()=>{if(c)return;c=!0,this.player_.trigger(e);let r=s?s.getCurrentTime():n;try{s?.destroy()}catch{}i.remove(),t.seekTo(r,!0),this.trigger(`timeupdate`)};s=new window.YT.Player(a.id,{videoId:r,playerVars:{playsinline:0,autoplay:1,controls:1,modestbranding:1,rel:0,start:Math.floor(n)},events:{onReady:t=>{this.player_.trigger(e),t.target.seekTo(n,!0),t.target.playVideo()},onStateChange:e=>{(e.data===window.YT.PlayerState.PAUSED||e.data===window.YT.PlayerState.ENDED)&&l()}}})}dispose(){clearInterval(this.startInterval),this.ytPlayer?(this.ytPlayer.stopVideo?.(),this.ytPlayer.destroy?.()):n.apiReadyQueue=n.apiReadyQueue.filter(e=>e!==this),this.ytPlayer=null,this.el_?.parentNode?.classList.remove(`vjs-youtube`,`vjs-youtube-mobile`),l.prototype.dispose.call(this)}};d.isApiReady=!1,d.apiReadyQueue=[],d.isSupported=()=>!0,d.canPlayType=e=>e===`video/youtube`?`probably`:``,d.canPlaySource=({type:e,src:t})=>e===`video/youtube`?`probably`:/youtu\.be|youtube\.com/.test(t)?`maybe`:``,d.parseUrl=e=>{let t={videoId:null,listId:null},n=e.match(/^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|shorts\/|&v=)([^#&?]*).*/);n?.[2]?.length===11&&(t.videoId=n[2]);let r=e.match(/[?&]list=([^#&?]+)/);return r?.[1]&&(t.listId=r[1]),t},typeof document<`u`&&s(`https://www.youtube.com/iframe_api`).then(()=>{window.YT.ready(()=>{d.isApiReady=!0,d.apiReadyQueue.forEach(e=>e.initYTPlayer()),d.apiReadyQueue=[]})}),n(`Youtube`,d);export{d as default};
@@ -28,13 +28,11 @@ interface PlayerProps {
28
28
  }
29
29
  //#endregion
30
30
  //#region src/element/index.d.ts
31
- declare const VideoPlayerElement: import("vue").VueElementConstructor<PlayerProps & {
32
- action?: PlayerAction | null;
31
+ declare const VideoPlayerElement: import("vue").VueElementConstructor<PlayerProps>;
32
+ declare const VideoStageElement: import("vue").VueElementConstructor<{
33
+ pinPosition?: "bottom-right" | "bottom-left" | "top-right" | "top-left" | "full-width";
33
34
  }>;
34
- declare const VideoStageElement: import("vue").VueElementConstructor<{}>;
35
35
  declare const VideoPlaceholderElement: import("vue").VueElementConstructor<PlayerProps>;
36
- declare const VideoItemElement: import("vue").VueElementConstructor<PlayerProps & {
37
- action?: PlayerAction | null;
38
- }>;
36
+ declare const VideoItemElement: import("vue").VueElementConstructor<PlayerProps>;
39
37
  //#endregion
40
38
  export { VideoItemElement, VideoPlaceholderElement, VideoPlayerElement, VideoStageElement };
package/dist/element.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,t}from"./chunks/video.cjs-gZWrkL0e.mjs";import{_ as n,d as r,f as i,g as a,h as o,i as s,m as c,o as l,p as u,r as d,v as f}from"./chunks/tech-DQUZqNr6.mjs";import{Fragment as p,Transition as m,computed as h,createBlock as g,createCommentVNode as _,createElementBlock as v,createElementVNode as y,createStaticVNode as b,createVNode as x,defineComponent as S,defineCustomElement as C,inject as w,mergeProps as T,nextTick as E,normalizeClass as D,normalizeProps as O,normalizeStyle as k,onBeforeUnmount as A,onMounted as j,openBlock as M,provide as N,reactive as P,ref as F,toDisplayString as I,toRef as L,unref as R,watch as z,withCtx as B,withModifiers as V}from"vue";import ee from"video.js/dist/video-js.css?inline";var te=e(t(),1);const H={},ne=[{test:e=>/youtu\.be|youtube\.com/.test(e),key:`youtube`,tech:`Youtube`,type:`video/youtube`,load:()=>import(`./chunks/youtube-PyDUsbQd.mjs`)},{test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),key:`vimeo`,tech:`Vimeo`,type:`video/vimeo`,load:()=>import(`./chunks/vimeo-CPN3CLZM.mjs`)},{test:e=>/dailymotion\.com|dai\.ly/.test(e),key:`dailymotion`,tech:`Dailymotion`,type:`video/dailymotion`,load:()=>import(`./chunks/dailymotion-CxgmFCdN.mjs`)},{test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),key:`jwplayer`,tech:null,type:`video/jwplayer`,load:()=>import(`./chunks/jwplayer-Bk8f_cfb.mjs`)},{test:e=>e.startsWith(`brightcove://`),key:`brightcove`,tech:null,type:`video/brightcove`,load:()=>import(`./chunks/brightcove-DXok9R0m.mjs`)}];async function re(e){let t=ne.find(t=>t.test(e));if(!t)return{tech:null,type:null,adTagUrl:null};H[t.key]||(H[t.key]=t.load());let n=null,{prefetchConfig:r}=await H[t.key];return r&&(n=(await r(e).catch(()=>null))?.adTagUrl??null),{tech:t.tech,type:t.type,adTagUrl:n}}function ie(e){return!s(e)}function ae(){return window.google?.ima?Promise.resolve():new Promise((e,t)=>{let n=document.createElement(`script`);n.src=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,n.onload=e,n.onerror=()=>t(Error(`Failed to load Google IMA SDK`)),document.head.appendChild(n)})}async function oe(t,n){return!n||!ie(t)?!1:(await ae(),await import(`./chunks/videojs.ads-jA_s2l9Y.mjs`).then(t=>e(t.default,1)),await import(`./chunks/videojs.ima-Ccon1y6f.mjs`).then(t=>e(t.default,1)),!0)}function se(e,t,n={}){e.ima({adTagUrl:t,showControlsForJSAds:!1,...n})}const U=new Set;function ce(e){return U.add(e),()=>U.delete(e)}function le(e){U.forEach(t=>{if(t!==e)try{t()}catch{}})}function ue(e,t){let n=F(!1),r=F(!1);function i(){let e=document;n.value=!!(document.fullscreenElement||e.webkitFullscreenElement)}function a(){let n=t();if(typeof n?.enterFullscreen==`function`){n.enterFullscreen();return}let r=n?.el();if(typeof r?.webkitEnterFullscreen==`function`){r.webkitEnterFullscreen();return}e()?.requestFullscreen()}function s(){let n=t();if(typeof n?.exitFullscreen==`function`){n.exitFullscreen();return}e()?.exitFullscreen()}function l(){if(e()){if(n.value){s();return}a()}}function u(e){e.on(`fullscreenchange`,()=>{n.value=e.isFullscreen()??!1}),e.on(c,()=>{r.value=!0}),e.on(o,()=>{r.value=!1})}return j(()=>{document.addEventListener(`fullscreenchange`,i),document.addEventListener(`webkitfullscreenchange`,i)}),A(()=>{document.removeEventListener(`fullscreenchange`,i),document.removeEventListener(`webkitfullscreenchange`,i)}),{isFullscreen:n,isFullscreenPending:r,toggleFullscreen:l,attachPlayerEvents:u}}function de(){let e=F(!1),t=null;function n(){clearTimeout(t??void 0),e.value=!1}function r(r){r.on(`waiting`,()=>{clearTimeout(t??void 0),t=setTimeout(()=>{e.value=!0},500)}),r.on(`playing`,n),r.on(`canplay`,n)}return A(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}const fe=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]];function pe(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of fe)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function W(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function me(e){localStorage.setItem(r,JSON.stringify(e))}function he(e,t){if(t<5)return;let n=W().filter(t=>t.url!==e);n.unshift({url:e,time:t}),me(n.slice(0,5))}function ge(e){return W().find(t=>t.url===e)?.time??null}function _e(e){me(W().filter(t=>t.url!==e))}function ve(e,t){let n=!1;function r(t){if(n)return;let r=ge(e);r&&t.currentTime(r),n=!0}function i(t){t&&he(e,t.currentTime()??0)}function a(){_e(e)}function o(){document.visibilityState===`hidden`&&i(t())}return j(()=>document.addEventListener(`visibilitychange`,o)),A(()=>{i(t()),document.removeEventListener(`visibilitychange`,o)}),{restoreOnce:r,save:i,clear:a}}function ye(e,t,n){let r=null;j(()=>{let i=e.value?.closest(`.player__shell`);i&&(r=new IntersectionObserver(([e])=>{let r=t();!e.isIntersecting&&r&&!r.paused()&&!n.value&&r.pause()},{threshold:.1}),r.observe(i))}),A(()=>r?.disconnect())}function be(e,t,n,r,i){function a(){let n=e();if(!(!n||!t.value)){if(n.paused()){n.play();return}n.pause()}}function o(t){e()?.currentTime(n.value*(t/100))}function s(){let t=e();t?.muted(!t.muted())}function c(t){let n=e();n&&(n.volume(t),n.muted(t===0))}function l(){r.value=!r.value}function u(t){let n=e();n&&(n.playbackRate(t),i.value=t)}return{togglePlay:a,seek:o,toggleMute:s,setVolume:c,toggleLoop:l,setPlaybackRate:u}}function xe(e,t){let{isPlaying:n,hasEnded:r,isReady:a,isAdPlaying:o,current:s,total:c,buffered:l,vol:d,isMuted:f,isLooping:p,playbackRate:m,supportsPlaybackRate:h,hasStarted:g,isError:_,errorMessage:v}=e,{getTech:y,fire:b,pauseThisPlayer:x,positionMemory:S,quartiles:C,buffering:w,fullscreen:T}=t;function E(e){e.ready(()=>{a.value=!0,h.value=!!y()?.featuresPlaybackRate});let t=()=>{let t=e.duration();t&&t>0&&isFinite(t)&&(c.value=t)};e.on([`adstart`,u],()=>{le(x),o.value=!0,b(`adstart`)}),e.on([`adend`,i],()=>{o.value=!1,b(`adend`)}),e.on(`play`,()=>{le(x),g.value=!0,n.value=!0,r.value=!1,S.restoreOnce(e),b(`play`)}),e.on(`pause`,()=>{n.value=!1,S.save(e),b(`pause`)}),e.on(`ended`,()=>{if(n.value=!1,C.reset(),w.reset(),p.value){e.currentTime(0),e.play();return}c.value&&(s.value=c.value),r.value=!0,S.clear(),b(`ended`)}),e.on(`seeked`,()=>{b(`seeked`)}),e.on(`error`,()=>{let t=e.error();v.value=t?.message||`This video could not be played.`,_.value=!0,a.value=!0,b(`error`,{error:t})}),e.on(`timeupdate`,()=>{r.value||(s.value=e.currentTime()??0,c.value||t(),C.checkQuartiles())}),e.on(`durationchange`,t),e.on(`progress`,()=>{let t=e.duration();l.value=t?e.bufferedEnd()/t*100:0}),e.on(`volumechange`,()=>{let t=e.muted();d.value=e.volume()??1,f.value=t??!1,g.value&&b(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;m.value=t,g.value&&b(`ratechange`,{playbackRate:t})}),w.attachPlayerEvents(e),T.attachPlayerEvents(e)}return{attachPlayerEvents:E}}function Se(e,t,n){let r=null,i=null,a=null,o=F(!1),s=F(!1),c=F(!1),l=F(!1),u=F(0),f=F(0),p=F(0),m=F(1),g=F(t.muted??t.autoplay??!1),_=F(!1),v=F(t.playbackRate??1),y=F(!1),b=F(!1),x=F(!1),S=F(``),C=F(!1),w=h(()=>f.value?u.value/f.value*100:0),T=h(()=>Math.max(p.value,w.value)),E=()=>r,D=()=>r?.tech({IWillNotUseThisInPlugins:!0}),O=ue(E,D),k=de(),M=ve(t.videoUrl,E);function N(e,r={}){n(`state-change`,{type:e,currentTime:u.value,duration:f.value,src:t.videoUrl,...r,payload:t.payload})}let P=pe(u,f,N);function I(){!r||!a||(x.value=!1,S.value=``,r.src(a))}function L(){r?.pause()}let R=be(E,c,f,_,v),{attachPlayerEvents:B}=xe({isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,current:u,total:f,buffered:p,vol:m,isMuted:g,isLooping:_,playbackRate:v,supportsPlaybackRate:y,hasStarted:b,isError:x,errorMessage:S},{getTech:D,fire:N,pauseThisPlayer:L,positionMemory:M,quartiles:P,buffering:k,fullscreen:O});return z(()=>t.muted,e=>{!r||e===void 0||r.muted(e)}),z(()=>t.playbackRate,e=>{!r||e===void 0||r.playbackRate(e)}),ye(e,E,O.isFullscreen),j(async()=>{let{tech:n,type:o,adTagUrl:s}=await re(t.videoUrl),c=n?[n,`Html5`]:[`Html5`],l=t.adTagUrl||s||``,u=await oe(n??`Html5`,l);if(!e.value)return;let d={src:t.videoUrl,...o&&{type:o}};a=d,C.value=!!(t.nativeUi&&!ie(n??``)),r=(0,te.default)(e.value,{techOrder:c,controls:!1,fluid:!0,aspectRatio:t.aspectRatio??`16:9`,poster:t.poster||``,playsinline:!0,autoplay:t.autoplay,muted:t.muted??t.autoplay,playbackRate:v.value,adTagUrl:l,youtube:{nativeUi:C.value},vimeo:{nativeUi:C.value},dailymotion:{nativeUi:C.value},...!u&&{sources:[d]},...t.techOptions}),u&&(se(r,l,t.imaOptions??{}),r.src(d)),i=ce(L),B(r)}),A(()=>{i?.(),r?.dispose(),r=null}),{isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,isBuffering:k.isBuffering,current:u,total:f,vol:m,isMuted:g,isLooping:_,playbackRate:v,hasStarted:b,isError:x,errorMessage:S,progress:w,bufferedDisplay:T,isFullscreen:O.isFullscreen,isFullscreenPending:O.isFullscreenPending,fmt:d,fire:N,retry:I,togglePlay:R.togglePlay,seek:R.seek,toggleMute:R.toggleMute,setVolume:R.setVolume,toggleFullscreen:O.toggleFullscreen,toggleLoop:R.toggleLoop,setPlaybackRate:R.setPlaybackRate,supportsPlaybackRate:y,nativeUi:C}}function Ce(e,t){let n=F(!0),r=F(!1),i=null,a=0;function o(e=400){a=Date.now()+e}function s(e=3500){clearTimeout(i??void 0),i=setTimeout(()=>{n.value=!1,t?.value||(r.value=!1)},e)}function c(){clearTimeout(i??void 0)}function l(){r.value=!0,n.value=!0,s()}function u(){r.value=!1,e.value&&s()}function d(){e.value&&s()}function f(){n.value=!0,e.value&&s()}function p(){n.value=!0,s()}function m(){Date.now()<a||e.value&&s(600)}return z(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),A(()=>clearTimeout(i??void 0)),{showHUD:n,isOpen:r,scheduleHide:s,pauseHide:c,onVideoTap:f,onMouseMove:p,onMouseLeave:m,openControls:l,closeControls:u,keepOpen:d,suppressMouseLeave:o}}function we(e,t,n,r,i){let a=typeof document<`u`&&!!document.startViewTransition,o=h(()=>t.value&&a);z(()=>o.value&&!n.isFullscreen?r.isOpen:!1,t=>{let r=()=>{e.value=t,n.fire(t?`focusstart`:`focusend`)};if(!i.value||n.isFullscreen){r();return}i.value.style.viewTransitionName=`player-focus`,document.startViewTransition(async()=>{r(),await E()}).finished.finally(()=>{i.value&&(i.value.style.viewTransitionName=``)})}),z(()=>n.isFullscreen,()=>{r.isOpen&&r.closeControls()});function s(t){t.key===`Escape`&&e.value&&r.closeControls()}return j(()=>document.addEventListener(`keydown`,s)),A(()=>document.removeEventListener(`keydown`,s)),{focusModeEnabled:o}}function Te(e,t){let n=F({width:0,height:0});function r(){n.value={width:window.innerWidth,height:window.innerHeight}}return j(()=>{r(),window.addEventListener(`resize`,r)}),A(()=>window.removeEventListener(`resize`,r)),h(()=>{if(!e.value)return{};let[r,i]=t.value.split(`:`).map(Number),a=Math.min(720,n.value.width-32),o=Math.min(n.value.height*.6,n.value.height-32-140),s=a,c=s*i/r;return c>o&&(c=o,s=c*r/i),{width:`${s}px`,height:`${c}px`}})}const G=Symbol(`player`),K=Symbol(`hud`),q=Symbol(`action`);function Ee(e,t){let n=h(()=>e?.value??null),r=h(()=>!!n.value&&typeof n.value==`object`),i=h(()=>r.value?n.value:null),a=h(()=>n.value===`mute`?t.isMuted?`Unmute`:`Mute`:n.value===`loop`?t.isLooping?`Disable loop`:`Loop`:``);function o(){n.value===`mute`?t.toggleMute():n.value===`loop`&&t.toggleLoop()}return{currentAction:n,isCustom:r,customAction:i,builtinLabel:a,onBuiltinClick:o}}var J=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const De={},Oe={viewBox:`0 0 24 24`,fill:`currentColor`};function ke(e,t){return M(),v(`svg`,Oe,[...t[0]||=[y(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var Ae=J(De,[[`render`,ke]]);const je={},Me={viewBox:`0 0 24 24`,fill:`currentColor`};function Ne(e,t){return M(),v(`svg`,Me,[...t[0]||=[y(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var Pe=J(je,[[`render`,Ne]]);const Fe={},Ie={viewBox:`0 0 24 24`,fill:`currentColor`};function Le(e,t){return M(),v(`svg`,Ie,[...t[0]||=[y(`path`,{d:`M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z`},null,-1)]])}var Re=J(Fe,[[`render`,Le]]);const ze=[`aria-label`];var Y=J(S({__name:`PlayPauseButton`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,default:!1},size:{type:String,default:`sm`}},emits:[`toggle-play`],setup(e){let t=e,n=h(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,r)=>(M(),v(`button`,{class:D([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":n.value,onClick:r[0]||=V(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(M(),g(Pe,{key:0})):e.hasEnded?(M(),g(Re,{key:1})):(M(),g(Ae,{key:2}))],10,ze))}}),[[`__scopeId`,`data-v-85902525`]]),X=J(S({__name:`Spinner`,props:{size:{type:Number,default:14},borderWidth:{type:Number,default:2}},setup(e){return(t,n)=>(M(),v(`div`,{class:`spinner`,style:k({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Be={},Ve={viewBox:`0 0 24 24`,fill:`currentColor`};function He(e,t){return M(),v(`svg`,Ve,[...t[0]||=[y(`path`,{d:`M3 9v6h4l5 5V4L7 9H3zm13.5 3A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02z`},null,-1)]])}var Z=J(Be,[[`render`,He]]);const Ue={},We={viewBox:`0 0 24 24`,fill:`currentColor`};function Ge(e,t){return M(),v(`svg`,We,[...t[0]||=[y(`path`,{d:`M16.5 12A4.5 4.5 0 0 0 14 7.97v2.21l2.45 2.45c.03-.2.05-.41.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51A8.796 8.796 0 0 0 21 12c0-4.28-2.99-7.86-7-8.77v2.06c2.89.86 5 3.54 5 6.71zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.18v2.06A8.99 8.99 0 0 0 17.73 18L19 19.27 20.27 18 5.27 3 4.27 3zM12 4L9.91 6.09 12 8.18V4z`},null,-1)]])}var Q=J(Ue,[[`render`,Ge]]);const Ke={},qe={viewBox:`0 0 24 24`,fill:`currentColor`};function Je(e,t){return M(),v(`svg`,qe,[...t[0]||=[y(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var Ye=J(Ke,[[`render`,Je]]);const Xe={},Ze={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Qe(e,t){return M(),v(`svg`,Ze,[...t[0]||=[b(`<line x1="4" y1="6" x2="20" y2="6"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="18" x2="20" y2="18"></line><circle cx="9" cy="6" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="15" cy="12" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="9" cy="18" r="2.5" fill="currentColor" stroke="none"></circle>`,6)]])}var $e=J(Xe,[[`render`,Qe]]);const et={class:`hud`},tt=[`aria-label`],nt=[`aria-label`],rt=[`aria-label`,`innerHTML`],it={key:3,class:`hud__spacer`},at={class:`hud__play-wrap`},ot={key:5,class:`hud__spacer`};var st=J(S({__name:`HudButtons`,props:{isFocused:{type:Boolean,default:!1}},setup(e){let t=w(G),n=w(K),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,onBuiltinClick:s}=Ee(w(q),t);return(c,l)=>(M(),v(`div`,et,[!e.isFocused&&R(r)===`mute`?(M(),v(`button`,{key:0,class:D([`hud__btn`,{"hud__btn--active":R(t).isMuted}]),"aria-label":R(o),onClick:l[0]||=V((...e)=>R(s)&&R(s)(...e),[`stop`])},[!R(t).isMuted&&R(t).vol>0?(M(),g(Z,{key:0})):(M(),g(Q,{key:1}))],10,tt)):!e.isFocused&&R(r)===`loop`?(M(),v(`button`,{key:1,class:D([`hud__btn`,{"hud__btn--active":R(t).isLooping}]),"aria-label":R(o),onClick:l[1]||=V((...e)=>R(s)&&R(s)(...e),[`stop`])},[x(Ye)],10,nt)):!e.isFocused&&R(i)&&R(a)?(M(),v(`button`,{key:2,class:`hud__btn`,"aria-label":R(a).label,onClick:l[2]||=V(e=>R(a).onClick(),[`stop`]),innerHTML:R(a).icon},null,8,rt)):(M(),v(`div`,it)),y(`div`,at,[x(Y,{"is-playing":R(t).isPlaying,"has-ended":R(t).hasEnded,size:`lg`,onTogglePlay:R(t).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),R(t).isBuffering?(M(),g(X,{key:0,class:`hud__buf-spinner`})):_(`v-if`,!0)]),e.isFocused?(M(),v(`div`,ot)):(M(),v(`button`,{key:4,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[3]||=V((...e)=>R(n).openControls&&R(n).openControls(...e),[`stop`])},[x($e)]))]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);const ct={},lt={viewBox:`0 0 24 24`,fill:`currentColor`};function ut(e,t){return M(),v(`svg`,lt,[...t[0]||=[y(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var dt=J(ct,[[`render`,ut]]);const ft={class:`controls__vol-header`},pt=[`aria-label`],mt={class:`controls__vol-body`},ht=[`value`],gt={class:`controls__vol-pct`};var _t=J(S({__name:`VolumePanel`,emits:[`back`],setup(e){let t=w(G),n=w(K),r=h(()=>t.isMuted?0:Math.round(t.vol*100));function i(e){t.setVolume(Number(e.target.value)/100)}return(e,a)=>(M(),v(p,null,[y(`div`,ft,[y(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:a[0]||=t=>e.$emit(`back`)},[x(dt)]),a[6]||=y(`span`,{class:`controls__vol-label`},`Volume`,-1),y(`button`,{class:`controls__btn`,"aria-label":R(t).isMuted?`Unmute`:`Mute`,onClick:a[1]||=e=>R(t).toggleMute()},[!R(t).isMuted&&R(t).vol>0?(M(),g(Z,{key:0})):(M(),g(Q,{key:1}))],8,pt)]),y(`div`,mt,[y(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`controls__vol-slider`,style:k({"--v":r.value+`%`}),"aria-label":`Volume`,onInput:i,onMousedown:a[2]||=e=>R(n).pauseHide(),onMouseup:a[3]||=e=>R(n).scheduleHide(),onTouchstartPassive:a[4]||=e=>R(n).pauseHide(),onTouchend:a[5]||=e=>R(n).scheduleHide()},null,44,ht),y(`span`,gt,I(r.value)+`%`,1)])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);const vt={},yt={viewBox:`0 0 24 24`,fill:`currentColor`};function bt(e,t){return M(),v(`svg`,yt,[...t[0]||=[y(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`},null,-1)]])}var xt=J(vt,[[`render`,bt]]);const St={},Ct={viewBox:`0 0 24 24`,fill:`currentColor`};function wt(e,t){return M(),v(`svg`,Ct,[...t[0]||=[y(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var Tt=J(St,[[`render`,wt]]);const Et={},Dt={viewBox:`0 0 24 24`,fill:`currentColor`};function Ot(e,t){return M(),v(`svg`,Dt,[...t[0]||=[y(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var kt=J(Et,[[`render`,Ot]]);const At=[`value`],jt={class:`controls__row`},Mt={class:`controls__play-wrap`},Nt={class:`controls__time`},Pt=[`aria-label`,`innerHTML`],Ft={key:3,class:`controls__fs-wrap`},It=[`aria-label`];var Lt=J(S({__name:`ControlsPopup`,props:{focusMode:{type:Boolean,default:!1}},setup(e){let t=e,n=w(G),r=w(K),i=w(`compact`),a=h(()=>!!i?.value&&!t.focusMode),{isCustom:o,customAction:s}=Ee(w(q),n),c=F(!1),l=F(null);A(()=>{c.value=!1});function u(e){if(!document.startViewTransition||!l.value){e();return}r.suppressMouseLeave(),l.value.style.viewTransitionName=`controls-popup`,document.startViewTransition(async()=>{e(),await E()}).finished.finally(()=>{l.value&&(l.value.style.viewTransitionName=``)})}function d(){u(()=>{c.value=!0})}let f=F(null),m=h(()=>f.value??n.progress);function b(e){f.value=Number(e.target.value)}function S(e){let t=Number(e.target.value);f.value=t,n.seek(t)}z(()=>n.current,()=>{if(f.value===null||!n.total)return;let e=f.value/100*n.total;Math.abs(n.current-e)<1&&(f.value=null)});let C=[.5,.75,1,1.25,1.5,2];function T(){let e=C[(C.indexOf(n.playbackRate)+1)%C.length];n.setPlaybackRate(e)}function O(e){return e===1?`1×`:`${e}×`}return(t,i)=>(M(),v(`div`,{ref_key:`popupEl`,ref:l,class:D([`controls`,{"controls--fs":R(n).isFullscreen||e.focusMode}]),onMousemove:i[10]||=V((...e)=>R(r).keepOpen&&R(r).keepOpen(...e),[`stop`])},[c.value?(M(),g(_t,{key:0,onBack:i[0]||=e=>u(()=>c.value=!1)})):(M(),v(p,{key:1},[a.value?_(`v-if`,!0):(M(),v(`input`,{key:0,type:`range`,min:`0`,max:`100`,value:m.value,class:`controls__seek`,style:k({"--p":m.value+`%`,"--b":R(n).bufferedDisplay+`%`}),onInput:b,onChange:S,onMousedown:i[1]||=e=>R(r).pauseHide(),onMouseup:i[2]||=e=>R(r).scheduleHide(),onTouchstartPassive:i[3]||=e=>R(r).pauseHide(),onTouchend:i[4]||=e=>R(r).scheduleHide()},null,44,At)),y(`div`,jt,[y(`div`,Mt,[R(n).isBuffering?(M(),g(X,{key:0})):(M(),g(Y,{key:1,"is-playing":R(n).isPlaying,"has-ended":R(n).hasEnded,size:`sm`,onTogglePlay:i[5]||=e=>R(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),y(`span`,Nt,I(R(n).fmt(R(n).current))+` / `+I(R(n).fmt(R(n).total)),1),!a.value&&R(n).supportsPlaybackRate?(M(),v(`button`,{key:0,class:D([`controls__btn controls__btn--rate`,{"controls__btn--active":R(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:T},I(O(R(n).playbackRate)),3)):_(`v-if`,!0),a.value?_(`v-if`,!0):(M(),v(`button`,{key:1,class:D([`controls__btn`,{"controls__btn--active":R(n).isLooping}]),"aria-label":`Toggle loop`,onClick:i[6]||=e=>R(n).toggleLoop()},[x(Ye)],2)),y(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:d},[!R(n).isMuted&&R(n).vol>0?(M(),g(Z,{key:0})):(M(),g(Q,{key:1}))]),R(o)&&R(s)?(M(),v(`button`,{key:2,class:`controls__btn`,"aria-label":R(s).label,onClick:i[7]||=e=>R(s).onClick(),innerHTML:R(s).icon},null,8,Pt)):_(`v-if`,!0),a.value?_(`v-if`,!0):(M(),v(`div`,Ft,[R(n).isFullscreenPending?(M(),g(X,{key:0})):(M(),v(`button`,{key:1,class:`controls__btn`,"aria-label":R(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:i[8]||=e=>R(n).toggleFullscreen()},[R(n).isFullscreen?(M(),g(kt,{key:0})):(M(),g(Tt,{key:1}))],8,It))])),y(`button`,{class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:i[9]||=e=>R(r).closeControls()},[x(xt)])])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Rt={key:0,class:`overlay__spinner`},zt={key:0,class:`overlay__error`};var Bt=J(S({__name:`PlayerOverlay`,props:{focusMode:{type:Boolean,default:!1},isFocused:{type:Boolean,default:!1},disableTapCapture:{type:Boolean,default:!1}},setup(e){let t=w(G),n=w(K);return(r,i)=>(M(),v(p,null,[e.disableTapCapture?_(`v-if`,!0):(M(),v(`div`,{key:0,class:`overlay__tap-capture`,style:k({pointerEvents:!R(t).hasStarted||R(t).isAdPlaying?`none`:void 0}),onClick:i[0]||=(...e)=>R(n).onVideoTap&&R(n).onVideoTap(...e),onTouchend:i[1]||=V((...e)=>R(n).onVideoTap&&R(n).onVideoTap(...e),[`prevent`,`stop`])},null,36)),x(m,{name:`fade`},{default:B(()=>[!R(t).isReady&&!R(t).isError?(M(),v(`div`,Rt,[x(X,{size:40,"border-width":3})])):_(`v-if`,!0)]),_:1}),x(m,{name:`fade`},{default:B(()=>[R(t).isError?(M(),v(`div`,zt,[y(`p`,null,I(R(t).errorMessage||`This video could not be played.`),1),y(`button`,{class:`overlay__retry`,onClick:i[2]||=V((...e)=>R(t).retry&&R(t).retry(...e),[`stop`])},`Retry`)])):_(`v-if`,!0)]),_:1}),y(`div`,{class:D([`overlay__hud`,{"overlay__hud--visible":R(n).showHUD&&R(t).isReady&&!R(t).isError&&!(R(n).isOpen&&R(t).isFullscreen)}])},[x(st,{"is-focused":e.isFocused},null,8,[`is-focused`])],2),x(m,{name:`popup`},{default:B(()=>[R(n).isOpen&&R(t).isReady&&!R(t).isError&&!(e.focusMode&&!R(t).isFullscreen)?(M(),v(`div`,{key:0,class:D([`overlay__popup`,{"overlay__popup--fs":R(t).isFullscreen}]),onClick:i[3]||=V(()=>{},[`stop`])},[x(Lt)],2)):_(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-f3307b98`]]);const Vt=[`data-focused`],Ht={"data-vjs-player":``},Ut={key:1,class:`player__native-play`};var $=J(S({__name:`VideoPlayer`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:`16:9`},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1,default:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},emits:[`state-change`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=F(null),o=P(Se(a,r,i)),s=F(!1),c=P(Ce(L(o,`isPlaying`),s));N(G,o),N(K,c),N(q,L(r,`action`));let{isPortrait:u,cssRatio:d}=l(r.aspectRatio),f=F(null),{focusModeEnabled:p}=we(s,L(r,`focusMode`),o,c,f),m=Te(s,L(r,`aspectRatio`));return t(o),(e,t)=>(M(),v(`div`,{class:`player`,"data-focused":s.value?``:null},[s.value?(M(),v(`div`,{key:0,class:D([`player__placeholder`,{"player__shell--portrait":R(u)}]),style:k({aspectRatio:R(d)})},null,6)):_(`v-if`,!0),s.value?(M(),v(`div`,{key:1,class:`player__backdrop`,onClick:t[0]||=e=>c.closeControls()})):_(`v-if`,!0),y(`div`,{ref_key:`focusFrameEl`,ref:f,class:D([`player__focus-frame`,{"player__focus-frame--active":s.value}])},[y(`div`,{class:D([`player__shell`,{"player__shell--portrait":R(u)}]),style:k([{aspectRatio:R(d)},R(m)]),onMousemove:t[1]||=e=>c.onMouseMove(),onContextmenuCapture:t[2]||=V(()=>{},[`prevent`]),onMouseleave:t[3]||=e=>c.onMouseLeave()},[y(`div`,Ht,[y(`video`,{ref_key:`videoEl`,ref:a,class:`video-js`,playsinline:``},null,512),o.nativeUi?_(`v-if`,!0):(M(),g(Bt,{key:0,"focus-mode":R(p),"is-focused":s.value,"disable-tap-capture":r.disableTapCapture},null,8,[`focus-mode`,`is-focused`,`disable-tap-capture`])),o.nativeUi&&!o.hasStarted?(M(),v(`div`,Ut,[x(Y,{"is-playing":!1,size:`lg`,onTogglePlay:o.togglePlay},null,8,[`onTogglePlay`])])):_(`v-if`,!0)])],38),s.value?(M(),v(`div`,{key:0,class:`player__focus-controls`,onClick:t[4]||=V(()=>{},[`stop`])},[x(Lt,{"focus-mode":``})])):_(`v-if`,!0)],2)],8,Vt))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const Wt=F(0),Gt=h(()=>Wt.value>0);function Kt(){Wt.value++}function qt(){Wt.value--}const Jt=[`src`],Yt={class:`stage__idle-body`},Xt={class:`stage__idle-btn`},Zt={class:`stage__idle-title`},Qt={key:1,class:`stage__idle-empty`};var $t=J(S({__name:`VideoStage`,emits:[`state-change`],setup(e,{emit:t}){let r=t,i=F(null),o=F(null),s=F(!1),c=F(!1),l=F(null),u=F(null),d=F(!1),m=F(null);N(`compact`,d);let h=null;z(d,e=>{m.value=e&&u.value?u.value.offsetHeight:null});function b(){h?.disconnect(),l.value&&(h=new IntersectionObserver(([e])=>{d.value=!e.isIntersecting},{threshold:1}),h.observe(l.value))}z(l,b);function S(){o.value&&(o.value={...o.value,autoplay:!0},s.value=!0)}function C(){o.value=null,s.value=!1,c.value=!1,d.value=!1,m.value=null,w()}function w(){window.dispatchEvent(new CustomEvent(n,{detail:{currentVideoUrl:o.value?.videoUrl??null,isPlaying:c.value}}))}function E(e){let t=e.detail;if(o.value?.videoUrl===t.videoUrl&&s.value){i.value?.togglePlay();return}o.value=t,s.value=!1,c.value=!1,w(),s.value=!0}function O(e){let t=e.detail;!o.value||t.videoUrl!==o.value.videoUrl||(s.value?i.value?.togglePlay():(o.value={...o.value,autoplay:!0},s.value=!0))}function P(e){e.type===`play`&&(c.value=!0),(e.type===`pause`||e.type===`ended`)&&(c.value=!1),w(),r(`state-change`,e)}return j(()=>{Kt(),window.addEventListener(a,E),window.addEventListener(f,O)}),A(()=>{qt(),window.removeEventListener(a,E),window.removeEventListener(f,O),h?.disconnect()}),(e,t)=>(M(),v(`div`,{ref_key:`wrapperEl`,ref:l,class:`stage-wrapper`,style:k(m.value?{height:m.value+`px`}:{})},[y(`div`,{ref_key:`stageEl`,ref:u,class:D([`stage`,{"stage--minified":d.value&&o.value&&s.value}])},[d.value&&o.value&&s.value?(M(),v(`button`,{key:0,class:`stage__dismiss`,"aria-label":`Close`,onClick:V(C,[`stop`])},[x(xt)])):_(`v-if`,!0),o.value&&s.value?(M(),g($,T({ref_key:`playerRef`,ref:i,key:o.value.videoUrl},o.value,{onStateChange:P}),null,16)):(M(),v(`div`,{key:2,class:`stage__idle`,style:k({aspectRatio:o.value?.aspectRatio||`16:9`}),onClick:S},[o.value?.poster?(M(),v(`img`,{key:0,src:o.value.poster,class:`stage__idle-poster`},null,8,Jt)):_(`v-if`,!0),t[0]||=y(`div`,{class:`stage__idle-scrim`},null,-1),y(`div`,Yt,[o.value?(M(),v(p,{key:0},[y(`div`,Xt,[x(Ae)]),y(`p`,Zt,I(o.value.title),1)],64)):(M(),v(`p`,Qt,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const en={class:`placeholder`},tn=[`src`,`alt`],nn={class:`placeholder__btn-wrap`},rn={key:2,class:`placeholder__footer`},an={class:`placeholder__title`};var on=J(S({__name:`VideoPlaceholder`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:`16:9`},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},setup(e){let t=e,{isPortrait:r,cssRatio:i}=l(t.aspectRatio),o=F(!1),s=F(!1);function c(e){let n=e.detail;o.value=n.currentVideoUrl===t.videoUrl,s.value=o.value&&n.isPlaying}function u(e){window.dispatchEvent(new CustomEvent(a,{detail:{...t,...e!==void 0&&{autoplay:e}}}))}function d(){u(!0)}return j(()=>{window.addEventListener(n,c),t.autoStage&&u()}),A(()=>window.removeEventListener(n,c)),(t,n)=>(M(),v(`div`,en,[y(`div`,{class:D([`placeholder__shell`,{"placeholder__shell--portrait":R(r),"placeholder__shell--active":o.value}]),style:k({aspectRatio:R(i)}),onClick:d},[e.poster?(M(),v(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,tn)):_(`v-if`,!0),n[0]||=y(`div`,{class:`placeholder__scrim`},null,-1),e.platform?(M(),v(`span`,{key:1,class:D([`placeholder__badge`,`badge--${e.platform}`])},I(e.platform),3)):_(`v-if`,!0),y(`div`,nn,[x(Y,{"is-playing":o.value&&s.value,size:`lg`,onTogglePlay:d},null,8,[`is-playing`])]),e.title?(M(),v(`div`,rn,[y(`p`,an,I(e.title),1)])):_(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),sn=S({__name:`VideoItem`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},platform:{type:String,required:!1},techOptions:{type:Object,required:!1},adTagUrl:{type:String,required:!1},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1},autoStage:{type:Boolean,required:!1},lazy:{type:Boolean,required:!1,default:!0},payload:{type:Object,required:!1},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},emits:[`state-change`],setup(e,{emit:t}){let n=e,r=t,i=F(!1);return(e,t)=>R(Gt)?(M(),g(on,O(T({key:0},e.$props)),null,16)):(M(),v(p,{key:1},[n.lazy&&!i.value&&!n.autoplay?(M(),g(on,T({key:0},e.$props,{onClickCapture:t[0]||=e=>i.value=!0}),null,16)):(M(),g($,T({key:1},n,{autoplay:i.value||n.autoplay,onStateChange:t[1]||=e=>r(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const cn=C($,{shadowRoot:!1,styles:[ee]}),ln=C($t,{shadowRoot:!1}),un=C(on,{shadowRoot:!1}),dn=C(sn,{shadowRoot:!1});customElements.define(`video-player`,cn),customElements.define(`video-stage`,ln),customElements.define(`video-placeholder`,un),customElements.define(`video-item`,dn);export{dn as VideoItemElement,un as VideoPlaceholderElement,cn as VideoPlayerElement,ln as VideoStageElement};
1
+ import{a as e,t}from"./chunks/video.cjs-gZWrkL0e.mjs";import{C as n,D as r,E as i,O as a,S as o,T as s,a as c,b as l,g as u,h as d,i as f,m as p,o as m,p as h,r as g,v as _,w as v,x as y,y as b}from"./chunks/tech-DHDK_NLh.mjs";import{Fragment as x,Transition as S,computed as C,createBlock as w,createCommentVNode as T,createElementBlock as E,createElementVNode as D,createStaticVNode as O,createVNode as k,defineComponent as A,defineCustomElement as j,inject as M,mergeProps as N,nextTick as P,normalizeClass as F,normalizeProps as ee,normalizeStyle as I,onBeforeUnmount as L,onMounted as R,openBlock as z,provide as B,reactive as te,ref as V,toDisplayString as H,toRef as U,unref as W,watch as G,withCtx as ne,withModifiers as K}from"vue";import re from"video.js/dist/video-js.css?inline";var ie=e(t(),1);const ae={},oe=[{test:e=>/youtu\.be|youtube\.com/.test(e),key:`youtube`,tech:`Youtube`,type:`video/youtube`,load:()=>import(`./chunks/youtube-BjxCa1gp.mjs`)},{test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),key:`vimeo`,tech:`Vimeo`,type:`video/vimeo`,load:()=>import(`./chunks/vimeo-DiVKBACn.mjs`)},{test:e=>/dailymotion\.com|dai\.ly/.test(e),key:`dailymotion`,tech:`Dailymotion`,type:`video/dailymotion`,load:()=>import(`./chunks/dailymotion-CEXthEHH.mjs`)},{test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),key:`jwplayer`,tech:null,type:`video/jwplayer`,load:()=>import(`./chunks/jwplayer-DZmqU8XG.mjs`)},{test:e=>e.startsWith(`brightcove://`),key:`brightcove`,tech:null,type:`video/brightcove`,load:()=>import(`./chunks/brightcove-BQ7atfxD.mjs`)}];async function se(e){let t=oe.find(t=>t.test(e));if(!t)return{tech:null,type:null,adTagUrl:null};ae[t.key]||(ae[t.key]=t.load());let n=null,{prefetchConfig:r}=await ae[t.key];return r&&(n=(await r(e).catch(()=>null))?.adTagUrl??null),{tech:t.tech,type:t.type,adTagUrl:n}}function ce(e){return!f(e)}function le(){return window.google?.ima?Promise.resolve():new Promise((e,t)=>{let n=document.createElement(`script`);n.src=u,n.onload=e,n.onerror=()=>t(Error(`Failed to load Google IMA SDK`)),document.head.appendChild(n)})}async function ue(t,n){return!n||!ce(t)?!1:(await le(),await import(`./chunks/videojs.ads-jA_s2l9Y.mjs`).then(t=>e(t.default,1)),await import(`./chunks/videojs.ima-Ccon1y6f.mjs`).then(t=>e(t.default,1)),!0)}function de(e,t,n={}){e.ima({adTagUrl:t,showControlsForJSAds:!1,...n})}const q=new Set;function fe(e){return q.add(e),()=>q.delete(e)}function pe(e){q.forEach(t=>{if(t!==e)try{t()}catch{}})}function me(e,t){let n=V(!1),r=V(!1);function i(){let e=document;n.value=!!(document.fullscreenElement||e.webkitFullscreenElement)}function a(){let n=t();if(typeof n?.enterFullscreen==`function`){n.enterFullscreen();return}let r=n?.el();if(typeof r?.webkitEnterFullscreen==`function`){r.webkitEnterFullscreen();return}e()?.requestFullscreen()}function o(){let n=t();if(typeof n?.exitFullscreen==`function`){n.exitFullscreen();return}e()?.exitFullscreen()}function c(){if(e()){if(n.value){o();return}a()}}function l(e){e.on(`fullscreenchange`,()=>{n.value=e.isFullscreen()??!1}),e.on(v,()=>{r.value=!0}),e.on(s,()=>{r.value=!1})}return R(()=>{document.addEventListener(`fullscreenchange`,i),document.addEventListener(`webkitfullscreenchange`,i)}),L(()=>{document.removeEventListener(`fullscreenchange`,i),document.removeEventListener(`webkitfullscreenchange`,i)}),{isFullscreen:n,isFullscreenPending:r,toggleFullscreen:c,attachPlayerEvents:l}}function he(){let e=V(!1),t=null;function n(){clearTimeout(t??void 0),e.value=!1}function r(r){r.on(`waiting`,()=>{clearTimeout(t??void 0),t=setTimeout(()=>{e.value=!0},500)}),r.on(`playing`,n),r.on(`canplay`,n)}return L(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}function ge(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of b)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function _e(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function ve(e){localStorage.setItem(y,JSON.stringify(e))}function ye(e,t){if(t<5)return;let n=_e().filter(t=>t.url!==e);n.unshift({url:e,time:t}),ve(n.slice(0,5))}function be(e){return _e().find(t=>t.url===e)?.time??null}function xe(e){ve(_e().filter(t=>t.url!==e))}function Se(e,t,n){let r=!1;function i(t){if(r)return;let n=be(e);n&&t.currentTime(n),r=!0}function a(t){!t||n.value||ye(e,t.currentTime()??0)}function o(){xe(e)}function s(){document.visibilityState===`hidden`&&a(t())}return R(()=>document.addEventListener(`visibilitychange`,s)),L(()=>{a(t()),document.removeEventListener(`visibilitychange`,s)}),{restoreOnce:i,save:a,clear:o}}function Ce(e,t,n){let r=null;R(()=>{let i=e.value?.closest(`.player__shell`);i&&(r=new IntersectionObserver(([e])=>{let r=t();!e.isIntersecting&&r&&!r.paused()&&!n.value&&r.pause()},{threshold:.1}),r.observe(i))}),L(()=>r?.disconnect())}function we(e,t,n,r,i){function a(){let n=e();if(!(!n||!t.value)){if(n.paused()){n.play();return}n.pause()}}function o(t){e()?.currentTime(n.value*(t/100))}function s(){let t=e();t?.muted(!t.muted())}function c(t){let n=e();n&&(n.volume(t),n.muted(t===0))}function l(){r.value=!r.value}function u(t){let n=e();n&&(n.playbackRate(t),i.value=t)}return{togglePlay:a,seek:o,toggleMute:s,setVolume:c,toggleLoop:l,setPlaybackRate:u}}function Te(e,t){let{isPlaying:r,hasEnded:i,isReady:a,isAdPlaying:s,current:c,total:l,buffered:u,vol:d,isMuted:f,isLooping:p,playbackRate:m,supportsPlaybackRate:h,hasStarted:g,isError:_,errorMessage:v}=e,{getTech:y,fire:b,pauseThisPlayer:x,positionMemory:S,quartiles:C,buffering:w,fullscreen:T}=t;function E(e){e.ready(()=>{a.value=!0,h.value=!!y()?.featuresPlaybackRate});let t=()=>{let t=e.duration();t&&t>0&&isFinite(t)&&(l.value=t)};e.on([`adstart`,n],()=>{pe(x),s.value=!0,b(`adstart`)}),e.on([`adend`,o],()=>{s.value=!1,b(`adend`)}),e.on(`play`,()=>{pe(x),g.value=!0,r.value=!0,i.value=!1,S.restoreOnce(e),b(`play`)}),e.on(`pause`,()=>{r.value=!1,S.save(e),b(`pause`)}),e.on(`ended`,()=>{if(r.value=!1,C.reset(),w.reset(),p.value){e.currentTime(0),e.play();return}l.value&&(c.value=l.value),i.value=!0,S.clear(),b(`ended`)}),e.on(`seeked`,()=>{b(`seeked`)}),e.on(`error`,()=>{let t=e.error();v.value=t?.message||`This video could not be played.`,_.value=!0,a.value=!0,b(`error`,{error:t})}),e.on(`timeupdate`,()=>{i.value||(c.value=e.currentTime()??0,l.value||t(),C.checkQuartiles())}),e.on(`durationchange`,t),e.on(`progress`,()=>{let t=e.duration();u.value=t?e.bufferedEnd()/t*100:0}),e.on(`volumechange`,()=>{let t=e.muted();d.value=e.volume()??1,f.value=t??!1,g.value&&b(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;m.value=t,g.value&&b(`ratechange`,{playbackRate:t})}),w.attachPlayerEvents(e),T.attachPlayerEvents(e)}return{attachPlayerEvents:E}}function Ee(e,t,n){let r=null,i=null,a=null,o=V(!1),s=V(!1),c=V(!1),l=V(!1),u=V(0),d=V(0),f=V(0),p=V(1),m=V(t.muted??t.autoplay??!1),h=V(!1),_=V(t.playbackRate??1),v=V(!1),y=V(!1),b=V(!1),x=V(``),S=V(!1),w=C(()=>d.value?u.value/d.value*100:0),T=C(()=>Math.max(f.value,w.value)),E=()=>r,D=()=>r?.tech({IWillNotUseThisInPlugins:!0}),O=me(E,D),k=he(),A=Se(t.videoUrl,E,s);function j(e,r={}){n(`state-change`,{type:e,currentTime:u.value,duration:d.value,src:t.videoUrl,...r,payload:t.payload})}let M=ge(u,d,j);function N(){!r||!a||(b.value=!1,x.value=``,r.src(a))}function P(){r?.pause()}let F=we(E,c,d,h,_),{attachPlayerEvents:ee}=Te({isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,current:u,total:d,buffered:f,vol:p,isMuted:m,isLooping:h,playbackRate:_,supportsPlaybackRate:v,hasStarted:y,isError:b,errorMessage:x},{getTech:D,fire:j,pauseThisPlayer:P,positionMemory:A,quartiles:M,buffering:k,fullscreen:O});return G(()=>t.muted,e=>{!r||e===void 0||r.muted(e)}),G(()=>t.playbackRate,e=>{!r||e===void 0||r.playbackRate(e)}),Ce(e,E,O.isFullscreen),R(async()=>{let{tech:n,type:o,adTagUrl:s}=await se(t.videoUrl),c=n?[n,`Html5`]:[`Html5`],l=t.adTagUrl||s||``,u=await ue(n??`Html5`,l);if(!e.value)return;let d={src:t.videoUrl,...o&&{type:o}};a=d,S.value=!!(t.nativeUi&&!ce(n??``)),r=(0,ie.default)(e.value,{techOrder:c,controls:!1,fluid:!0,aspectRatio:t.aspectRatio??`16:9`,poster:t.poster||``,playsinline:!0,autoplay:t.autoplay,muted:t.muted??t.autoplay,playbackRate:_.value,adTagUrl:l,youtube:{nativeUi:S.value},vimeo:{nativeUi:S.value},dailymotion:{nativeUi:S.value},...!u&&{sources:[d]},...t.techOptions}),u&&(de(r,l,t.imaOptions??{}),r.src(d)),i=fe(P),ee(r)}),L(()=>{i?.(),r?.dispose(),r=null}),{isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,isBuffering:k.isBuffering,current:u,total:d,vol:p,isMuted:m,isLooping:h,playbackRate:_,hasStarted:y,isError:b,errorMessage:x,progress:w,bufferedDisplay:T,isFullscreen:O.isFullscreen,isFullscreenPending:O.isFullscreenPending,fmt:g,fire:j,retry:N,togglePlay:F.togglePlay,seek:F.seek,toggleMute:F.toggleMute,setVolume:F.setVolume,toggleFullscreen:O.toggleFullscreen,toggleLoop:F.toggleLoop,setPlaybackRate:F.setPlaybackRate,supportsPlaybackRate:v,nativeUi:S}}function De(e,t){let n=V(!0),r=V(!1),i=null,a=0;function o(e=400){a=Date.now()+e}function s(e=d){clearTimeout(i??void 0),i=setTimeout(()=>{n.value=!1,t?.value||(r.value=!1)},e)}function c(){clearTimeout(i??void 0)}function l(){r.value=!0,n.value=!0,s()}function u(){r.value=!1,e.value&&s()}function f(){e.value&&s()}function p(){n.value=!0,e.value&&s()}function m(){n.value=!0,s()}function h(){Date.now()<a||e.value&&s(600)}return G(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),L(()=>clearTimeout(i??void 0)),{showHUD:n,isOpen:r,scheduleHide:s,pauseHide:c,onVideoTap:p,onMouseMove:m,onMouseLeave:h,openControls:l,closeControls:u,keepOpen:f,suppressMouseLeave:o}}function Oe(e,t,n){if(!document.startViewTransition||!e.value){n();return}e.value.style.viewTransitionName=t,document.startViewTransition(async()=>{n(),await P()}).finished.finally(()=>{e.value&&(e.value.style.viewTransitionName=``)})}function ke(e,t,n,r,i){let a=typeof document<`u`&&!!document.startViewTransition,o=C(()=>t.value&&a);G(()=>o.value&&!n.isFullscreen?r.isOpen:!1,t=>{let r=()=>{e.value=t,document.documentElement.toggleAttribute(`data-video-focused`,t),n.fire(t?`focusstart`:`focusend`)};if(n.isFullscreen){r();return}Oe(i,`player-focus`,r)}),G(()=>n.isFullscreen,()=>{r.isOpen&&r.closeControls()});function s(t){t.key===`Escape`&&e.value&&r.closeControls()}return R(()=>document.addEventListener(`keydown`,s)),L(()=>document.removeEventListener(`keydown`,s)),{focusModeEnabled:o}}function Ae(e,t){let n=V({width:0,height:0});function r(){n.value={width:window.innerWidth,height:window.innerHeight}}return R(()=>{r(),window.addEventListener(`resize`,r)}),L(()=>window.removeEventListener(`resize`,r)),C(()=>{if(!e.value)return{};let[r,i]=t.value.split(`:`).map(Number),a=Math.min(720,n.value.width-32),o=Math.min(n.value.height*p,n.value.height-32-140),s=a,c=s*i/r;return c>o&&(c=o,s=c*r/i),{width:`${s}px`,height:`${c}px`}})}const J=Symbol(`player`),Y=Symbol(`hud`),je=Symbol(`action`),Me=Symbol(`compact`);function X(e){let t=M(e);if(t===void 0)throw Error(`[video-player] missing "${String(e.description)}" context — this component must be rendered inside <VideoPlayer>`);return t}function Ne(e,t,n){return{hudVisible:C(()=>!e.isReady||e.isError||t.isOpen&&e.isFullscreen?!1:t.showHUD),popupVisible:C(()=>!e.isReady||e.isError||n.value&&!e.isFullscreen?!1:t.isOpen)}}function Pe(e,t,n){return C(()=>!(!e?.value||t.value||n.isFullscreen))}function Fe(e,t){let n=C(()=>e?.value??null),r=C(()=>!!n.value&&typeof n.value==`object`),i=C(()=>r.value?n.value:null),a=C(()=>n.value===`mute`?t.isMuted?`Unmute`:`Mute`:n.value===`loop`?t.isLooping?`Disable loop`:`Loop`:``);function o(){n.value===`mute`?t.toggleMute():n.value===`loop`&&t.toggleLoop()}return{currentAction:n,isCustom:r,customAction:i,builtinLabel:a,onBuiltinClick:o}}var Z=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const Ie={},Le={viewBox:`0 0 24 24`,fill:`currentColor`};function Re(e,t){return z(),E(`svg`,Le,[...t[0]||=[D(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var ze=Z(Ie,[[`render`,Re]]);const Be={},Ve={viewBox:`0 0 24 24`,fill:`currentColor`};function He(e,t){return z(),E(`svg`,Ve,[...t[0]||=[D(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`},null,-1)]])}var Ue=Z(Be,[[`render`,He]]);const We={},Ge={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Ke(e,t){return z(),E(`svg`,Ge,[...t[0]||=[O(`<line x1="4" y1="6" x2="20" y2="6"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="18" x2="20" y2="18"></line><circle cx="9" cy="6" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="15" cy="12" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="9" cy="18" r="2.5" fill="currentColor" stroke="none"></circle>`,6)]])}var qe=Z(We,[[`render`,Ke]]);const Je={},Ye={viewBox:`0 0 24 24`,fill:`currentColor`};function Xe(e,t){return z(),E(`svg`,Ye,[...t[0]||=[D(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var Ze=Z(Je,[[`render`,Xe]]);const Qe={},$e={viewBox:`0 0 24 24`,fill:`currentColor`};function et(e,t){return z(),E(`svg`,$e,[...t[0]||=[D(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var tt=Z(Qe,[[`render`,et]]);const nt={},rt={viewBox:`0 0 24 24`,fill:`currentColor`};function it(e,t){return z(),E(`svg`,rt,[...t[0]||=[D(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var at=Z(nt,[[`render`,it]]);const ot={},st={viewBox:`0 0 24 24`,fill:`currentColor`};function ct(e,t){return z(),E(`svg`,st,[...t[0]||=[D(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var lt=Z(ot,[[`render`,ct]]);const ut={},dt={viewBox:`0 0 24 24`,fill:`currentColor`};function ft(e,t){return z(),E(`svg`,dt,[...t[0]||=[D(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var pt=Z(ut,[[`render`,ft]]);const mt={},ht={viewBox:`0 0 24 24`,fill:`currentColor`};function gt(e,t){return z(),E(`svg`,ht,[...t[0]||=[D(`path`,{d:`M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z`},null,-1)]])}var _t=Z(mt,[[`render`,gt]]);const vt={},yt={viewBox:`0 0 24 24`,fill:`currentColor`};function bt(e,t){return z(),E(`svg`,yt,[...t[0]||=[D(`path`,{d:`M16.5 12A4.5 4.5 0 0 0 14 7.97v2.21l2.45 2.45c.03-.2.05-.41.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51A8.796 8.796 0 0 0 21 12c0-4.28-2.99-7.86-7-8.77v2.06c2.89.86 5 3.54 5 6.71zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.18v2.06A8.99 8.99 0 0 0 17.73 18L19 19.27 20.27 18 5.27 3 4.27 3zM12 4L9.91 6.09 12 8.18V4z`},null,-1)]])}var xt=Z(vt,[[`render`,bt]]);const St={},Ct={viewBox:`0 0 24 24`,fill:`currentColor`};function wt(e,t){return z(),E(`svg`,Ct,[...t[0]||=[D(`path`,{d:`M3 9v6h4l5 5V4L7 9H3zm13.5 3A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02z`},null,-1)]])}var Tt=Z(St,[[`render`,wt]]);const Et=[`aria-label`];var Q=Z(A({__name:`PlayPauseButton`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:`sm`}},emits:[`toggle-play`],setup(e){let t=e,n=C(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,r)=>(z(),E(`button`,{class:F([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":n.value,onClick:r[0]||=K(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(z(),w(W(lt),{key:0})):e.hasEnded?(z(),w(W(_t),{key:1})):(z(),w(W(pt),{key:2}))],10,Et))}}),[[`__scopeId`,`data-v-85902525`]]),Dt=A({__name:`VolumeIcon`,setup(e){let t=X(J),n=C(()=>!t.isMuted&&t.vol>0);return(e,t)=>n.value?(z(),w(W(Tt),{key:0})):(z(),w(W(xt),{key:1}))}}),$=Z(A({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(z(),E(`div`,{class:`spinner`,style:I({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Ot={class:`hud`},kt=[`aria-label`],At=[`aria-label`],jt=[`aria-label`,`innerHTML`],Mt={key:3,class:`hud__spacer`},Nt={class:`hud__play-wrap`},Pt={key:5,class:`hud__spacer`};var Ft=Z(A({__name:`HudButtons`,props:{isFocused:{type:Boolean,required:!1,default:!1}},setup(e){let t=X(J),n=X(Y),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,onBuiltinClick:s}=Fe(M(je),t);return(c,l)=>(z(),E(`div`,Ot,[!e.isFocused&&W(r)===`mute`?(z(),E(`button`,{key:0,class:F([`hud__btn`,{"hud__btn--active":W(t).isMuted}]),"aria-label":W(o),onClick:l[0]||=K((...e)=>W(s)&&W(s)(...e),[`stop`])},[k(Dt)],10,kt)):!e.isFocused&&W(r)===`loop`?(z(),E(`button`,{key:1,class:F([`hud__btn`,{"hud__btn--active":W(t).isLooping}]),"aria-label":W(o),onClick:l[1]||=K((...e)=>W(s)&&W(s)(...e),[`stop`])},[k(W(at))],10,At)):!e.isFocused&&W(i)&&W(a)?(z(),E(`button`,{key:2,class:`hud__btn`,"aria-label":W(a).label,onClick:l[2]||=K(e=>W(a).onClick(),[`stop`]),innerHTML:W(a).icon},null,8,jt)):(z(),E(`div`,Mt)),D(`div`,Nt,[k(Q,{"is-playing":W(t).isPlaying,"has-ended":W(t).hasEnded,size:`lg`,onTogglePlay:W(t).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),W(t).isBuffering?(z(),w($,{key:0,class:`hud__buf-spinner`})):T(`v-if`,!0)]),e.isFocused?(z(),E(`div`,Pt)):(z(),E(`button`,{key:4,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[3]||=K((...e)=>W(n).openControls&&W(n).openControls(...e),[`stop`])},[k(W(qe))]))]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);function It(e){let t=V(null),n=C(()=>t.value??e.progress),r=null;function i(){r&&clearTimeout(r),r=null,t.value=null}function a(e){r&&clearTimeout(r),r=null,t.value=Number(e.target.value)}function o(n){let a=Number(n.target.value);t.value=a,e.seek(a),r&&clearTimeout(r),r=setTimeout(i,l)}return G(()=>e.current,()=>{if(t.value===null||!e.total)return;let n=t.value/100*e.total;Math.abs(e.current-n)<1&&i()}),L(i),{displaySeek:n,onSeekInput:a,onSeekChange:o}}function Lt(e){function t(){let t=_.indexOf(e.playbackRate);e.setPlaybackRate(_[(t+1)%_.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}const Rt={class:`controls__vol-header`},zt=[`aria-label`],Bt={class:`controls__vol-body`},Vt=[`value`],Ht={class:`controls__vol-pct`};var Ut=Z(A({__name:`VolumePanel`,emits:[`back`],setup(e){let t=X(J),n=X(Y),r=C(()=>t.isMuted?0:Math.round(t.vol*100));function i(e){t.setVolume(Number(e.target.value)/100)}return(e,a)=>(z(),E(x,null,[D(`div`,Rt,[D(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:a[0]||=t=>e.$emit(`back`)},[k(W(ze))]),a[6]||=D(`span`,{class:`controls__vol-label`},`Volume`,-1),D(`button`,{class:`controls__btn`,"aria-label":W(t).isMuted?`Unmute`:`Mute`,onClick:a[1]||=e=>W(t).toggleMute()},[k(Dt)],8,zt)]),D(`div`,Bt,[D(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`controls__vol-slider`,style:I({"--v":r.value+`%`}),"aria-label":`Volume`,onInput:i,onMousedown:a[2]||=e=>W(n).pauseHide(),onMouseup:a[3]||=e=>W(n).scheduleHide(),onTouchstartPassive:a[4]||=e=>W(n).pauseHide(),onTouchend:a[5]||=e=>W(n).scheduleHide()},null,44,Vt),D(`span`,Ht,H(r.value)+`%`,1)])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);const Wt=[`value`],Gt={class:`controls__row`},Kt={class:`controls__play-wrap`},qt={class:`controls__time`},Jt=[`aria-label`,`innerHTML`],Yt={key:3,class:`controls__fs-wrap`},Xt=[`aria-label`];var Zt=Z(A({__name:`ControlsPopup`,props:{focusMode:{type:Boolean,required:!1,default:!1}},setup(e){let t=e,n=X(J),r=X(Y),i=Pe(M(Me),U(t,`focusMode`),n),{isCustom:a,customAction:o}=Fe(M(je),n),s=V(!1),l=V(null);L(()=>{s.value=!1});function u(e){r.suppressMouseLeave(),Oe(l,`controls-popup`,e)}function d(){if(c()){n.toggleMute();return}u(()=>{s.value=!0})}let{displaySeek:f,onSeekInput:p,onSeekChange:m}=It(n),{cycleRate:h,fmtRate:g}=Lt(n);return(t,c)=>(z(),E(`div`,{ref_key:`popupEl`,ref:l,class:F([`controls`,{"controls--fs":W(n).isFullscreen||e.focusMode}]),onMousemove:c[13]||=K((...e)=>W(r).keepOpen&&W(r).keepOpen(...e),[`stop`])},[s.value?(z(),w(Ut,{key:0,onBack:c[0]||=e=>u(()=>s.value=!1)})):(z(),E(x,{key:1},[W(i)?T(`v-if`,!0):(z(),E(`input`,{key:0,type:`range`,min:`0`,max:`100`,value:W(f),class:`controls__seek`,style:I({"--p":W(f)+`%`,"--b":W(n).bufferedDisplay+`%`}),onInput:c[1]||=(...e)=>W(p)&&W(p)(...e),onChange:c[2]||=(...e)=>W(m)&&W(m)(...e),onMousedown:c[3]||=e=>W(r).pauseHide(),onMouseup:c[4]||=e=>W(r).scheduleHide(),onTouchstartPassive:c[5]||=e=>W(r).pauseHide(),onTouchend:c[6]||=e=>W(r).scheduleHide()},null,44,Wt)),D(`div`,Gt,[D(`div`,Kt,[W(n).isBuffering?(z(),w($,{key:0})):(z(),w(Q,{key:1,"is-playing":W(n).isPlaying,"has-ended":W(n).hasEnded,size:`sm`,onTogglePlay:c[7]||=e=>W(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),D(`span`,qt,H(W(n).fmt(W(n).current))+` / `+H(W(n).fmt(W(n).total)),1),!W(i)&&W(n).supportsPlaybackRate?(z(),E(`button`,{key:0,class:F([`controls__btn controls__btn--rate`,{"controls__btn--active":W(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:c[8]||=(...e)=>W(h)&&W(h)(...e)},H(W(g)(W(n).playbackRate)),3)):T(`v-if`,!0),W(i)?T(`v-if`,!0):(z(),E(`button`,{key:1,class:F([`controls__btn`,{"controls__btn--active":W(n).isLooping}]),"aria-label":`Toggle loop`,onClick:c[9]||=e=>W(n).toggleLoop()},[k(W(at))],2)),D(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:d},[k(Dt)]),W(a)&&W(o)?(z(),E(`button`,{key:2,class:`controls__btn`,"aria-label":W(o).label,onClick:c[10]||=e=>W(o).onClick(),innerHTML:W(o).icon},null,8,Jt)):T(`v-if`,!0),W(i)?T(`v-if`,!0):(z(),E(`div`,Yt,[W(n).isFullscreenPending?(z(),w($,{key:0})):(z(),E(`button`,{key:1,class:`controls__btn`,"aria-label":W(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:c[11]||=e=>W(n).toggleFullscreen()},[W(n).isFullscreen?(z(),w(W(tt),{key:0})):(z(),w(W(Ze),{key:1}))],8,Xt))])),D(`button`,{class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:c[12]||=e=>W(r).closeControls()},[k(W(Ue))])])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Qt={key:0,class:`overlay__spinner`},$t={key:0,class:`overlay__error`};var en=Z(A({__name:`PlayerOverlay`,props:{focusMode:{type:Boolean,required:!1,default:!1},isFocused:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},setup(e){let t=e,n=X(J),r=X(Y),{hudVisible:i,popupVisible:a}=Ne(n,r,U(t,`focusMode`));return(t,o)=>(z(),E(x,null,[e.disableTapCapture?T(`v-if`,!0):(z(),E(`div`,{key:0,class:`overlay__tap-capture`,style:I({pointerEvents:!W(n).hasStarted||W(n).isAdPlaying?`none`:void 0}),onClick:o[0]||=(...e)=>W(r).onVideoTap&&W(r).onVideoTap(...e),onTouchend:o[1]||=K((...e)=>W(r).onVideoTap&&W(r).onVideoTap(...e),[`prevent`,`stop`])},null,36)),k(S,{name:`fade`},{default:ne(()=>[!W(n).isReady&&!W(n).isError?(z(),E(`div`,Qt,[k($,{size:40,"border-width":3})])):T(`v-if`,!0)]),_:1}),k(S,{name:`fade`},{default:ne(()=>[W(n).isError?(z(),E(`div`,$t,[D(`p`,null,H(W(n).errorMessage||`This video could not be played.`),1),D(`button`,{class:`overlay__retry`,onClick:o[2]||=K((...e)=>W(n).retry&&W(n).retry(...e),[`stop`])},`Retry`)])):T(`v-if`,!0)]),_:1}),D(`div`,{class:F([`overlay__hud`,{"overlay__hud--visible":W(i)}])},[k(Ft,{"is-focused":e.isFocused},null,8,[`is-focused`])],2),k(S,{name:`popup`},{default:ne(()=>[W(a)?(z(),E(`div`,{key:0,class:F([`overlay__popup`,{"overlay__popup--fs":W(n).isFullscreen}]),onClick:o[3]||=K(()=>{},[`stop`])},[k(Zt)],2)):T(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-f3307b98`]]);const tn=[`data-focused`],nn={"data-vjs-player":``},rn=[`poster`],an={key:1,class:`player__native-play`};var on=Z(A({__name:`VideoPlayer`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:h},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1,default:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},emits:[`state-change`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=V(null),o=te(Ee(a,r,i)),s=V(!1),c=te(De(U(o,`isPlaying`),s));B(J,o),B(Y,c),B(je,U(r,`action`));let{isPortrait:l,cssRatio:u}=m(r.aspectRatio),d=V(null),{focusModeEnabled:f}=ke(s,U(r,`focusMode`),o,c,d),p=Ae(s,U(r,`aspectRatio`)),h=C(()=>!r.poster&&!o.isReady);return t(o),(e,t)=>(z(),E(`div`,{class:`player`,"data-focused":s.value?``:null},[s.value?(z(),E(`div`,{key:0,class:F([`player__placeholder`,{"player__shell--portrait":W(l)}]),style:I({aspectRatio:W(u)})},null,6)):T(`v-if`,!0),s.value?(z(),E(`div`,{key:1,class:`player__backdrop`,onClick:t[0]||=e=>c.closeControls()})):T(`v-if`,!0),D(`div`,{ref_key:`focusFrameEl`,ref:d,class:F([`player__focus-frame`,{"player__focus-frame--active":s.value}])},[D(`div`,{class:F([`player__shell`,{"player__shell--portrait":W(l)}]),style:I([{aspectRatio:W(u)},W(p)]),onMousemove:t[1]||=e=>c.onMouseMove(),onContextmenuCapture:t[2]||=K(()=>{},[`prevent`]),onMouseleave:t[3]||=e=>c.onMouseLeave()},[D(`div`,nn,[D(`video`,{ref_key:`videoEl`,ref:a,class:F([`video-js`,{"video-js--hidden":h.value}]),poster:r.poster,playsinline:``},null,10,rn),o.nativeUi?T(`v-if`,!0):(z(),w(en,{key:0,"focus-mode":W(f),"is-focused":s.value,"disable-tap-capture":r.disableTapCapture},null,8,[`focus-mode`,`is-focused`,`disable-tap-capture`])),o.nativeUi&&!o.hasStarted?(z(),E(`div`,an,[k(Q,{"is-playing":!1,size:`lg`,onTogglePlay:o.togglePlay},null,8,[`onTogglePlay`])])):T(`v-if`,!0)])],38),s.value?(z(),E(`div`,{key:0,class:`player__focus-controls`,onClick:t[4]||=K(()=>{},[`stop`])},[k(Zt,{"focus-mode":``})])):T(`v-if`,!0)],2)],8,tn))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const sn=V(0),cn=C(()=>sn.value>0);function ln(){sn.value++}function un(){sn.value--}function dn(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function fn(e,t){let n=e=>t(e.detail);R(()=>window.addEventListener(e,n)),L(()=>window.removeEventListener(e,n))}const pn=[`src`],mn={class:`stage__idle-body`},hn={class:`stage__idle-btn`},gn={class:`stage__idle-title`},_n={key:1,class:`stage__idle-empty`};var vn=Z(A({__name:`VideoStage`,props:{pinPosition:{type:String,required:!1,default:`bottom-right`}},emits:[`state-change`],setup(e,{emit:t}){let n=t,o=V(null),s=V(null),c=V(!1),l=V(!1),u=V(null),d=V(null),f=V(!1);B(Me,f);let p=C(()=>f.value&&!!s.value&&c.value),h=C(()=>m(s.value?.aspectRatio||`16:9`).cssRatio),g=V(null),_=V(null);G(f,e=>{g.value=e&&d.value?{height:d.value.offsetHeight,width:d.value.offsetWidth}:null});let v=C(()=>{if(!g.value)return{};let{height:e,width:t}=g.value,n=_.value&&t?_.value/t:1;return{height:`${Math.round(e*n)}px`}}),y=null,b=null;function S(){y?.disconnect(),b?.disconnect(),u.value&&(y=new IntersectionObserver(([e])=>{f.value=!e.isIntersecting},{threshold:1}),y.observe(u.value),b=new ResizeObserver(([e])=>{_.value=e.contentRect.width}),b.observe(u.value))}G(u,S);function O(){s.value&&(s.value={...s.value,autoplay:!0},c.value=!0)}function A(){s.value=null,c.value=!1,l.value=!1,f.value=!1,g.value=null,j()}function j(){dn(r,{currentVideoUrl:s.value?.videoUrl??null,isPlaying:l.value})}function M(e){if(s.value?.videoUrl===e.videoUrl&&c.value){o.value?.togglePlay();return}s.value=e,c.value=!1,l.value=!1,j(),c.value=!0}function P(e){if(!(!s.value||e.videoUrl!==s.value.videoUrl)){if(!c.value){s.value={...s.value,autoplay:!0},c.value=!0;return}o.value?.togglePlay()}}function ee(e){e.type===`play`&&(l.value=!0),(e.type===`pause`||e.type===`ended`)&&(l.value=!1),j(),n(`state-change`,e)}return fn(i,M),fn(a,P),R(ln),L(()=>{un(),y?.disconnect(),b?.disconnect()}),(t,n)=>(z(),E(`div`,{ref_key:`wrapperEl`,ref:u,class:`stage-wrapper`,style:I(v.value)},[D(`div`,{ref_key:`stageEl`,ref:d,class:F([`stage`,{"stage--minified":p.value,[`stage--pin-${e.pinPosition}`]:p.value}])},[p.value?(z(),E(`button`,{key:0,class:`stage__dismiss`,"aria-label":`Close`,onClick:K(A,[`stop`])},[k(W(Ue))])):T(`v-if`,!0),s.value&&c.value?(z(),w(on,N({ref_key:`playerRef`,ref:o,key:s.value.videoUrl},s.value,{onStateChange:ee}),null,16)):(z(),E(`div`,{key:2,class:`stage__idle`,style:I({aspectRatio:h.value}),onClick:O},[s.value?.poster?(z(),E(`img`,{key:0,src:s.value.poster,class:`stage__idle-poster`},null,8,pn)):T(`v-if`,!0),n[0]||=D(`div`,{class:`stage__idle-scrim`},null,-1),D(`div`,mn,[s.value?(z(),E(x,{key:0},[D(`div`,hn,[k(W(pt))]),D(`p`,gn,H(s.value.title),1)],64)):(z(),E(`p`,_n,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const yn={class:`placeholder`},bn=[`src`,`alt`],xn={class:`placeholder__btn-wrap`},Sn={key:2,class:`placeholder__footer`},Cn={class:`placeholder__title`};var wn=Z(A({__name:`VideoPlaceholder`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:h},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},setup(e){let t=e,{isPortrait:n,cssRatio:a}=m(t.aspectRatio),o=V(!1),s=V(!1);fn(r,e=>{o.value=e.currentVideoUrl===t.videoUrl,s.value=o.value&&e.isPlaying});function c(e){dn(i,{...t,...e!==void 0&&{autoplay:e}})}function l(){c(!0)}return R(()=>{t.autoStage&&c()}),(t,r)=>(z(),E(`div`,yn,[D(`div`,{class:F([`placeholder__shell`,{"placeholder__shell--portrait":W(n),"placeholder__shell--active":o.value}]),style:I({aspectRatio:W(a)}),onClick:l},[e.poster?(z(),E(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,bn)):T(`v-if`,!0),r[0]||=D(`div`,{class:`placeholder__scrim`},null,-1),e.platform?(z(),E(`span`,{key:1,class:F([`placeholder__badge`,`badge--${e.platform}`])},H(e.platform),3)):T(`v-if`,!0),D(`div`,xn,[k(Q,{"is-playing":o.value&&s.value,size:`lg`,onTogglePlay:l},null,8,[`is-playing`])]),e.title?(z(),E(`div`,Sn,[D(`p`,Cn,H(e.title),1)])):T(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),Tn=A({__name:`VideoItem`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},platform:{type:String,required:!1},techOptions:{type:Object,required:!1},adTagUrl:{type:String,required:!1},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1},autoStage:{type:Boolean,required:!1},lazy:{type:Boolean,required:!1,default:!0},payload:{type:Object,required:!1},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},emits:[`state-change`],setup(e,{emit:t}){let n=e,r=t,i=V(!1);return(e,t)=>W(cn)?(z(),w(wn,ee(N({key:0},n)),null,16)):(z(),E(x,{key:1},[n.lazy&&!i.value&&!n.autoplay?(z(),w(wn,N({key:0},n,{onClickCapture:t[0]||=e=>i.value=!0}),null,16)):(z(),w(on,N({key:1},n,{autoplay:i.value||n.autoplay,onStateChange:t[1]||=e=>r(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const En=j(on,{shadowRoot:!1,styles:[re]}),Dn=j(vn,{shadowRoot:!1}),On=j(wn,{shadowRoot:!1}),kn=j(Tn,{shadowRoot:!1});customElements.define(`video-player`,En),customElements.define(`video-stage`,Dn),customElements.define(`video-placeholder`,On),customElements.define(`video-item`,kn);export{kn as VideoItemElement,On as VideoPlaceholderElement,En as VideoPlayerElement,Dn as VideoStageElement};
package/dist/index.d.mts CHANGED
@@ -56,10 +56,7 @@ interface VideoEntry extends PlayerProps {
56
56
  }
57
57
  //#endregion
58
58
  //#region src/components/VideoPlayer.vue.d.ts
59
- type __VLS_Props$1 = PlayerProps & {
60
- action?: PlayerAction | null;
61
- };
62
- declare const __VLS_export$3: import("vue").DefineComponent<__VLS_Props$1, {
59
+ declare const __VLS_export$3: import("vue").DefineComponent<PlayerProps, {
63
60
  isPlaying: boolean;
64
61
  hasEnded: boolean;
65
62
  isReady: boolean;
@@ -92,10 +89,9 @@ declare const __VLS_export$3: import("vue").DefineComponent<__VLS_Props$1, {
92
89
  nativeUi: boolean;
93
90
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
94
91
  "state-change": (event: StateChangeEvent) => any;
95
- }, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{
92
+ }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
96
93
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
97
94
  }>, {
98
- nativeUi: boolean;
99
95
  title: string;
100
96
  poster: string;
101
97
  aspectRatio: string;
@@ -103,6 +99,7 @@ declare const __VLS_export$3: import("vue").DefineComponent<__VLS_Props$1, {
103
99
  techOptions: Record<string, unknown>;
104
100
  adTagUrl: string;
105
101
  autoplay: boolean;
102
+ nativeUi: boolean;
106
103
  autoStage: boolean;
107
104
  lazy: boolean;
108
105
  payload: Record<string, unknown>;
@@ -113,16 +110,20 @@ declare const __VLS_export$3: import("vue").DefineComponent<__VLS_Props$1, {
113
110
  declare const _default$2: typeof __VLS_export$3;
114
111
  //#endregion
115
112
  //#region src/components/VideoStage.vue.d.ts
116
- declare const __VLS_export$2: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
113
+ type __VLS_Props = {
114
+ pinPosition?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left' | 'full-width';
115
+ };
116
+ declare const __VLS_export$2: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
117
117
  "state-change": (event: StateChangeEvent) => any;
118
- }, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
118
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
119
119
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
120
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
120
+ }>, {
121
+ pinPosition: "bottom-right" | "bottom-left" | "top-right" | "top-left" | "full-width";
122
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
121
123
  declare const _default$3: typeof __VLS_export$2;
122
124
  //#endregion
123
125
  //#region src/components/VideoPlaceholder.vue.d.ts
124
126
  declare const __VLS_export$1: import("vue").DefineComponent<PlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{}>, {
125
- nativeUi: boolean;
126
127
  title: string;
127
128
  poster: string;
128
129
  aspectRatio: string;
@@ -130,6 +131,7 @@ declare const __VLS_export$1: import("vue").DefineComponent<PlayerProps, {}, {},
130
131
  techOptions: Record<string, unknown>;
131
132
  adTagUrl: string;
132
133
  autoplay: boolean;
134
+ nativeUi: boolean;
133
135
  autoStage: boolean;
134
136
  payload: Record<string, unknown>;
135
137
  action: PlayerAction | null;
@@ -137,12 +139,9 @@ declare const __VLS_export$1: import("vue").DefineComponent<PlayerProps, {}, {},
137
139
  declare const _default$1: typeof __VLS_export$1;
138
140
  //#endregion
139
141
  //#region src/components/VideoItem.vue.d.ts
140
- type __VLS_Props = VideoSelectDetail & {
141
- action?: PlayerAction | null;
142
- };
143
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
142
+ declare const __VLS_export: import("vue").DefineComponent<PlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
144
143
  "state-change": (event: StateChangeEvent) => any;
145
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
144
+ }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
146
145
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
147
146
  }>, {
148
147
  lazy: boolean;
@@ -153,7 +152,7 @@ declare const _default: typeof __VLS_export;
153
152
  //#region src/adapters/index.d.ts
154
153
  declare function getPlatform(url: any): string;
155
154
  //#endregion
156
- //#region src/composables/usePlayer.d.ts
155
+ //#region src/composables/player/usePlayer.d.ts
157
156
  interface UsePlayerReturn {
158
157
  isPlaying: Ref<boolean>;
159
158
  hasEnded: Ref<boolean>;
@@ -187,7 +186,7 @@ interface UsePlayerReturn {
187
186
  nativeUi: Ref<boolean>;
188
187
  }
189
188
  //#endregion
190
- //#region src/composables/useHud.d.ts
189
+ //#region src/composables/overlay/useHud.d.ts
191
190
  interface UseHudReturn {
192
191
  showHUD: Ref<boolean>;
193
192
  isOpen: Ref<boolean>;
@@ -208,8 +207,10 @@ type HudContext = UnwrapNestedRefs<UseHudReturn>;
208
207
  declare const PlayerKey: InjectionKey<PlayerContext>;
209
208
  declare const HudKey: InjectionKey<HudContext>;
210
209
  declare const ActionKey: InjectionKey<Ref<PlayerAction | null | undefined>>;
210
+ declare const CompactKey: InjectionKey<Ref<boolean>>;
211
+ declare function injectStrict<T>(key: InjectionKey<T>): T;
211
212
  //#endregion
212
213
  //#region src/index.d.ts
213
214
  declare const VideoPlayerPlugin: Plugin;
214
215
  //#endregion
215
- export { ActionKey, BuiltinAction, CustomAction, HudContext, HudKey, Platform, PlayerAction, PlayerContext, PlayerKey, PlayerProps, StateChangeEvent, StateChangeType, VideoEntry, _default as VideoItem, _default$1 as VideoPlaceholder, _default$2 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$3 as VideoStage, VideoStateDetail, VideoToggleDetail, getPlatform };
216
+ export { ActionKey, BuiltinAction, CompactKey, CustomAction, HudContext, HudKey, Platform, PlayerAction, PlayerContext, PlayerKey, PlayerProps, StateChangeEvent, StateChangeType, VideoEntry, _default as VideoItem, _default$1 as VideoPlaceholder, _default$2 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$3 as VideoStage, VideoStateDetail, VideoToggleDetail, getPlatform, injectStrict };
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{_ as e,d as t,f as n,g as r,h as i,i as a,m as o,o as s,p as c,r as l,v as u}from"./chunks/tech-BOi4jf1S.mjs";import{Fragment as d,Transition as f,computed as p,createBlock as m,createCommentVNode as h,createElementBlock as g,createElementVNode as _,createStaticVNode as v,createVNode as y,defineComponent as b,inject as x,mergeProps as S,nextTick as C,normalizeClass as w,normalizeProps as T,normalizeStyle as E,onBeforeUnmount as D,onMounted as O,openBlock as k,provide as A,reactive as j,ref as M,toDisplayString as N,toRef as P,unref as F,watch as I,withCtx as L,withModifiers as R}from"vue";import ee from"video.js";const z={},B=[{test:e=>/youtu\.be|youtube\.com/.test(e),key:`youtube`,tech:`Youtube`,type:`video/youtube`,load:()=>import(`./chunks/youtube-Bdgt4YAG.mjs`)},{test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),key:`vimeo`,tech:`Vimeo`,type:`video/vimeo`,load:()=>import(`./chunks/vimeo-BPrvb6Ag.mjs`)},{test:e=>/dailymotion\.com|dai\.ly/.test(e),key:`dailymotion`,tech:`Dailymotion`,type:`video/dailymotion`,load:()=>import(`./chunks/dailymotion-CKw8QH-Y.mjs`)},{test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),key:`jwplayer`,tech:null,type:`video/jwplayer`,load:()=>import(`./chunks/jwplayer-CN_ZkNs-.mjs`)},{test:e=>e.startsWith(`brightcove://`),key:`brightcove`,tech:null,type:`video/brightcove`,load:()=>import(`./chunks/brightcove-fi5Gx3WM.mjs`)}];function te(e){return B.find(t=>t.test(e))?.key??`html5`}async function ne(e){let t=B.find(t=>t.test(e));if(!t)return{tech:null,type:null,adTagUrl:null};z[t.key]||(z[t.key]=t.load());let n=null,{prefetchConfig:r}=await z[t.key];return r&&(n=(await r(e).catch(()=>null))?.adTagUrl??null),{tech:t.tech,type:t.type,adTagUrl:n}}function re(e){return!a(e)}function ie(){return window.google?.ima?Promise.resolve():new Promise((e,t)=>{let n=document.createElement(`script`);n.src=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,n.onload=e,n.onerror=()=>t(Error(`Failed to load Google IMA SDK`)),document.head.appendChild(n)})}async function ae(e,t){return!t||!re(e)?!1:(await ie(),await import(`videojs-contrib-ads`),await import(`videojs-ima`),!0)}function oe(e,t,n={}){e.ima({adTagUrl:t,showControlsForJSAds:!1,...n})}const V=new Set;function se(e){return V.add(e),()=>V.delete(e)}function ce(e){V.forEach(t=>{if(t!==e)try{t()}catch{}})}function le(e,t){let n=M(!1),r=M(!1);function a(){let e=document;n.value=!!(document.fullscreenElement||e.webkitFullscreenElement)}function s(){let n=t();if(typeof n?.enterFullscreen==`function`){n.enterFullscreen();return}let r=n?.el();if(typeof r?.webkitEnterFullscreen==`function`){r.webkitEnterFullscreen();return}e()?.requestFullscreen()}function c(){let n=t();if(typeof n?.exitFullscreen==`function`){n.exitFullscreen();return}e()?.exitFullscreen()}function l(){if(e()){if(n.value){c();return}s()}}function u(e){e.on(`fullscreenchange`,()=>{n.value=e.isFullscreen()??!1}),e.on(o,()=>{r.value=!0}),e.on(i,()=>{r.value=!1})}return O(()=>{document.addEventListener(`fullscreenchange`,a),document.addEventListener(`webkitfullscreenchange`,a)}),D(()=>{document.removeEventListener(`fullscreenchange`,a),document.removeEventListener(`webkitfullscreenchange`,a)}),{isFullscreen:n,isFullscreenPending:r,toggleFullscreen:l,attachPlayerEvents:u}}function ue(){let e=M(!1),t=null;function n(){clearTimeout(t??void 0),e.value=!1}function r(r){r.on(`waiting`,()=>{clearTimeout(t??void 0),t=setTimeout(()=>{e.value=!0},500)}),r.on(`playing`,n),r.on(`canplay`,n)}return D(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}const de=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]];function fe(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of de)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function H(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function pe(e){localStorage.setItem(t,JSON.stringify(e))}function me(e,t){if(t<5)return;let n=H().filter(t=>t.url!==e);n.unshift({url:e,time:t}),pe(n.slice(0,5))}function he(e){return H().find(t=>t.url===e)?.time??null}function ge(e){pe(H().filter(t=>t.url!==e))}function _e(e,t){let n=!1;function r(t){if(n)return;let r=he(e);r&&t.currentTime(r),n=!0}function i(t){t&&me(e,t.currentTime()??0)}function a(){ge(e)}function o(){document.visibilityState===`hidden`&&i(t())}return O(()=>document.addEventListener(`visibilitychange`,o)),D(()=>{i(t()),document.removeEventListener(`visibilitychange`,o)}),{restoreOnce:r,save:i,clear:a}}function ve(e,t,n){let r=null;O(()=>{let i=e.value?.closest(`.player__shell`);i&&(r=new IntersectionObserver(([e])=>{let r=t();!e.isIntersecting&&r&&!r.paused()&&!n.value&&r.pause()},{threshold:.1}),r.observe(i))}),D(()=>r?.disconnect())}function ye(e,t,n,r,i){function a(){let n=e();if(!(!n||!t.value)){if(n.paused()){n.play();return}n.pause()}}function o(t){e()?.currentTime(n.value*(t/100))}function s(){let t=e();t?.muted(!t.muted())}function c(t){let n=e();n&&(n.volume(t),n.muted(t===0))}function l(){r.value=!r.value}function u(t){let n=e();n&&(n.playbackRate(t),i.value=t)}return{togglePlay:a,seek:o,toggleMute:s,setVolume:c,toggleLoop:l,setPlaybackRate:u}}function be(e,t){let{isPlaying:r,hasEnded:i,isReady:a,isAdPlaying:o,current:s,total:l,buffered:u,vol:d,isMuted:f,isLooping:p,playbackRate:m,supportsPlaybackRate:h,hasStarted:g,isError:_,errorMessage:v}=e,{getTech:y,fire:b,pauseThisPlayer:x,positionMemory:S,quartiles:C,buffering:w,fullscreen:T}=t;function E(e){e.ready(()=>{a.value=!0,h.value=!!y()?.featuresPlaybackRate});let t=()=>{let t=e.duration();t&&t>0&&isFinite(t)&&(l.value=t)};e.on([`adstart`,c],()=>{ce(x),o.value=!0,b(`adstart`)}),e.on([`adend`,n],()=>{o.value=!1,b(`adend`)}),e.on(`play`,()=>{ce(x),g.value=!0,r.value=!0,i.value=!1,S.restoreOnce(e),b(`play`)}),e.on(`pause`,()=>{r.value=!1,S.save(e),b(`pause`)}),e.on(`ended`,()=>{if(r.value=!1,C.reset(),w.reset(),p.value){e.currentTime(0),e.play();return}l.value&&(s.value=l.value),i.value=!0,S.clear(),b(`ended`)}),e.on(`seeked`,()=>{b(`seeked`)}),e.on(`error`,()=>{let t=e.error();v.value=t?.message||`This video could not be played.`,_.value=!0,a.value=!0,b(`error`,{error:t})}),e.on(`timeupdate`,()=>{i.value||(s.value=e.currentTime()??0,l.value||t(),C.checkQuartiles())}),e.on(`durationchange`,t),e.on(`progress`,()=>{let t=e.duration();u.value=t?e.bufferedEnd()/t*100:0}),e.on(`volumechange`,()=>{let t=e.muted();d.value=e.volume()??1,f.value=t??!1,g.value&&b(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;m.value=t,g.value&&b(`ratechange`,{playbackRate:t})}),w.attachPlayerEvents(e),T.attachPlayerEvents(e)}return{attachPlayerEvents:E}}function xe(e,t,n){let r=null,i=null,a=null,o=M(!1),s=M(!1),c=M(!1),u=M(!1),d=M(0),f=M(0),m=M(0),h=M(1),g=M(t.muted??t.autoplay??!1),_=M(!1),v=M(t.playbackRate??1),y=M(!1),b=M(!1),x=M(!1),S=M(``),C=M(!1),w=p(()=>f.value?d.value/f.value*100:0),T=p(()=>Math.max(m.value,w.value)),E=()=>r,k=()=>r?.tech({IWillNotUseThisInPlugins:!0}),A=le(E,k),j=ue(),N=_e(t.videoUrl,E);function P(e,r={}){n(`state-change`,{type:e,currentTime:d.value,duration:f.value,src:t.videoUrl,...r,payload:t.payload})}let F=fe(d,f,P);function L(){!r||!a||(x.value=!1,S.value=``,r.src(a))}function R(){r?.pause()}let z=ye(E,c,f,_,v),{attachPlayerEvents:B}=be({isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:u,current:d,total:f,buffered:m,vol:h,isMuted:g,isLooping:_,playbackRate:v,supportsPlaybackRate:y,hasStarted:b,isError:x,errorMessage:S},{getTech:k,fire:P,pauseThisPlayer:R,positionMemory:N,quartiles:F,buffering:j,fullscreen:A});return I(()=>t.muted,e=>{!r||e===void 0||r.muted(e)}),I(()=>t.playbackRate,e=>{!r||e===void 0||r.playbackRate(e)}),ve(e,E,A.isFullscreen),O(async()=>{let{tech:n,type:o,adTagUrl:s}=await ne(t.videoUrl),c=n?[n,`Html5`]:[`Html5`],l=t.adTagUrl||s||``,u=await ae(n??`Html5`,l);if(!e.value)return;let d={src:t.videoUrl,...o&&{type:o}};a=d,C.value=!!(t.nativeUi&&!re(n??``)),r=ee(e.value,{techOrder:c,controls:!1,fluid:!0,aspectRatio:t.aspectRatio??`16:9`,poster:t.poster||``,playsinline:!0,autoplay:t.autoplay,muted:t.muted??t.autoplay,playbackRate:v.value,adTagUrl:l,youtube:{nativeUi:C.value},vimeo:{nativeUi:C.value},dailymotion:{nativeUi:C.value},...!u&&{sources:[d]},...t.techOptions}),u&&(oe(r,l,t.imaOptions??{}),r.src(d)),i=se(R),B(r)}),D(()=>{i?.(),r?.dispose(),r=null}),{isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:u,isBuffering:j.isBuffering,current:d,total:f,vol:h,isMuted:g,isLooping:_,playbackRate:v,hasStarted:b,isError:x,errorMessage:S,progress:w,bufferedDisplay:T,isFullscreen:A.isFullscreen,isFullscreenPending:A.isFullscreenPending,fmt:l,fire:P,retry:L,togglePlay:z.togglePlay,seek:z.seek,toggleMute:z.toggleMute,setVolume:z.setVolume,toggleFullscreen:A.toggleFullscreen,toggleLoop:z.toggleLoop,setPlaybackRate:z.setPlaybackRate,supportsPlaybackRate:y,nativeUi:C}}function Se(e,t){let n=M(!0),r=M(!1),i=null,a=0;function o(e=400){a=Date.now()+e}function s(e=3500){clearTimeout(i??void 0),i=setTimeout(()=>{n.value=!1,t?.value||(r.value=!1)},e)}function c(){clearTimeout(i??void 0)}function l(){r.value=!0,n.value=!0,s()}function u(){r.value=!1,e.value&&s()}function d(){e.value&&s()}function f(){n.value=!0,e.value&&s()}function p(){n.value=!0,s()}function m(){Date.now()<a||e.value&&s(600)}return I(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),D(()=>clearTimeout(i??void 0)),{showHUD:n,isOpen:r,scheduleHide:s,pauseHide:c,onVideoTap:f,onMouseMove:p,onMouseLeave:m,openControls:l,closeControls:u,keepOpen:d,suppressMouseLeave:o}}function Ce(e,t,n,r,i){let a=typeof document<`u`&&!!document.startViewTransition,o=p(()=>t.value&&a);I(()=>o.value&&!n.isFullscreen?r.isOpen:!1,t=>{let r=()=>{e.value=t,n.fire(t?`focusstart`:`focusend`)};if(!i.value||n.isFullscreen){r();return}i.value.style.viewTransitionName=`player-focus`,document.startViewTransition(async()=>{r(),await C()}).finished.finally(()=>{i.value&&(i.value.style.viewTransitionName=``)})}),I(()=>n.isFullscreen,()=>{r.isOpen&&r.closeControls()});function s(t){t.key===`Escape`&&e.value&&r.closeControls()}return O(()=>document.addEventListener(`keydown`,s)),D(()=>document.removeEventListener(`keydown`,s)),{focusModeEnabled:o}}function we(e,t){let n=M({width:0,height:0});function r(){n.value={width:window.innerWidth,height:window.innerHeight}}return O(()=>{r(),window.addEventListener(`resize`,r)}),D(()=>window.removeEventListener(`resize`,r)),p(()=>{if(!e.value)return{};let[r,i]=t.value.split(`:`).map(Number),a=Math.min(720,n.value.width-32),o=Math.min(n.value.height*.6,n.value.height-32-140),s=a,c=s*i/r;return c>o&&(c=o,s=c*r/i),{width:`${s}px`,height:`${c}px`}})}const U=Symbol(`player`),W=Symbol(`hud`),G=Symbol(`action`);function Te(e,t){let n=p(()=>e?.value??null),r=p(()=>!!n.value&&typeof n.value==`object`),i=p(()=>r.value?n.value:null),a=p(()=>n.value===`mute`?t.isMuted?`Unmute`:`Mute`:n.value===`loop`?t.isLooping?`Disable loop`:`Loop`:``);function o(){n.value===`mute`?t.toggleMute():n.value===`loop`&&t.toggleLoop()}return{currentAction:n,isCustom:r,customAction:i,builtinLabel:a,onBuiltinClick:o}}var K=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const Ee={},De={viewBox:`0 0 24 24`,fill:`currentColor`};function Oe(e,t){return k(),g(`svg`,De,[...t[0]||=[_(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var ke=K(Ee,[[`render`,Oe]]);const Ae={},je={viewBox:`0 0 24 24`,fill:`currentColor`};function Me(e,t){return k(),g(`svg`,je,[...t[0]||=[_(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var Ne=K(Ae,[[`render`,Me]]);const Pe={},Fe={viewBox:`0 0 24 24`,fill:`currentColor`};function Ie(e,t){return k(),g(`svg`,Fe,[...t[0]||=[_(`path`,{d:`M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z`},null,-1)]])}var Le=K(Pe,[[`render`,Ie]]);const Re=[`aria-label`];var q=K(b({__name:`PlayPauseButton`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,default:!1},size:{type:String,default:`sm`}},emits:[`toggle-play`],setup(e){let t=e,n=p(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,r)=>(k(),g(`button`,{class:w([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":n.value,onClick:r[0]||=R(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(k(),m(Ne,{key:0})):e.hasEnded?(k(),m(Le,{key:1})):(k(),m(ke,{key:2}))],10,Re))}}),[[`__scopeId`,`data-v-85902525`]]),J=K(b({__name:`Spinner`,props:{size:{type:Number,default:14},borderWidth:{type:Number,default:2}},setup(e){return(t,n)=>(k(),g(`div`,{class:`spinner`,style:E({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const ze={},Be={viewBox:`0 0 24 24`,fill:`currentColor`};function Ve(e,t){return k(),g(`svg`,Be,[...t[0]||=[_(`path`,{d:`M3 9v6h4l5 5V4L7 9H3zm13.5 3A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02z`},null,-1)]])}var Y=K(ze,[[`render`,Ve]]);const He={},Ue={viewBox:`0 0 24 24`,fill:`currentColor`};function We(e,t){return k(),g(`svg`,Ue,[...t[0]||=[_(`path`,{d:`M16.5 12A4.5 4.5 0 0 0 14 7.97v2.21l2.45 2.45c.03-.2.05-.41.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51A8.796 8.796 0 0 0 21 12c0-4.28-2.99-7.86-7-8.77v2.06c2.89.86 5 3.54 5 6.71zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.18v2.06A8.99 8.99 0 0 0 17.73 18L19 19.27 20.27 18 5.27 3 4.27 3zM12 4L9.91 6.09 12 8.18V4z`},null,-1)]])}var X=K(He,[[`render`,We]]);const Ge={},Ke={viewBox:`0 0 24 24`,fill:`currentColor`};function qe(e,t){return k(),g(`svg`,Ke,[...t[0]||=[_(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var Je=K(Ge,[[`render`,qe]]);const Ye={},Xe={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Ze(e,t){return k(),g(`svg`,Xe,[...t[0]||=[v(`<line x1="4" y1="6" x2="20" y2="6"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="18" x2="20" y2="18"></line><circle cx="9" cy="6" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="15" cy="12" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="9" cy="18" r="2.5" fill="currentColor" stroke="none"></circle>`,6)]])}var Qe=K(Ye,[[`render`,Ze]]);const $e={class:`hud`},et=[`aria-label`],tt=[`aria-label`],nt=[`aria-label`,`innerHTML`],rt={key:3,class:`hud__spacer`},it={class:`hud__play-wrap`},at={key:5,class:`hud__spacer`};var ot=K(b({__name:`HudButtons`,props:{isFocused:{type:Boolean,default:!1}},setup(e){let t=x(U),n=x(W),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,onBuiltinClick:s}=Te(x(G),t);return(c,l)=>(k(),g(`div`,$e,[!e.isFocused&&F(r)===`mute`?(k(),g(`button`,{key:0,class:w([`hud__btn`,{"hud__btn--active":F(t).isMuted}]),"aria-label":F(o),onClick:l[0]||=R((...e)=>F(s)&&F(s)(...e),[`stop`])},[!F(t).isMuted&&F(t).vol>0?(k(),m(Y,{key:0})):(k(),m(X,{key:1}))],10,et)):!e.isFocused&&F(r)===`loop`?(k(),g(`button`,{key:1,class:w([`hud__btn`,{"hud__btn--active":F(t).isLooping}]),"aria-label":F(o),onClick:l[1]||=R((...e)=>F(s)&&F(s)(...e),[`stop`])},[y(Je)],10,tt)):!e.isFocused&&F(i)&&F(a)?(k(),g(`button`,{key:2,class:`hud__btn`,"aria-label":F(a).label,onClick:l[2]||=R(e=>F(a).onClick(),[`stop`]),innerHTML:F(a).icon},null,8,nt)):(k(),g(`div`,rt)),_(`div`,it,[y(q,{"is-playing":F(t).isPlaying,"has-ended":F(t).hasEnded,size:`lg`,onTogglePlay:F(t).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),F(t).isBuffering?(k(),m(J,{key:0,class:`hud__buf-spinner`})):h(`v-if`,!0)]),e.isFocused?(k(),g(`div`,at)):(k(),g(`button`,{key:4,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[3]||=R((...e)=>F(n).openControls&&F(n).openControls(...e),[`stop`])},[y(Qe)]))]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);const st={},ct={viewBox:`0 0 24 24`,fill:`currentColor`};function lt(e,t){return k(),g(`svg`,ct,[...t[0]||=[_(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var ut=K(st,[[`render`,lt]]);const dt={class:`controls__vol-header`},ft=[`aria-label`],pt={class:`controls__vol-body`},mt=[`value`],ht={class:`controls__vol-pct`};var gt=K(b({__name:`VolumePanel`,emits:[`back`],setup(e){let t=x(U),n=x(W),r=p(()=>t.isMuted?0:Math.round(t.vol*100));function i(e){t.setVolume(Number(e.target.value)/100)}return(e,a)=>(k(),g(d,null,[_(`div`,dt,[_(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:a[0]||=t=>e.$emit(`back`)},[y(ut)]),a[6]||=_(`span`,{class:`controls__vol-label`},`Volume`,-1),_(`button`,{class:`controls__btn`,"aria-label":F(t).isMuted?`Unmute`:`Mute`,onClick:a[1]||=e=>F(t).toggleMute()},[!F(t).isMuted&&F(t).vol>0?(k(),m(Y,{key:0})):(k(),m(X,{key:1}))],8,ft)]),_(`div`,pt,[_(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`controls__vol-slider`,style:E({"--v":r.value+`%`}),"aria-label":`Volume`,onInput:i,onMousedown:a[2]||=e=>F(n).pauseHide(),onMouseup:a[3]||=e=>F(n).scheduleHide(),onTouchstartPassive:a[4]||=e=>F(n).pauseHide(),onTouchend:a[5]||=e=>F(n).scheduleHide()},null,44,mt),_(`span`,ht,N(r.value)+`%`,1)])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);const _t={},vt={viewBox:`0 0 24 24`,fill:`currentColor`};function yt(e,t){return k(),g(`svg`,vt,[...t[0]||=[_(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`},null,-1)]])}var bt=K(_t,[[`render`,yt]]);const xt={},St={viewBox:`0 0 24 24`,fill:`currentColor`};function Ct(e,t){return k(),g(`svg`,St,[...t[0]||=[_(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var wt=K(xt,[[`render`,Ct]]);const Tt={},Et={viewBox:`0 0 24 24`,fill:`currentColor`};function Dt(e,t){return k(),g(`svg`,Et,[...t[0]||=[_(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var Ot=K(Tt,[[`render`,Dt]]);const kt=[`value`],At={class:`controls__row`},jt={class:`controls__play-wrap`},Mt={class:`controls__time`},Nt=[`aria-label`,`innerHTML`],Pt={key:3,class:`controls__fs-wrap`},Ft=[`aria-label`];var It=K(b({__name:`ControlsPopup`,props:{focusMode:{type:Boolean,default:!1}},setup(e){let t=e,n=x(U),r=x(W),i=x(`compact`),a=p(()=>!!i?.value&&!t.focusMode),{isCustom:o,customAction:s}=Te(x(G),n),c=M(!1),l=M(null);D(()=>{c.value=!1});function u(e){if(!document.startViewTransition||!l.value){e();return}r.suppressMouseLeave(),l.value.style.viewTransitionName=`controls-popup`,document.startViewTransition(async()=>{e(),await C()}).finished.finally(()=>{l.value&&(l.value.style.viewTransitionName=``)})}function f(){u(()=>{c.value=!0})}let v=M(null),b=p(()=>v.value??n.progress);function S(e){v.value=Number(e.target.value)}function T(e){let t=Number(e.target.value);v.value=t,n.seek(t)}I(()=>n.current,()=>{if(v.value===null||!n.total)return;let e=v.value/100*n.total;Math.abs(n.current-e)<1&&(v.value=null)});let O=[.5,.75,1,1.25,1.5,2];function A(){let e=O[(O.indexOf(n.playbackRate)+1)%O.length];n.setPlaybackRate(e)}function j(e){return e===1?`1×`:`${e}×`}return(t,i)=>(k(),g(`div`,{ref_key:`popupEl`,ref:l,class:w([`controls`,{"controls--fs":F(n).isFullscreen||e.focusMode}]),onMousemove:i[10]||=R((...e)=>F(r).keepOpen&&F(r).keepOpen(...e),[`stop`])},[c.value?(k(),m(gt,{key:0,onBack:i[0]||=e=>u(()=>c.value=!1)})):(k(),g(d,{key:1},[a.value?h(`v-if`,!0):(k(),g(`input`,{key:0,type:`range`,min:`0`,max:`100`,value:b.value,class:`controls__seek`,style:E({"--p":b.value+`%`,"--b":F(n).bufferedDisplay+`%`}),onInput:S,onChange:T,onMousedown:i[1]||=e=>F(r).pauseHide(),onMouseup:i[2]||=e=>F(r).scheduleHide(),onTouchstartPassive:i[3]||=e=>F(r).pauseHide(),onTouchend:i[4]||=e=>F(r).scheduleHide()},null,44,kt)),_(`div`,At,[_(`div`,jt,[F(n).isBuffering?(k(),m(J,{key:0})):(k(),m(q,{key:1,"is-playing":F(n).isPlaying,"has-ended":F(n).hasEnded,size:`sm`,onTogglePlay:i[5]||=e=>F(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),_(`span`,Mt,N(F(n).fmt(F(n).current))+` / `+N(F(n).fmt(F(n).total)),1),!a.value&&F(n).supportsPlaybackRate?(k(),g(`button`,{key:0,class:w([`controls__btn controls__btn--rate`,{"controls__btn--active":F(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:A},N(j(F(n).playbackRate)),3)):h(`v-if`,!0),a.value?h(`v-if`,!0):(k(),g(`button`,{key:1,class:w([`controls__btn`,{"controls__btn--active":F(n).isLooping}]),"aria-label":`Toggle loop`,onClick:i[6]||=e=>F(n).toggleLoop()},[y(Je)],2)),_(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:f},[!F(n).isMuted&&F(n).vol>0?(k(),m(Y,{key:0})):(k(),m(X,{key:1}))]),F(o)&&F(s)?(k(),g(`button`,{key:2,class:`controls__btn`,"aria-label":F(s).label,onClick:i[7]||=e=>F(s).onClick(),innerHTML:F(s).icon},null,8,Nt)):h(`v-if`,!0),a.value?h(`v-if`,!0):(k(),g(`div`,Pt,[F(n).isFullscreenPending?(k(),m(J,{key:0})):(k(),g(`button`,{key:1,class:`controls__btn`,"aria-label":F(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:i[8]||=e=>F(n).toggleFullscreen()},[F(n).isFullscreen?(k(),m(Ot,{key:0})):(k(),m(wt,{key:1}))],8,Ft))])),_(`button`,{class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:i[9]||=e=>F(r).closeControls()},[y(bt)])])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Lt={key:0,class:`overlay__spinner`},Rt={key:0,class:`overlay__error`};var zt=K(b({__name:`PlayerOverlay`,props:{focusMode:{type:Boolean,default:!1},isFocused:{type:Boolean,default:!1},disableTapCapture:{type:Boolean,default:!1}},setup(e){let t=x(U),n=x(W);return(r,i)=>(k(),g(d,null,[e.disableTapCapture?h(`v-if`,!0):(k(),g(`div`,{key:0,class:`overlay__tap-capture`,style:E({pointerEvents:!F(t).hasStarted||F(t).isAdPlaying?`none`:void 0}),onClick:i[0]||=(...e)=>F(n).onVideoTap&&F(n).onVideoTap(...e),onTouchend:i[1]||=R((...e)=>F(n).onVideoTap&&F(n).onVideoTap(...e),[`prevent`,`stop`])},null,36)),y(f,{name:`fade`},{default:L(()=>[!F(t).isReady&&!F(t).isError?(k(),g(`div`,Lt,[y(J,{size:40,"border-width":3})])):h(`v-if`,!0)]),_:1}),y(f,{name:`fade`},{default:L(()=>[F(t).isError?(k(),g(`div`,Rt,[_(`p`,null,N(F(t).errorMessage||`This video could not be played.`),1),_(`button`,{class:`overlay__retry`,onClick:i[2]||=R((...e)=>F(t).retry&&F(t).retry(...e),[`stop`])},`Retry`)])):h(`v-if`,!0)]),_:1}),_(`div`,{class:w([`overlay__hud`,{"overlay__hud--visible":F(n).showHUD&&F(t).isReady&&!F(t).isError&&!(F(n).isOpen&&F(t).isFullscreen)}])},[y(ot,{"is-focused":e.isFocused},null,8,[`is-focused`])],2),y(f,{name:`popup`},{default:L(()=>[F(n).isOpen&&F(t).isReady&&!F(t).isError&&!(e.focusMode&&!F(t).isFullscreen)?(k(),g(`div`,{key:0,class:w([`overlay__popup`,{"overlay__popup--fs":F(t).isFullscreen}]),onClick:i[3]||=R(()=>{},[`stop`])},[y(It)],2)):h(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-f3307b98`]]);const Bt=[`data-focused`],Vt={"data-vjs-player":``},Ht={key:1,class:`player__native-play`};var Z=K(b({__name:`VideoPlayer`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:`16:9`},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1,default:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},emits:[`state-change`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=M(null),o=j(xe(a,r,i)),c=M(!1),l=j(Se(P(o,`isPlaying`),c));A(U,o),A(W,l),A(G,P(r,`action`));let{isPortrait:u,cssRatio:d}=s(r.aspectRatio),f=M(null),{focusModeEnabled:p}=Ce(c,P(r,`focusMode`),o,l,f),v=we(c,P(r,`aspectRatio`));return t(o),(e,t)=>(k(),g(`div`,{class:`player`,"data-focused":c.value?``:null},[c.value?(k(),g(`div`,{key:0,class:w([`player__placeholder`,{"player__shell--portrait":F(u)}]),style:E({aspectRatio:F(d)})},null,6)):h(`v-if`,!0),c.value?(k(),g(`div`,{key:1,class:`player__backdrop`,onClick:t[0]||=e=>l.closeControls()})):h(`v-if`,!0),_(`div`,{ref_key:`focusFrameEl`,ref:f,class:w([`player__focus-frame`,{"player__focus-frame--active":c.value}])},[_(`div`,{class:w([`player__shell`,{"player__shell--portrait":F(u)}]),style:E([{aspectRatio:F(d)},F(v)]),onMousemove:t[1]||=e=>l.onMouseMove(),onContextmenuCapture:t[2]||=R(()=>{},[`prevent`]),onMouseleave:t[3]||=e=>l.onMouseLeave()},[_(`div`,Vt,[_(`video`,{ref_key:`videoEl`,ref:a,class:`video-js`,playsinline:``},null,512),o.nativeUi?h(`v-if`,!0):(k(),m(zt,{key:0,"focus-mode":F(p),"is-focused":c.value,"disable-tap-capture":r.disableTapCapture},null,8,[`focus-mode`,`is-focused`,`disable-tap-capture`])),o.nativeUi&&!o.hasStarted?(k(),g(`div`,Ht,[y(q,{"is-playing":!1,size:`lg`,onTogglePlay:o.togglePlay},null,8,[`onTogglePlay`])])):h(`v-if`,!0)])],38),c.value?(k(),g(`div`,{key:0,class:`player__focus-controls`,onClick:t[4]||=R(()=>{},[`stop`])},[y(It,{"focus-mode":``})])):h(`v-if`,!0)],2)],8,Bt))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const Q=M(0),Ut=p(()=>Q.value>0);function Wt(){Q.value++}function Gt(){Q.value--}const Kt=[`src`],qt={class:`stage__idle-body`},Jt={class:`stage__idle-btn`},Yt={class:`stage__idle-title`},Xt={key:1,class:`stage__idle-empty`};var Zt=K(b({__name:`VideoStage`,emits:[`state-change`],setup(t,{emit:n}){let i=n,a=M(null),o=M(null),s=M(!1),c=M(!1),l=M(null),f=M(null),p=M(!1),v=M(null);A(`compact`,p);let b=null;I(p,e=>{v.value=e&&f.value?f.value.offsetHeight:null});function x(){b?.disconnect(),l.value&&(b=new IntersectionObserver(([e])=>{p.value=!e.isIntersecting},{threshold:1}),b.observe(l.value))}I(l,x);function C(){o.value&&(o.value={...o.value,autoplay:!0},s.value=!0)}function T(){o.value=null,s.value=!1,c.value=!1,p.value=!1,v.value=null,j()}function j(){window.dispatchEvent(new CustomEvent(e,{detail:{currentVideoUrl:o.value?.videoUrl??null,isPlaying:c.value}}))}function P(e){let t=e.detail;if(o.value?.videoUrl===t.videoUrl&&s.value){a.value?.togglePlay();return}o.value=t,s.value=!1,c.value=!1,j(),s.value=!0}function F(e){let t=e.detail;!o.value||t.videoUrl!==o.value.videoUrl||(s.value?a.value?.togglePlay():(o.value={...o.value,autoplay:!0},s.value=!0))}function L(e){e.type===`play`&&(c.value=!0),(e.type===`pause`||e.type===`ended`)&&(c.value=!1),j(),i(`state-change`,e)}return O(()=>{Wt(),window.addEventListener(r,P),window.addEventListener(u,F)}),D(()=>{Gt(),window.removeEventListener(r,P),window.removeEventListener(u,F),b?.disconnect()}),(e,t)=>(k(),g(`div`,{ref_key:`wrapperEl`,ref:l,class:`stage-wrapper`,style:E(v.value?{height:v.value+`px`}:{})},[_(`div`,{ref_key:`stageEl`,ref:f,class:w([`stage`,{"stage--minified":p.value&&o.value&&s.value}])},[p.value&&o.value&&s.value?(k(),g(`button`,{key:0,class:`stage__dismiss`,"aria-label":`Close`,onClick:R(T,[`stop`])},[y(bt)])):h(`v-if`,!0),o.value&&s.value?(k(),m(Z,S({ref_key:`playerRef`,ref:a,key:o.value.videoUrl},o.value,{onStateChange:L}),null,16)):(k(),g(`div`,{key:2,class:`stage__idle`,style:E({aspectRatio:o.value?.aspectRatio||`16:9`}),onClick:C},[o.value?.poster?(k(),g(`img`,{key:0,src:o.value.poster,class:`stage__idle-poster`},null,8,Kt)):h(`v-if`,!0),t[0]||=_(`div`,{class:`stage__idle-scrim`},null,-1),_(`div`,qt,[o.value?(k(),g(d,{key:0},[_(`div`,Jt,[y(ke)]),_(`p`,Yt,N(o.value.title),1)],64)):(k(),g(`p`,Xt,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const Qt={class:`placeholder`},$t=[`src`,`alt`],en={class:`placeholder__btn-wrap`},tn={key:2,class:`placeholder__footer`},nn={class:`placeholder__title`};var $=K(b({__name:`VideoPlaceholder`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:`16:9`},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},setup(t){let n=t,{isPortrait:i,cssRatio:a}=s(n.aspectRatio),o=M(!1),c=M(!1);function l(e){let t=e.detail;o.value=t.currentVideoUrl===n.videoUrl,c.value=o.value&&t.isPlaying}function u(e){window.dispatchEvent(new CustomEvent(r,{detail:{...n,...e!==void 0&&{autoplay:e}}}))}function d(){u(!0)}return O(()=>{window.addEventListener(e,l),n.autoStage&&u()}),D(()=>window.removeEventListener(e,l)),(e,n)=>(k(),g(`div`,Qt,[_(`div`,{class:w([`placeholder__shell`,{"placeholder__shell--portrait":F(i),"placeholder__shell--active":o.value}]),style:E({aspectRatio:F(a)}),onClick:d},[t.poster?(k(),g(`img`,{key:0,class:`placeholder__poster`,src:t.poster,alt:t.title},null,8,$t)):h(`v-if`,!0),n[0]||=_(`div`,{class:`placeholder__scrim`},null,-1),t.platform?(k(),g(`span`,{key:1,class:w([`placeholder__badge`,`badge--${t.platform}`])},N(t.platform),3)):h(`v-if`,!0),_(`div`,en,[y(q,{"is-playing":o.value&&c.value,size:`lg`,onTogglePlay:d},null,8,[`is-playing`])]),t.title?(k(),g(`div`,tn,[_(`p`,nn,N(t.title),1)])):h(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),rn=b({__name:`VideoItem`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},platform:{type:String,required:!1},techOptions:{type:Object,required:!1},adTagUrl:{type:String,required:!1},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1},autoStage:{type:Boolean,required:!1},lazy:{type:Boolean,required:!1,default:!0},payload:{type:Object,required:!1},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},emits:[`state-change`],setup(e,{emit:t}){let n=e,r=t,i=M(!1);return(e,t)=>F(Ut)?(k(),m($,T(S({key:0},e.$props)),null,16)):(k(),g(d,{key:1},[n.lazy&&!i.value&&!n.autoplay?(k(),m($,S({key:0},e.$props,{onClickCapture:t[0]||=e=>i.value=!0}),null,16)):(k(),m(Z,S({key:1},n,{autoplay:i.value||n.autoplay,onStateChange:t[1]||=e=>r(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const an={install(e){e.component(`VideoPlayer`,Z),e.component(`VideoStage`,Zt),e.component(`VideoPlaceholder`,$),e.component(`VideoItem`,rn)}};export{G as ActionKey,W as HudKey,U as PlayerKey,rn as VideoItem,$ as VideoPlaceholder,Z as VideoPlayer,an as VideoPlayerPlugin,an as default,Zt as VideoStage,te as getPlatform};
1
+ import{C as e,D as t,E as n,O as r,S as i,T as a,a as o,b as s,g as c,h as l,i as u,m as d,o as f,p,r as m,v as h,w as g,x as _,y as v}from"./chunks/tech-BNI0cffg.mjs";import{Fragment as y,Transition as b,computed as x,createBlock as S,createCommentVNode as C,createElementBlock as w,createElementVNode as T,createStaticVNode as E,createVNode as D,defineComponent as O,inject as k,mergeProps as A,nextTick as j,normalizeClass as M,normalizeProps as N,normalizeStyle as P,onBeforeUnmount as F,onMounted as I,openBlock as L,provide as R,reactive as ee,ref as z,toDisplayString as B,toRef as V,unref as H,watch as U,withCtx as W,withModifiers as G}from"vue";import te from"video.js";const ne={},re=[{test:e=>/youtu\.be|youtube\.com/.test(e),key:`youtube`,tech:`Youtube`,type:`video/youtube`,load:()=>import(`./chunks/youtube-CLB51PMl.mjs`)},{test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),key:`vimeo`,tech:`Vimeo`,type:`video/vimeo`,load:()=>import(`./chunks/vimeo-C54chOVx.mjs`)},{test:e=>/dailymotion\.com|dai\.ly/.test(e),key:`dailymotion`,tech:`Dailymotion`,type:`video/dailymotion`,load:()=>import(`./chunks/dailymotion-BkCqcmM9.mjs`)},{test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),key:`jwplayer`,tech:null,type:`video/jwplayer`,load:()=>import(`./chunks/jwplayer-BHEYGzXA.mjs`)},{test:e=>e.startsWith(`brightcove://`),key:`brightcove`,tech:null,type:`video/brightcove`,load:()=>import(`./chunks/brightcove-wzVhFaj0.mjs`)}];function ie(e){return re.find(t=>t.test(e))?.key??`html5`}async function ae(e){let t=re.find(t=>t.test(e));if(!t)return{tech:null,type:null,adTagUrl:null};ne[t.key]||(ne[t.key]=t.load());let n=null,{prefetchConfig:r}=await ne[t.key];return r&&(n=(await r(e).catch(()=>null))?.adTagUrl??null),{tech:t.tech,type:t.type,adTagUrl:n}}function oe(e){return!u(e)}function se(){return window.google?.ima?Promise.resolve():new Promise((e,t)=>{let n=document.createElement(`script`);n.src=c,n.onload=e,n.onerror=()=>t(Error(`Failed to load Google IMA SDK`)),document.head.appendChild(n)})}async function ce(e,t){return!t||!oe(e)?!1:(await se(),await import(`videojs-contrib-ads`),await import(`videojs-ima`),!0)}function le(e,t,n={}){e.ima({adTagUrl:t,showControlsForJSAds:!1,...n})}const ue=new Set;function de(e){return ue.add(e),()=>ue.delete(e)}function fe(e){ue.forEach(t=>{if(t!==e)try{t()}catch{}})}function pe(e,t){let n=z(!1),r=z(!1);function i(){let e=document;n.value=!!(document.fullscreenElement||e.webkitFullscreenElement)}function o(){let n=t();if(typeof n?.enterFullscreen==`function`){n.enterFullscreen();return}let r=n?.el();if(typeof r?.webkitEnterFullscreen==`function`){r.webkitEnterFullscreen();return}e()?.requestFullscreen()}function s(){let n=t();if(typeof n?.exitFullscreen==`function`){n.exitFullscreen();return}e()?.exitFullscreen()}function c(){if(e()){if(n.value){s();return}o()}}function l(e){e.on(`fullscreenchange`,()=>{n.value=e.isFullscreen()??!1}),e.on(g,()=>{r.value=!0}),e.on(a,()=>{r.value=!1})}return I(()=>{document.addEventListener(`fullscreenchange`,i),document.addEventListener(`webkitfullscreenchange`,i)}),F(()=>{document.removeEventListener(`fullscreenchange`,i),document.removeEventListener(`webkitfullscreenchange`,i)}),{isFullscreen:n,isFullscreenPending:r,toggleFullscreen:c,attachPlayerEvents:l}}function me(){let e=z(!1),t=null;function n(){clearTimeout(t??void 0),e.value=!1}function r(r){r.on(`waiting`,()=>{clearTimeout(t??void 0),t=setTimeout(()=>{e.value=!0},500)}),r.on(`playing`,n),r.on(`canplay`,n)}return F(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}function he(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of v)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function ge(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function _e(e){localStorage.setItem(_,JSON.stringify(e))}function ve(e,t){if(t<5)return;let n=ge().filter(t=>t.url!==e);n.unshift({url:e,time:t}),_e(n.slice(0,5))}function ye(e){return ge().find(t=>t.url===e)?.time??null}function be(e){_e(ge().filter(t=>t.url!==e))}function xe(e,t,n){let r=!1;function i(t){if(r)return;let n=ye(e);n&&t.currentTime(n),r=!0}function a(t){!t||n.value||ve(e,t.currentTime()??0)}function o(){be(e)}function s(){document.visibilityState===`hidden`&&a(t())}return I(()=>document.addEventListener(`visibilitychange`,s)),F(()=>{a(t()),document.removeEventListener(`visibilitychange`,s)}),{restoreOnce:i,save:a,clear:o}}function Se(e,t,n){let r=null;I(()=>{let i=e.value?.closest(`.player__shell`);i&&(r=new IntersectionObserver(([e])=>{let r=t();!e.isIntersecting&&r&&!r.paused()&&!n.value&&r.pause()},{threshold:.1}),r.observe(i))}),F(()=>r?.disconnect())}function Ce(e,t,n,r,i){function a(){let n=e();if(!(!n||!t.value)){if(n.paused()){n.play();return}n.pause()}}function o(t){e()?.currentTime(n.value*(t/100))}function s(){let t=e();t?.muted(!t.muted())}function c(t){let n=e();n&&(n.volume(t),n.muted(t===0))}function l(){r.value=!r.value}function u(t){let n=e();n&&(n.playbackRate(t),i.value=t)}return{togglePlay:a,seek:o,toggleMute:s,setVolume:c,toggleLoop:l,setPlaybackRate:u}}function we(t,n){let{isPlaying:r,hasEnded:a,isReady:o,isAdPlaying:s,current:c,total:l,buffered:u,vol:d,isMuted:f,isLooping:p,playbackRate:m,supportsPlaybackRate:h,hasStarted:g,isError:_,errorMessage:v}=t,{getTech:y,fire:b,pauseThisPlayer:x,positionMemory:S,quartiles:C,buffering:w,fullscreen:T}=n;function E(t){t.ready(()=>{o.value=!0,h.value=!!y()?.featuresPlaybackRate});let n=()=>{let e=t.duration();e&&e>0&&isFinite(e)&&(l.value=e)};t.on([`adstart`,e],()=>{fe(x),s.value=!0,b(`adstart`)}),t.on([`adend`,i],()=>{s.value=!1,b(`adend`)}),t.on(`play`,()=>{fe(x),g.value=!0,r.value=!0,a.value=!1,S.restoreOnce(t),b(`play`)}),t.on(`pause`,()=>{r.value=!1,S.save(t),b(`pause`)}),t.on(`ended`,()=>{if(r.value=!1,C.reset(),w.reset(),p.value){t.currentTime(0),t.play();return}l.value&&(c.value=l.value),a.value=!0,S.clear(),b(`ended`)}),t.on(`seeked`,()=>{b(`seeked`)}),t.on(`error`,()=>{let e=t.error();v.value=e?.message||`This video could not be played.`,_.value=!0,o.value=!0,b(`error`,{error:e})}),t.on(`timeupdate`,()=>{a.value||(c.value=t.currentTime()??0,l.value||n(),C.checkQuartiles())}),t.on(`durationchange`,n),t.on(`progress`,()=>{let e=t.duration();u.value=e?t.bufferedEnd()/e*100:0}),t.on(`volumechange`,()=>{let e=t.muted();d.value=t.volume()??1,f.value=e??!1,g.value&&b(`volumechange`,{isMuted:e})}),t.on(`ratechange`,()=>{let e=t.playbackRate()??1;m.value=e,g.value&&b(`ratechange`,{playbackRate:e})}),w.attachPlayerEvents(t),T.attachPlayerEvents(t)}return{attachPlayerEvents:E}}function Te(e,t,n){let r=null,i=null,a=null,o=z(!1),s=z(!1),c=z(!1),l=z(!1),u=z(0),d=z(0),f=z(0),p=z(1),h=z(t.muted??t.autoplay??!1),g=z(!1),_=z(t.playbackRate??1),v=z(!1),y=z(!1),b=z(!1),S=z(``),C=z(!1),w=x(()=>d.value?u.value/d.value*100:0),T=x(()=>Math.max(f.value,w.value)),E=()=>r,D=()=>r?.tech({IWillNotUseThisInPlugins:!0}),O=pe(E,D),k=me(),A=xe(t.videoUrl,E,s);function j(e,r={}){n(`state-change`,{type:e,currentTime:u.value,duration:d.value,src:t.videoUrl,...r,payload:t.payload})}let M=he(u,d,j);function N(){!r||!a||(b.value=!1,S.value=``,r.src(a))}function P(){r?.pause()}let L=Ce(E,c,d,g,_),{attachPlayerEvents:R}=we({isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,current:u,total:d,buffered:f,vol:p,isMuted:h,isLooping:g,playbackRate:_,supportsPlaybackRate:v,hasStarted:y,isError:b,errorMessage:S},{getTech:D,fire:j,pauseThisPlayer:P,positionMemory:A,quartiles:M,buffering:k,fullscreen:O});return U(()=>t.muted,e=>{!r||e===void 0||r.muted(e)}),U(()=>t.playbackRate,e=>{!r||e===void 0||r.playbackRate(e)}),Se(e,E,O.isFullscreen),I(async()=>{let{tech:n,type:o,adTagUrl:s}=await ae(t.videoUrl),c=n?[n,`Html5`]:[`Html5`],l=t.adTagUrl||s||``,u=await ce(n??`Html5`,l);if(!e.value)return;let d={src:t.videoUrl,...o&&{type:o}};a=d,C.value=!!(t.nativeUi&&!oe(n??``)),r=te(e.value,{techOrder:c,controls:!1,fluid:!0,aspectRatio:t.aspectRatio??`16:9`,poster:t.poster||``,playsinline:!0,autoplay:t.autoplay,muted:t.muted??t.autoplay,playbackRate:_.value,adTagUrl:l,youtube:{nativeUi:C.value},vimeo:{nativeUi:C.value},dailymotion:{nativeUi:C.value},...!u&&{sources:[d]},...t.techOptions}),u&&(le(r,l,t.imaOptions??{}),r.src(d)),i=de(P),R(r)}),F(()=>{i?.(),r?.dispose(),r=null}),{isPlaying:o,hasEnded:s,isReady:c,isAdPlaying:l,isBuffering:k.isBuffering,current:u,total:d,vol:p,isMuted:h,isLooping:g,playbackRate:_,hasStarted:y,isError:b,errorMessage:S,progress:w,bufferedDisplay:T,isFullscreen:O.isFullscreen,isFullscreenPending:O.isFullscreenPending,fmt:m,fire:j,retry:N,togglePlay:L.togglePlay,seek:L.seek,toggleMute:L.toggleMute,setVolume:L.setVolume,toggleFullscreen:O.toggleFullscreen,toggleLoop:L.toggleLoop,setPlaybackRate:L.setPlaybackRate,supportsPlaybackRate:v,nativeUi:C}}function Ee(e,t){let n=z(!0),r=z(!1),i=null,a=0;function o(e=400){a=Date.now()+e}function s(e=l){clearTimeout(i??void 0),i=setTimeout(()=>{n.value=!1,t?.value||(r.value=!1)},e)}function c(){clearTimeout(i??void 0)}function u(){r.value=!0,n.value=!0,s()}function d(){r.value=!1,e.value&&s()}function f(){e.value&&s()}function p(){n.value=!0,e.value&&s()}function m(){n.value=!0,s()}function h(){Date.now()<a||e.value&&s(600)}return U(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),F(()=>clearTimeout(i??void 0)),{showHUD:n,isOpen:r,scheduleHide:s,pauseHide:c,onVideoTap:p,onMouseMove:m,onMouseLeave:h,openControls:u,closeControls:d,keepOpen:f,suppressMouseLeave:o}}function De(e,t,n){if(!document.startViewTransition||!e.value){n();return}e.value.style.viewTransitionName=t,document.startViewTransition(async()=>{n(),await j()}).finished.finally(()=>{e.value&&(e.value.style.viewTransitionName=``)})}function Oe(e,t,n,r,i){let a=typeof document<`u`&&!!document.startViewTransition,o=x(()=>t.value&&a);U(()=>o.value&&!n.isFullscreen?r.isOpen:!1,t=>{let r=()=>{e.value=t,document.documentElement.toggleAttribute(`data-video-focused`,t),n.fire(t?`focusstart`:`focusend`)};if(n.isFullscreen){r();return}De(i,`player-focus`,r)}),U(()=>n.isFullscreen,()=>{r.isOpen&&r.closeControls()});function s(t){t.key===`Escape`&&e.value&&r.closeControls()}return I(()=>document.addEventListener(`keydown`,s)),F(()=>document.removeEventListener(`keydown`,s)),{focusModeEnabled:o}}function ke(e,t){let n=z({width:0,height:0});function r(){n.value={width:window.innerWidth,height:window.innerHeight}}return I(()=>{r(),window.addEventListener(`resize`,r)}),F(()=>window.removeEventListener(`resize`,r)),x(()=>{if(!e.value)return{};let[r,i]=t.value.split(`:`).map(Number),a=Math.min(720,n.value.width-32),o=Math.min(n.value.height*d,n.value.height-32-140),s=a,c=s*i/r;return c>o&&(c=o,s=c*r/i),{width:`${s}px`,height:`${c}px`}})}const K=Symbol(`player`),q=Symbol(`hud`),J=Symbol(`action`),Ae=Symbol(`compact`);function Y(e){let t=k(e);if(t===void 0)throw Error(`[video-player] missing "${String(e.description)}" context — this component must be rendered inside <VideoPlayer>`);return t}function je(e,t,n){return{hudVisible:x(()=>!e.isReady||e.isError||t.isOpen&&e.isFullscreen?!1:t.showHUD),popupVisible:x(()=>!e.isReady||e.isError||n.value&&!e.isFullscreen?!1:t.isOpen)}}function Me(e,t,n){return x(()=>!(!e?.value||t.value||n.isFullscreen))}function Ne(e,t){let n=x(()=>e?.value??null),r=x(()=>!!n.value&&typeof n.value==`object`),i=x(()=>r.value?n.value:null),a=x(()=>n.value===`mute`?t.isMuted?`Unmute`:`Mute`:n.value===`loop`?t.isLooping?`Disable loop`:`Loop`:``);function o(){n.value===`mute`?t.toggleMute():n.value===`loop`&&t.toggleLoop()}return{currentAction:n,isCustom:r,customAction:i,builtinLabel:a,onBuiltinClick:o}}var X=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const Pe={},Fe={viewBox:`0 0 24 24`,fill:`currentColor`};function Ie(e,t){return L(),w(`svg`,Fe,[...t[0]||=[T(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var Le=X(Pe,[[`render`,Ie]]);const Re={},ze={viewBox:`0 0 24 24`,fill:`currentColor`};function Be(e,t){return L(),w(`svg`,ze,[...t[0]||=[T(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`},null,-1)]])}var Ve=X(Re,[[`render`,Be]]);const He={},Ue={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function We(e,t){return L(),w(`svg`,Ue,[...t[0]||=[E(`<line x1="4" y1="6" x2="20" y2="6"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="18" x2="20" y2="18"></line><circle cx="9" cy="6" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="15" cy="12" r="2.5" fill="currentColor" stroke="none"></circle><circle cx="9" cy="18" r="2.5" fill="currentColor" stroke="none"></circle>`,6)]])}var Ge=X(He,[[`render`,We]]);const Ke={},qe={viewBox:`0 0 24 24`,fill:`currentColor`};function Je(e,t){return L(),w(`svg`,qe,[...t[0]||=[T(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var Ye=X(Ke,[[`render`,Je]]);const Xe={},Ze={viewBox:`0 0 24 24`,fill:`currentColor`};function Qe(e,t){return L(),w(`svg`,Ze,[...t[0]||=[T(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var $e=X(Xe,[[`render`,Qe]]);const et={},tt={viewBox:`0 0 24 24`,fill:`currentColor`};function nt(e,t){return L(),w(`svg`,tt,[...t[0]||=[T(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var rt=X(et,[[`render`,nt]]);const it={},at={viewBox:`0 0 24 24`,fill:`currentColor`};function ot(e,t){return L(),w(`svg`,at,[...t[0]||=[T(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var st=X(it,[[`render`,ot]]);const ct={},lt={viewBox:`0 0 24 24`,fill:`currentColor`};function ut(e,t){return L(),w(`svg`,lt,[...t[0]||=[T(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var dt=X(ct,[[`render`,ut]]);const ft={},pt={viewBox:`0 0 24 24`,fill:`currentColor`};function mt(e,t){return L(),w(`svg`,pt,[...t[0]||=[T(`path`,{d:`M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z`},null,-1)]])}var ht=X(ft,[[`render`,mt]]);const gt={},_t={viewBox:`0 0 24 24`,fill:`currentColor`};function vt(e,t){return L(),w(`svg`,_t,[...t[0]||=[T(`path`,{d:`M16.5 12A4.5 4.5 0 0 0 14 7.97v2.21l2.45 2.45c.03-.2.05-.41.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51A8.796 8.796 0 0 0 21 12c0-4.28-2.99-7.86-7-8.77v2.06c2.89.86 5 3.54 5 6.71zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.18v2.06A8.99 8.99 0 0 0 17.73 18L19 19.27 20.27 18 5.27 3 4.27 3zM12 4L9.91 6.09 12 8.18V4z`},null,-1)]])}var yt=X(gt,[[`render`,vt]]);const bt={},xt={viewBox:`0 0 24 24`,fill:`currentColor`};function St(e,t){return L(),w(`svg`,xt,[...t[0]||=[T(`path`,{d:`M3 9v6h4l5 5V4L7 9H3zm13.5 3A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02z`},null,-1)]])}var Ct=X(bt,[[`render`,St]]);const wt=[`aria-label`];var Z=X(O({__name:`PlayPauseButton`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,required:!1,default:!1},size:{type:String,required:!1,default:`sm`}},emits:[`toggle-play`],setup(e){let t=e,n=x(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,r)=>(L(),w(`button`,{class:M([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":n.value,onClick:r[0]||=G(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(L(),S(H(st),{key:0})):e.hasEnded?(L(),S(H(ht),{key:1})):(L(),S(H(dt),{key:2}))],10,wt))}}),[[`__scopeId`,`data-v-85902525`]]),Tt=O({__name:`VolumeIcon`,setup(e){let t=Y(K),n=x(()=>!t.isMuted&&t.vol>0);return(e,t)=>n.value?(L(),S(H(Ct),{key:0})):(L(),S(H(yt),{key:1}))}}),Q=X(O({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(L(),w(`div`,{class:`spinner`,style:P({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Et={class:`hud`},Dt=[`aria-label`],Ot=[`aria-label`],kt=[`aria-label`,`innerHTML`],At={key:3,class:`hud__spacer`},jt={class:`hud__play-wrap`},Mt={key:5,class:`hud__spacer`};var Nt=X(O({__name:`HudButtons`,props:{isFocused:{type:Boolean,required:!1,default:!1}},setup(e){let t=Y(K),n=Y(q),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,onBuiltinClick:s}=Ne(k(J),t);return(c,l)=>(L(),w(`div`,Et,[!e.isFocused&&H(r)===`mute`?(L(),w(`button`,{key:0,class:M([`hud__btn`,{"hud__btn--active":H(t).isMuted}]),"aria-label":H(o),onClick:l[0]||=G((...e)=>H(s)&&H(s)(...e),[`stop`])},[D(Tt)],10,Dt)):!e.isFocused&&H(r)===`loop`?(L(),w(`button`,{key:1,class:M([`hud__btn`,{"hud__btn--active":H(t).isLooping}]),"aria-label":H(o),onClick:l[1]||=G((...e)=>H(s)&&H(s)(...e),[`stop`])},[D(H(rt))],10,Ot)):!e.isFocused&&H(i)&&H(a)?(L(),w(`button`,{key:2,class:`hud__btn`,"aria-label":H(a).label,onClick:l[2]||=G(e=>H(a).onClick(),[`stop`]),innerHTML:H(a).icon},null,8,kt)):(L(),w(`div`,At)),T(`div`,jt,[D(Z,{"is-playing":H(t).isPlaying,"has-ended":H(t).hasEnded,size:`lg`,onTogglePlay:H(t).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),H(t).isBuffering?(L(),S(Q,{key:0,class:`hud__buf-spinner`})):C(`v-if`,!0)]),e.isFocused?(L(),w(`div`,Mt)):(L(),w(`button`,{key:4,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[3]||=G((...e)=>H(n).openControls&&H(n).openControls(...e),[`stop`])},[D(H(Ge))]))]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);function Pt(e){let t=z(null),n=x(()=>t.value??e.progress),r=null;function i(){r&&clearTimeout(r),r=null,t.value=null}function a(e){r&&clearTimeout(r),r=null,t.value=Number(e.target.value)}function o(n){let a=Number(n.target.value);t.value=a,e.seek(a),r&&clearTimeout(r),r=setTimeout(i,s)}return U(()=>e.current,()=>{if(t.value===null||!e.total)return;let n=t.value/100*e.total;Math.abs(e.current-n)<1&&i()}),F(i),{displaySeek:n,onSeekInput:a,onSeekChange:o}}function Ft(e){function t(){let t=h.indexOf(e.playbackRate);e.setPlaybackRate(h[(t+1)%h.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}const It={class:`controls__vol-header`},Lt=[`aria-label`],Rt={class:`controls__vol-body`},zt=[`value`],Bt={class:`controls__vol-pct`};var Vt=X(O({__name:`VolumePanel`,emits:[`back`],setup(e){let t=Y(K),n=Y(q),r=x(()=>t.isMuted?0:Math.round(t.vol*100));function i(e){t.setVolume(Number(e.target.value)/100)}return(e,a)=>(L(),w(y,null,[T(`div`,It,[T(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:a[0]||=t=>e.$emit(`back`)},[D(H(Le))]),a[6]||=T(`span`,{class:`controls__vol-label`},`Volume`,-1),T(`button`,{class:`controls__btn`,"aria-label":H(t).isMuted?`Unmute`:`Mute`,onClick:a[1]||=e=>H(t).toggleMute()},[D(Tt)],8,Lt)]),T(`div`,Rt,[T(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`controls__vol-slider`,style:P({"--v":r.value+`%`}),"aria-label":`Volume`,onInput:i,onMousedown:a[2]||=e=>H(n).pauseHide(),onMouseup:a[3]||=e=>H(n).scheduleHide(),onTouchstartPassive:a[4]||=e=>H(n).pauseHide(),onTouchend:a[5]||=e=>H(n).scheduleHide()},null,44,zt),T(`span`,Bt,B(r.value)+`%`,1)])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);const Ht=[`value`],Ut={class:`controls__row`},Wt={class:`controls__play-wrap`},Gt={class:`controls__time`},Kt=[`aria-label`,`innerHTML`],qt={key:3,class:`controls__fs-wrap`},Jt=[`aria-label`];var Yt=X(O({__name:`ControlsPopup`,props:{focusMode:{type:Boolean,required:!1,default:!1}},setup(e){let t=e,n=Y(K),r=Y(q),i=Me(k(Ae),V(t,`focusMode`),n),{isCustom:a,customAction:s}=Ne(k(J),n),c=z(!1),l=z(null);F(()=>{c.value=!1});function u(e){r.suppressMouseLeave(),De(l,`controls-popup`,e)}function d(){if(o()){n.toggleMute();return}u(()=>{c.value=!0})}let{displaySeek:f,onSeekInput:p,onSeekChange:m}=Pt(n),{cycleRate:h,fmtRate:g}=Ft(n);return(t,o)=>(L(),w(`div`,{ref_key:`popupEl`,ref:l,class:M([`controls`,{"controls--fs":H(n).isFullscreen||e.focusMode}]),onMousemove:o[13]||=G((...e)=>H(r).keepOpen&&H(r).keepOpen(...e),[`stop`])},[c.value?(L(),S(Vt,{key:0,onBack:o[0]||=e=>u(()=>c.value=!1)})):(L(),w(y,{key:1},[H(i)?C(`v-if`,!0):(L(),w(`input`,{key:0,type:`range`,min:`0`,max:`100`,value:H(f),class:`controls__seek`,style:P({"--p":H(f)+`%`,"--b":H(n).bufferedDisplay+`%`}),onInput:o[1]||=(...e)=>H(p)&&H(p)(...e),onChange:o[2]||=(...e)=>H(m)&&H(m)(...e),onMousedown:o[3]||=e=>H(r).pauseHide(),onMouseup:o[4]||=e=>H(r).scheduleHide(),onTouchstartPassive:o[5]||=e=>H(r).pauseHide(),onTouchend:o[6]||=e=>H(r).scheduleHide()},null,44,Ht)),T(`div`,Ut,[T(`div`,Wt,[H(n).isBuffering?(L(),S(Q,{key:0})):(L(),S(Z,{key:1,"is-playing":H(n).isPlaying,"has-ended":H(n).hasEnded,size:`sm`,onTogglePlay:o[7]||=e=>H(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),T(`span`,Gt,B(H(n).fmt(H(n).current))+` / `+B(H(n).fmt(H(n).total)),1),!H(i)&&H(n).supportsPlaybackRate?(L(),w(`button`,{key:0,class:M([`controls__btn controls__btn--rate`,{"controls__btn--active":H(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:o[8]||=(...e)=>H(h)&&H(h)(...e)},B(H(g)(H(n).playbackRate)),3)):C(`v-if`,!0),H(i)?C(`v-if`,!0):(L(),w(`button`,{key:1,class:M([`controls__btn`,{"controls__btn--active":H(n).isLooping}]),"aria-label":`Toggle loop`,onClick:o[9]||=e=>H(n).toggleLoop()},[D(H(rt))],2)),T(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:d},[D(Tt)]),H(a)&&H(s)?(L(),w(`button`,{key:2,class:`controls__btn`,"aria-label":H(s).label,onClick:o[10]||=e=>H(s).onClick(),innerHTML:H(s).icon},null,8,Kt)):C(`v-if`,!0),H(i)?C(`v-if`,!0):(L(),w(`div`,qt,[H(n).isFullscreenPending?(L(),S(Q,{key:0})):(L(),w(`button`,{key:1,class:`controls__btn`,"aria-label":H(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:o[11]||=e=>H(n).toggleFullscreen()},[H(n).isFullscreen?(L(),S(H($e),{key:0})):(L(),S(H(Ye),{key:1}))],8,Jt))])),T(`button`,{class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:o[12]||=e=>H(r).closeControls()},[D(H(Ve))])])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Xt={key:0,class:`overlay__spinner`},Zt={key:0,class:`overlay__error`};var Qt=X(O({__name:`PlayerOverlay`,props:{focusMode:{type:Boolean,required:!1,default:!1},isFocused:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},setup(e){let t=e,n=Y(K),r=Y(q),{hudVisible:i,popupVisible:a}=je(n,r,V(t,`focusMode`));return(t,o)=>(L(),w(y,null,[e.disableTapCapture?C(`v-if`,!0):(L(),w(`div`,{key:0,class:`overlay__tap-capture`,style:P({pointerEvents:!H(n).hasStarted||H(n).isAdPlaying?`none`:void 0}),onClick:o[0]||=(...e)=>H(r).onVideoTap&&H(r).onVideoTap(...e),onTouchend:o[1]||=G((...e)=>H(r).onVideoTap&&H(r).onVideoTap(...e),[`prevent`,`stop`])},null,36)),D(b,{name:`fade`},{default:W(()=>[!H(n).isReady&&!H(n).isError?(L(),w(`div`,Xt,[D(Q,{size:40,"border-width":3})])):C(`v-if`,!0)]),_:1}),D(b,{name:`fade`},{default:W(()=>[H(n).isError?(L(),w(`div`,Zt,[T(`p`,null,B(H(n).errorMessage||`This video could not be played.`),1),T(`button`,{class:`overlay__retry`,onClick:o[2]||=G((...e)=>H(n).retry&&H(n).retry(...e),[`stop`])},`Retry`)])):C(`v-if`,!0)]),_:1}),T(`div`,{class:M([`overlay__hud`,{"overlay__hud--visible":H(i)}])},[D(Nt,{"is-focused":e.isFocused},null,8,[`is-focused`])],2),D(b,{name:`popup`},{default:W(()=>[H(a)?(L(),w(`div`,{key:0,class:M([`overlay__popup`,{"overlay__popup--fs":H(n).isFullscreen}]),onClick:o[3]||=G(()=>{},[`stop`])},[D(Yt)],2)):C(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-f3307b98`]]);const $t=[`data-focused`],en={"data-vjs-player":``},tn=[`poster`],nn={key:1,class:`player__native-play`};var $=X(O({__name:`VideoPlayer`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:p},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1,default:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1,default:!1},disableTapCapture:{type:Boolean,required:!1,default:!1}},emits:[`state-change`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=z(null),o=ee(Te(a,r,i)),s=z(!1),c=ee(Ee(V(o,`isPlaying`),s));R(K,o),R(q,c),R(J,V(r,`action`));let{isPortrait:l,cssRatio:u}=f(r.aspectRatio),d=z(null),{focusModeEnabled:p}=Oe(s,V(r,`focusMode`),o,c,d),m=ke(s,V(r,`aspectRatio`)),h=x(()=>!r.poster&&!o.isReady);return t(o),(e,t)=>(L(),w(`div`,{class:`player`,"data-focused":s.value?``:null},[s.value?(L(),w(`div`,{key:0,class:M([`player__placeholder`,{"player__shell--portrait":H(l)}]),style:P({aspectRatio:H(u)})},null,6)):C(`v-if`,!0),s.value?(L(),w(`div`,{key:1,class:`player__backdrop`,onClick:t[0]||=e=>c.closeControls()})):C(`v-if`,!0),T(`div`,{ref_key:`focusFrameEl`,ref:d,class:M([`player__focus-frame`,{"player__focus-frame--active":s.value}])},[T(`div`,{class:M([`player__shell`,{"player__shell--portrait":H(l)}]),style:P([{aspectRatio:H(u)},H(m)]),onMousemove:t[1]||=e=>c.onMouseMove(),onContextmenuCapture:t[2]||=G(()=>{},[`prevent`]),onMouseleave:t[3]||=e=>c.onMouseLeave()},[T(`div`,en,[T(`video`,{ref_key:`videoEl`,ref:a,class:M([`video-js`,{"video-js--hidden":h.value}]),poster:r.poster,playsinline:``},null,10,tn),o.nativeUi?C(`v-if`,!0):(L(),S(Qt,{key:0,"focus-mode":H(p),"is-focused":s.value,"disable-tap-capture":r.disableTapCapture},null,8,[`focus-mode`,`is-focused`,`disable-tap-capture`])),o.nativeUi&&!o.hasStarted?(L(),w(`div`,nn,[D(Z,{"is-playing":!1,size:`lg`,onTogglePlay:o.togglePlay},null,8,[`onTogglePlay`])])):C(`v-if`,!0)])],38),s.value?(L(),w(`div`,{key:0,class:`player__focus-controls`,onClick:t[4]||=G(()=>{},[`stop`])},[D(Yt,{"focus-mode":``})])):C(`v-if`,!0)],2)],8,$t))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const rn=z(0),an=x(()=>rn.value>0);function on(){rn.value++}function sn(){rn.value--}function cn(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function ln(e,t){let n=e=>t(e.detail);I(()=>window.addEventListener(e,n)),F(()=>window.removeEventListener(e,n))}const un=[`src`],dn={class:`stage__idle-body`},fn={class:`stage__idle-btn`},pn={class:`stage__idle-title`},mn={key:1,class:`stage__idle-empty`};var hn=X(O({__name:`VideoStage`,props:{pinPosition:{type:String,required:!1,default:`bottom-right`}},emits:[`state-change`],setup(e,{emit:i}){let a=i,o=z(null),s=z(null),c=z(!1),l=z(!1),u=z(null),d=z(null),p=z(!1);R(Ae,p);let m=x(()=>p.value&&!!s.value&&c.value),h=x(()=>f(s.value?.aspectRatio||`16:9`).cssRatio),g=z(null),_=z(null);U(p,e=>{g.value=e&&d.value?{height:d.value.offsetHeight,width:d.value.offsetWidth}:null});let v=x(()=>{if(!g.value)return{};let{height:e,width:t}=g.value,n=_.value&&t?_.value/t:1;return{height:`${Math.round(e*n)}px`}}),b=null,E=null;function O(){b?.disconnect(),E?.disconnect(),u.value&&(b=new IntersectionObserver(([e])=>{p.value=!e.isIntersecting},{threshold:1}),b.observe(u.value),E=new ResizeObserver(([e])=>{_.value=e.contentRect.width}),E.observe(u.value))}U(u,O);function k(){s.value&&(s.value={...s.value,autoplay:!0},c.value=!0)}function j(){s.value=null,c.value=!1,l.value=!1,p.value=!1,g.value=null,N()}function N(){cn(t,{currentVideoUrl:s.value?.videoUrl??null,isPlaying:l.value})}function ee(e){if(s.value?.videoUrl===e.videoUrl&&c.value){o.value?.togglePlay();return}s.value=e,c.value=!1,l.value=!1,N(),c.value=!0}function V(e){if(!(!s.value||e.videoUrl!==s.value.videoUrl)){if(!c.value){s.value={...s.value,autoplay:!0},c.value=!0;return}o.value?.togglePlay()}}function W(e){e.type===`play`&&(l.value=!0),(e.type===`pause`||e.type===`ended`)&&(l.value=!1),N(),a(`state-change`,e)}return ln(n,ee),ln(r,V),I(on),F(()=>{sn(),b?.disconnect(),E?.disconnect()}),(t,n)=>(L(),w(`div`,{ref_key:`wrapperEl`,ref:u,class:`stage-wrapper`,style:P(v.value)},[T(`div`,{ref_key:`stageEl`,ref:d,class:M([`stage`,{"stage--minified":m.value,[`stage--pin-${e.pinPosition}`]:m.value}])},[m.value?(L(),w(`button`,{key:0,class:`stage__dismiss`,"aria-label":`Close`,onClick:G(j,[`stop`])},[D(H(Ve))])):C(`v-if`,!0),s.value&&c.value?(L(),S($,A({ref_key:`playerRef`,ref:o,key:s.value.videoUrl},s.value,{onStateChange:W}),null,16)):(L(),w(`div`,{key:2,class:`stage__idle`,style:P({aspectRatio:h.value}),onClick:k},[s.value?.poster?(L(),w(`img`,{key:0,src:s.value.poster,class:`stage__idle-poster`},null,8,un)):C(`v-if`,!0),n[0]||=T(`div`,{class:`stage__idle-scrim`},null,-1),T(`div`,dn,[s.value?(L(),w(y,{key:0},[T(`div`,fn,[D(H(dt))]),T(`p`,pn,B(s.value.title),1)],64)):(L(),w(`p`,mn,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const gn={class:`placeholder`},_n=[`src`,`alt`],vn={class:`placeholder__btn-wrap`},yn={key:2,class:`placeholder__footer`},bn={class:`placeholder__title`};var xn=X(O({__name:`VideoPlaceholder`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:p},platform:{type:String,required:!1,default:``},techOptions:{type:Object,required:!1,default:()=>({})},adTagUrl:{type:String,required:!1,default:``},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1,default:!1},autoStage:{type:Boolean,required:!1,default:!1},lazy:{type:Boolean,required:!1},payload:{type:Object,required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},setup(e){let r=e,{isPortrait:i,cssRatio:a}=f(r.aspectRatio),o=z(!1),s=z(!1);ln(t,e=>{o.value=e.currentVideoUrl===r.videoUrl,s.value=o.value&&e.isPlaying});function c(e){cn(n,{...r,...e!==void 0&&{autoplay:e}})}function l(){c(!0)}return I(()=>{r.autoStage&&c()}),(t,n)=>(L(),w(`div`,gn,[T(`div`,{class:M([`placeholder__shell`,{"placeholder__shell--portrait":H(i),"placeholder__shell--active":o.value}]),style:P({aspectRatio:H(a)}),onClick:l},[e.poster?(L(),w(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,_n)):C(`v-if`,!0),n[0]||=T(`div`,{class:`placeholder__scrim`},null,-1),e.platform?(L(),w(`span`,{key:1,class:M([`placeholder__badge`,`badge--${e.platform}`])},B(e.platform),3)):C(`v-if`,!0),T(`div`,vn,[D(Z,{"is-playing":o.value&&s.value,size:`lg`,onTogglePlay:l},null,8,[`is-playing`])]),e.title?(L(),w(`div`,yn,[T(`p`,bn,B(e.title),1)])):C(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),Sn=O({__name:`VideoItem`,props:{videoUrl:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},platform:{type:String,required:!1},techOptions:{type:Object,required:!1},adTagUrl:{type:String,required:!1},imaOptions:{type:Object,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1},playbackRate:{type:Number,required:!1},nativeUi:{type:Boolean,required:!1},autoStage:{type:Boolean,required:!1},lazy:{type:Boolean,required:!1,default:!0},payload:{type:Object,required:!1},action:{type:[String,Object,null],required:!1,default:null},focusMode:{type:Boolean,required:!1},disableTapCapture:{type:Boolean,required:!1}},emits:[`state-change`],setup(e,{emit:t}){let n=e,r=t,i=z(!1);return(e,t)=>H(an)?(L(),S(xn,N(A({key:0},n)),null,16)):(L(),w(y,{key:1},[n.lazy&&!i.value&&!n.autoplay?(L(),S(xn,A({key:0},n,{onClickCapture:t[0]||=e=>i.value=!0}),null,16)):(L(),S($,A({key:1},n,{autoplay:i.value||n.autoplay,onStateChange:t[1]||=e=>r(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const Cn={install(e){e.component(`VideoPlayer`,$),e.component(`VideoStage`,hn),e.component(`VideoPlaceholder`,xn),e.component(`VideoItem`,Sn)}};export{J as ActionKey,Ae as CompactKey,q as HudKey,K as PlayerKey,Sn as VideoItem,xn as VideoPlaceholder,$ as VideoPlayer,Cn as VideoPlayerPlugin,Cn as default,hn as VideoStage,ie as getPlatform,Y as injectStrict};
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .ppbtn[data-v-85902525]{backdrop-filter:blur(12px);will-change:backdrop-filter;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.ppbtn[data-v-85902525]:hover{background:#fff3;transform:scale(1.08)}.ppbtn--lg[data-v-85902525]{background:var(--mvp-btn-bg,#ffffff1a);width:64px;height:64px;color:var(--mvp-btn-color,#fff)}.ppbtn--lg svg[data-v-85902525]{width:28px;height:28px}.ppbtn--lg[data-v-85902525]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12)}.ppbtn--sm[data-v-85902525]{color:#ffffffbf;background:0 0;border:none;border-radius:8px;width:30px;height:30px}.ppbtn--sm svg[data-v-85902525]{width:16px;height:16px}.ppbtn--sm[data-v-85902525]:hover{color:#fff;background:#ffffff1a;transform:none}@keyframes spin-259be2b2{to{transform:rotate(360deg)}}.spinner[data-v-259be2b2]{border-style:solid;border-color:#fffc #ffffff26 #ffffff26;border-radius:50%;animation:.75s linear infinite spin-259be2b2}.hud[data-v-a6d118e7]{align-items:center;gap:20px;display:flex}.hud__play-wrap[data-v-a6d118e7]{display:flex;position:relative}.hud__buf-spinner[data-v-a6d118e7]{margin-top:8px;position:absolute;top:100%;left:calc(50% - 7px)}.hud__spacer[data-v-a6d118e7]{flex-shrink:0;width:44px;height:44px}.hud__btn[data-v-a6d118e7]{background:var(--mvp-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:44px;height:44px;color:var(--mvp-btn-color,#fff);cursor:pointer;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.hud__btn svg[data-v-a6d118e7]{width:18px;height:18px}.hud__btn[data-v-a6d118e7]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.hud__btn--active[data-v-a6d118e7]{color:#93c5fd;background:#3b82f64d;border-color:#3b82f680}.hud__btn--active[data-v-a6d118e7]:hover{background:#3b82f673}.controls__vol-header[data-v-10b0ae67]{align-items:center;gap:4px;display:flex}.controls__vol-label[data-v-10b0ae67]{color:#ffffffe6;flex:1;padding:0 4px;font-size:.8rem;font-weight:600}.controls__vol-body[data-v-10b0ae67]{align-items:center;gap:12px;padding:6px 0 4px;display:flex}.controls__vol-pct[data-v-10b0ae67]{font-variant-numeric:tabular-nums;color:#fff9;text-align:right;min-width:32px;font-size:.75rem;font-weight:600}.controls__vol-slider[data-v-10b0ae67]{-webkit-appearance:none;appearance:none;cursor:pointer;background:linear-gradient(to right, #fff 0%, #fff var(--v), #ffffff26 var(--v), #ffffff26 100%);outline:none;flex:1;height:5px;transition:height .15s}.controls__vol-slider[data-v-10b0ae67]:hover{height:7px}.controls__vol-slider[data-v-10b0ae67]::-webkit-slider-runnable-track{background:0 0;height:5px}.controls__vol-slider[data-v-10b0ae67]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px;margin-top:-5.5px;transition:transform .15s;box-shadow:0 0 0 3px #fff3}.controls__vol-slider[data-v-10b0ae67]:hover::-webkit-slider-thumb{transform:scale(1.2)}.controls__vol-slider[data-v-10b0ae67]::-moz-range-track{background:#ffffff26;height:5px}.controls__vol-slider[data-v-10b0ae67]::-moz-range-progress{background:#fff;height:5px}.controls__vol-slider[data-v-10b0ae67]::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 3px #fff3}::view-transition-old(controls-popup),::view-transition-new(controls-popup){animation-duration:.22s;animation-timing-function:ease-in-out}.controls__btn{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s,color .15s;display:flex}.controls__btn svg{width:16px;height:16px}.controls__btn:hover{color:#fff;background:#ffffff1a}.controls[data-v-5712aad4]{-webkit-backdrop-filter:blur(20px);background:#0a0a0ed1;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;width:min(340px,100% - 32px);padding:14px 16px 12px;display:flex;box-shadow:0 8px 32px #00000080}.controls--fs[data-v-5712aad4]{width:100%}.controls__seek[data-v-5712aad4]{-webkit-appearance:none;appearance:none;cursor:pointer;box-sizing:border-box;background:padding-box content-box;background-image:linear-gradient(to right, #3b82f6 0%, #3b82f6 var(--p), #ffffff4d var(--p), #ffffff4d var(--b), #ffffff1a var(--b), #ffffff1a 100%);outline:none;width:100%;height:20px;padding:8px 0}.controls__seek[data-v-5712aad4]::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek[data-v-5712aad4]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#3b82f6;border-radius:50%;width:14px;height:14px;margin-top:-5px;transition:transform .15s;box-shadow:0 0 0 3px #3b82f64d}.controls__seek[data-v-5712aad4]:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek[data-v-5712aad4]::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek[data-v-5712aad4]::-moz-range-progress{background:#3b82f6;height:4px}.controls__seek[data-v-5712aad4]::-moz-range-thumb{cursor:pointer;background:#3b82f6;border:none;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 3px #3b82f64d}.controls__row[data-v-5712aad4]{align-items:center;gap:4px;display:flex}.controls__time[data-v-5712aad4]{font-variant-numeric:tabular-nums;color:#fff9;letter-spacing:.02em;flex:1;padding:0 4px;font-size:.7rem;font-weight:500}.controls__play-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.controls__btn--rate[data-v-5712aad4]{font-variant-numeric:tabular-nums;letter-spacing:.02em;width:auto;min-width:30px;padding:0 4px;font-size:.65rem;font-weight:700}.controls__btn--active[data-v-5712aad4]{color:#3b82f6}.controls__btn--active[data-v-5712aad4]:hover{color:#60a5fa}.controls__btn--close[data-v-5712aad4]{color:#fff6}.controls__btn--close[data-v-5712aad4]:hover{color:#fffc}.controls__fs-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.overlay__tap-capture[data-v-f3307b98]{z-index:2;position:absolute;inset:0}.overlay__spinner[data-v-f3307b98]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fade-enter-active[data-v-f3307b98],.fade-leave-active[data-v-f3307b98]{transition:opacity .25s}.fade-enter-from[data-v-f3307b98],.fade-leave-to[data-v-f3307b98]{opacity:0}.overlay__error[data-v-f3307b98]{z-index:6;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex;position:absolute;inset:0}.overlay__error p[data-v-f3307b98]{color:#ffffffb3;text-align:center;max-width:260px;font-size:.875rem;line-height:1.5}.overlay__retry[data-v-f3307b98]{pointer-events:auto;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:background .15s}.overlay__retry[data-v-f3307b98]:hover{background:#fff3}.overlay__hud[data-v-f3307b98]{z-index:4;opacity:0;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.overlay__hud--visible[data-v-f3307b98]{opacity:1}.overlay__popup[data-v-f3307b98]{z-index:5;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.overlay__popup--fs[data-v-f3307b98]{align-items:flex-end}.popup-enter-active[data-v-f3307b98],.popup-leave-active[data-v-f3307b98]{transition:opacity .2s,transform .2s}.popup-enter-from[data-v-f3307b98],.popup-leave-to[data-v-f3307b98]{opacity:0;transform:scale(.95)}.vjs-svg-icon{fill:currentColor;background-position:50%;background-repeat:no-repeat;width:1.8em;height:1.8em;display:inline-block}.vjs-svg-icon:before{content:none!important}.vjs-svg-icon:hover,.vjs-control:focus .vjs-svg-icon{filter:drop-shadow(0 0 .25em #fff)}.vjs-modal-dialog .vjs-modal-dialog-content,.video-js .vjs-modal-dialog,.vjs-button>.vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{width:100%;height:100%;position:absolute;top:0;left:0}.vjs-button>.vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{text-align:center}@font-face{font-family:VideoJS;src:url(data:application/font-woff;charset=utf-8;base64,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)format("woff");font-weight:400;font-style:normal}.vjs-icon-play,.video-js .vjs-play-control .vjs-icon-placeholder,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-play:before,.video-js .vjs-play-control .vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{content:""}.vjs-icon-play-circle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-play-circle:before{content:""}.vjs-icon-pause,.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-pause:before,.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-mute,.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-mute:before,.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-low,.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-low:before,.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-mid,.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-mid:before,.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-high,.video-js .vjs-mute-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-high:before,.video-js .vjs-mute-control .vjs-icon-placeholder:before{content:""}.vjs-icon-fullscreen-enter,.video-js .vjs-fullscreen-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-fullscreen-enter:before,.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before{content:""}.vjs-icon-fullscreen-exit,.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-fullscreen-exit:before,.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before{content:""}.vjs-icon-spinner{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-spinner:before{content:""}.vjs-icon-subtitles,.video-js .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-subtitles-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-subtitles:before,.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-subtitles-button .vjs-icon-placeholder:before{content:""}.vjs-icon-captions,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-captions-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-captions:before,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-captions-button .vjs-icon-placeholder:before{content:""}.vjs-icon-hd{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-hd:before{content:""}.vjs-icon-chapters,.video-js .vjs-chapters-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-chapters:before,.video-js .vjs-chapters-button .vjs-icon-placeholder:before{content:""}.vjs-icon-downloading{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-downloading:before{content:""}.vjs-icon-file-download{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download:before{content:""}.vjs-icon-file-download-done{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download-done:before{content:""}.vjs-icon-file-download-off{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download-off:before{content:""}.vjs-icon-share{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-share:before{content:""}.vjs-icon-cog{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cog:before{content:""}.vjs-icon-square{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-square:before{content:""}.vjs-icon-circle,.vjs-seek-to-live-control .vjs-icon-placeholder,.video-js .vjs-volume-level,.video-js .vjs-play-progress{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle:before,.vjs-seek-to-live-control .vjs-icon-placeholder:before,.video-js .vjs-volume-level:before,.video-js .vjs-play-progress:before{content:""}.vjs-icon-circle-outline{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle-outline:before{content:""}.vjs-icon-circle-inner-circle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle-inner-circle:before{content:""}.vjs-icon-cancel,.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cancel:before,.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before{content:""}.vjs-icon-repeat{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-repeat:before{content:""}.vjs-icon-replay,.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay:before,.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-5,.video-js .vjs-skip-backward-5 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-5:before,.video-js .vjs-skip-backward-5 .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-10,.video-js .vjs-skip-backward-10 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-10:before,.video-js .vjs-skip-backward-10 .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-30,.video-js .vjs-skip-backward-30 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-30:before,.video-js .vjs-skip-backward-30 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-5,.video-js .vjs-skip-forward-5 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-5:before,.video-js .vjs-skip-forward-5 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-10,.video-js .vjs-skip-forward-10 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-10:before,.video-js .vjs-skip-forward-10 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-30,.video-js .vjs-skip-forward-30 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-30:before,.video-js .vjs-skip-forward-30 .vjs-icon-placeholder:before{content:""}.vjs-icon-audio,.video-js .vjs-audio-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-audio:before,.video-js .vjs-audio-button .vjs-icon-placeholder:before{content:""}.vjs-icon-next-item{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-next-item:before{content:""}.vjs-icon-previous-item{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-previous-item:before{content:""}.vjs-icon-shuffle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-shuffle:before{content:""}.vjs-icon-cast{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cast:before{content:""}.vjs-icon-picture-in-picture-enter,.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-picture-in-picture-enter:before,.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before{content:""}.vjs-icon-picture-in-picture-exit,.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-picture-in-picture-exit:before,.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before{content:""}.vjs-icon-facebook{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-facebook:before{content:""}.vjs-icon-linkedin{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-linkedin:before{content:""}.vjs-icon-twitter{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-twitter:before{content:""}.vjs-icon-tumblr{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-tumblr:before{content:""}.vjs-icon-pinterest{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-pinterest:before{content:""}.vjs-icon-audio-description,.video-js .vjs-descriptions-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-audio-description:before,.video-js .vjs-descriptions-button .vjs-icon-placeholder:before{content:""}.video-js{vertical-align:top;box-sizing:border-box;color:#fff;word-break:initial;background-color:#000;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-style:normal;font-weight:400;line-height:1;display:inline-block;position:relative}.video-js:-moz-full-screen{position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.video-js[tabindex="-1"]{outline:none}.video-js *,.video-js :before,.video-js :after{box-sizing:inherit}.video-js ul{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;list-style-position:outside}.video-js.vjs-fluid,.video-js.vjs-16-9,.video-js.vjs-4-3,.video-js.vjs-9-16,.video-js.vjs-1-1{width:100%;max-width:100%}.video-js.vjs-fluid:not(.vjs-audio-only-mode),.video-js.vjs-16-9:not(.vjs-audio-only-mode),.video-js.vjs-4-3:not(.vjs-audio-only-mode),.video-js.vjs-9-16:not(.vjs-audio-only-mode),.video-js.vjs-1-1:not(.vjs-audio-only-mode){height:0}.video-js.vjs-16-9:not(.vjs-audio-only-mode){padding-top:56.25%}.video-js.vjs-4-3:not(.vjs-audio-only-mode){padding-top:75%}.video-js.vjs-9-16:not(.vjs-audio-only-mode){padding-top:177.778%}.video-js.vjs-1-1:not(.vjs-audio-only-mode){padding-top:100%}.video-js.vjs-fill:not(.vjs-audio-only-mode){width:100%;height:100%}.video-js .vjs-tech{width:100%;height:100%;position:absolute;top:0;left:0}.video-js.vjs-audio-only-mode .vjs-tech{display:none}body.vjs-full-window,body.vjs-pip-window{height:100%;margin:0;padding:0}.vjs-full-window .video-js.vjs-fullscreen,body.vjs-pip-window .video-js{z-index:1000;position:fixed;inset:0;overflow:hidden}.video-js.vjs-fullscreen:not(.vjs-ios-native-fs),body.vjs-pip-window .video-js{display:block;width:100%!important;height:100%!important;padding-top:0!important}.video-js.vjs-fullscreen.vjs-user-inactive{cursor:none}.vjs-pip-container .vjs-pip-text{text-align:center;background-color:#000000b3;width:100%;padding:.5em;font-size:2em;position:absolute;bottom:10%}.vjs-layout-tiny.vjs-pip-container .vjs-pip-text,.vjs-layout-x-small.vjs-pip-container .vjs-pip-text,.vjs-layout-small.vjs-pip-container .vjs-pip-text{font-size:1.4em;bottom:0}.vjs-hidden{display:none!important}.vjs-disabled{opacity:.5;cursor:default}.video-js .vjs-offscreen{width:1px;height:1px;position:absolute;top:0;left:-9999px}.vjs-lock-showing{opacity:1!important;visibility:visible!important;display:block!important}.vjs-no-js{color:#fff;text-align:center;background-color:#000;width:300px;height:150px;margin:0 auto;padding:20px;font-family:Arial,Helvetica,sans-serif;font-size:18px}.vjs-no-js a,.vjs-no-js a:visited{color:#66a8cc}.video-js .vjs-big-play-button{cursor:pointer;opacity:1;background-color:#2b333fb3;border:.06666em solid #fff;border-radius:.3em;width:3em;height:1.63332em;margin-top:-.81666em;margin-left:-1.5em;padding:0;font-size:3em;line-height:1.5em;transition:all .4s;display:block;position:absolute;top:50%;left:50%}.vjs-big-play-button .vjs-svg-icon{width:1em;height:1em;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-js:hover .vjs-big-play-button,.video-js .vjs-big-play-button:focus{background-color:#73859f80;border-color:#fff;transition:all}.vjs-controls-disabled .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button,.vjs-error .vjs-big-play-button{display:none}.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause:not(.vjs-seeking,.vjs-scrubbing,.vjs-error) .vjs-big-play-button{display:block}.video-js button{color:inherit;font-size:inherit;line-height:inherit;text-transform:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:none;text-decoration:none;transition:none;display:inline-block}.video-js.vjs-spatial-navigation-enabled .vjs-button:focus{box-shadow:none;outline:.0625em solid #fff}.vjs-control .vjs-button{width:100%;height:100%}.video-js .vjs-control.vjs-close-button{cursor:pointer;z-index:2;height:3em;position:absolute;top:.5em;right:0}.video-js .vjs-modal-dialog{background:linear-gradient(#000c,#fff0);overflow:auto}.video-js .vjs-modal-dialog>*{box-sizing:border-box}.vjs-modal-dialog .vjs-modal-dialog-content{z-index:1;padding:20px 24px;font-size:1.2em;line-height:1.5}.vjs-menu-button{cursor:pointer}.vjs-menu-button.vjs-disabled{cursor:default}.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu{display:none}.vjs-menu .vjs-menu-content{margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;display:block;overflow:auto}.vjs-menu .vjs-menu-content>*{box-sizing:border-box}.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu{display:none}.vjs-menu li{text-align:center;text-transform:lowercase;justify-content:center;margin:0;padding:.2em 0;font-size:1.2em;line-height:1.4em;list-style:none;display:flex}.vjs-menu li.vjs-menu-item:focus,.vjs-menu li.vjs-menu-item:hover,.js-focus-visible .vjs-menu li.vjs-menu-item:hover{background-color:#73859f80}.vjs-menu li.vjs-selected,.vjs-menu li.vjs-selected:focus,.vjs-menu li.vjs-selected:hover,.js-focus-visible .vjs-menu li.vjs-selected:hover{color:#2b333f;background-color:#fff}.vjs-menu li.vjs-selected .vjs-svg-icon,.vjs-menu li.vjs-selected:focus .vjs-svg-icon,.vjs-menu li.vjs-selected:hover .vjs-svg-icon,.js-focus-visible .vjs-menu li.vjs-selected:hover .vjs-svg-icon{fill:#000}.video-js .vjs-menu :not(.vjs-selected):focus:not(:focus-visible),.js-focus-visible .vjs-menu :not(.vjs-selected):focus:not(.focus-visible){background:0 0}.vjs-menu li.vjs-menu-title{text-align:center;text-transform:uppercase;cursor:default;margin:0 0 .3em;padding:0;font-size:1em;font-weight:700;line-height:2em}.vjs-menu-button-popup .vjs-menu{border-top-color:#2b333fb3;width:10em;height:0;margin-bottom:1.5em;display:none;position:absolute;bottom:0;left:-3em}.vjs-pip-window .vjs-menu-button-popup .vjs-menu{left:unset;right:1em}.vjs-menu-button-popup .vjs-menu .vjs-menu-content{background-color:#2b333fb3;width:100%;max-height:15em;position:absolute;bottom:1.5em}.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:5em}.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:10em}.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:14em}.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:25em}.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu,.vjs-menu-button-popup .vjs-menu.vjs-lock-showing{display:block}.video-js .vjs-menu-button-inline{transition:all .4s;overflow:hidden}.video-js .vjs-menu-button-inline:before{width:2.22222em}.video-js .vjs-menu-button-inline:hover,.video-js .vjs-menu-button-inline:focus,.video-js .vjs-menu-button-inline.vjs-slider-active{width:12em}.vjs-menu-button-inline .vjs-menu{opacity:0;width:auto;height:100%;margin:0;padding:0;transition:all .4s;position:absolute;top:0;left:4em}.vjs-menu-button-inline:hover .vjs-menu,.vjs-menu-button-inline:focus .vjs-menu,.vjs-menu-button-inline.vjs-slider-active .vjs-menu{opacity:1;display:block}.vjs-menu-button-inline .vjs-menu-content{width:auto;height:100%;margin:0;overflow:hidden}.video-js .vjs-control-bar{background-color:#2b333fb3;width:100%;height:3em;display:none;position:absolute;bottom:0;left:0;right:0}.video-js.vjs-spatial-navigation-enabled .vjs-control-bar{gap:1px}.video-js:not(.vjs-controls-disabled,.vjs-using-native-controls,.vjs-error) .vjs-control-bar.vjs-lock-showing{display:flex!important}.vjs-has-started .vjs-control-bar,.vjs-audio-only-mode .vjs-control-bar{visibility:visible;opacity:1;transition:visibility .1s,opacity .1s;display:flex}.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{visibility:visible;opacity:0;pointer-events:none;transition:visibility 1s,opacity 1s}.vjs-controls-disabled .vjs-control-bar,.vjs-using-native-controls .vjs-control-bar,.vjs-error .vjs-control-bar{display:none!important}.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar,.vjs-audio-only-mode.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{opacity:1;visibility:visible;pointer-events:auto}.video-js .vjs-control{text-align:center;flex:none;width:4em;height:100%;margin:0;padding:0;position:relative}.video-js .vjs-control.vjs-visible-text{width:auto;padding-left:1em;padding-right:1em}.vjs-button>.vjs-icon-placeholder:before{font-size:1.8em;line-height:1.67}.vjs-button>.vjs-icon-placeholder{display:block}.vjs-button>.vjs-svg-icon{display:inline-block}.video-js .vjs-control:focus:before,.video-js .vjs-control:hover:before,.video-js .vjs-control:focus{text-shadow:0 0 1em #fff}.video-js :not(.vjs-visible-text)>.vjs-control-text{clip:rect(0 0 0 0);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.video-js .vjs-custom-control-spacer{display:none}.video-js .vjs-progress-control{cursor:pointer;touch-action:none;flex:auto;align-items:center;min-width:4em;display:flex}.video-js .vjs-progress-control.disabled{cursor:default}.vjs-live .vjs-progress-control{display:none}.vjs-liveui .vjs-progress-control{align-items:center;display:flex}.video-js .vjs-progress-holder{flex:auto;height:.3em;transition:all .2s}.video-js .vjs-progress-control .vjs-progress-holder{margin:0 10px}.video-js .vjs-progress-control:hover .vjs-progress-holder,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-progress-holder{font-size:1.66667em}.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled{font-size:1em}.video-js .vjs-progress-holder .vjs-play-progress,.video-js .vjs-progress-holder .vjs-load-progress,.video-js .vjs-progress-holder .vjs-load-progress div{width:0;height:100%;margin:0;padding:0;display:block;position:absolute}.video-js .vjs-play-progress{background-color:#fff}.video-js .vjs-play-progress:before{z-index:1;font-size:.9em;line-height:.35em;position:absolute;right:-.5em}.vjs-svg-icons-enabled .vjs-play-progress:before{content:none!important}.vjs-play-progress .vjs-svg-icon{pointer-events:none;z-index:1;width:.9em;height:.9em;line-height:.15em;position:absolute;top:-.35em;right:-.4em}.video-js .vjs-load-progress{background:#73859f80}.video-js .vjs-load-progress div{background:#73859fbf}.video-js .vjs-time-tooltip{color:#000;float:right;pointer-events:none;visibility:hidden;z-index:1;background-color:#fffc;border-radius:.3em;padding:6px 8px 8px;font-family:Arial,Helvetica,sans-serif;font-size:1em;position:absolute;top:-3.4em}.video-js .vjs-progress-holder:focus .vjs-time-tooltip{display:none}.video-js .vjs-progress-control:hover .vjs-time-tooltip,.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-time-tooltip{visibility:visible;font-size:.6em;display:block}.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip{font-size:1em}.video-js .vjs-progress-control .vjs-mouse-display{z-index:1;background-color:#000;width:1px;height:100%;display:none;position:absolute}.video-js .vjs-progress-control:hover .vjs-mouse-display,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display,.video-js.vjs-touch-enabled:not(.vjs-scrubbing) .vjs-progress-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-time-tooltip{color:#fff;background-color:#000c}.video-js .vjs-slider{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:#73859f80;margin:0 .45em;padding:0;position:relative}.video-js .vjs-slider.disabled{cursor:default}.video-js .vjs-slider:focus{text-shadow:0 0 1em #fff;box-shadow:0 0 1em #fff}.video-js.vjs-spatial-navigation-enabled .vjs-slider:focus{outline:.0625em solid #fff}.video-js .vjs-mute-control{cursor:pointer;flex:none}.video-js .vjs-volume-control{cursor:pointer;margin-right:1em;display:flex}.video-js .vjs-volume-control.vjs-volume-horizontal{width:5em}.video-js .vjs-volume-panel .vjs-volume-control{visibility:visible;opacity:0;width:1px;height:1px;margin-left:-1px}.video-js .vjs-volume-panel{transition:width 1s}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control,.video-js .vjs-volume-panel:active .vjs-volume-control,.video-js .vjs-volume-panel:focus .vjs-volume-control,.video-js .vjs-volume-panel .vjs-volume-control:active,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active{visibility:visible;opacity:1;transition:visibility .1s,opacity .1s,height .1s,width .1s,left,top;position:relative}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal{width:5em;height:3em;margin-right:0}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical{transition:left;left:-3.5em}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active{width:10em;transition:width .1s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only{width:4em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical{width:3em;height:8em;transition:visibility 1s,opacity 1s,height 1s 1s,width 1s 1s,left 1s 1s,top 1s 1s;left:-3000em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal{transition:visibility 1s,opacity 1s,height 1s 1s,width 1s,left 1s 1s,top 1s 1s}.video-js .vjs-volume-panel{display:flex}.video-js .vjs-volume-bar{margin:1.35em .45em}.vjs-volume-bar.vjs-slider-horizontal{width:5em;height:.3em}.vjs-volume-bar.vjs-slider-vertical{width:.3em;height:5em;margin:1.35em auto}.video-js .vjs-volume-level{background-color:#fff;position:absolute;bottom:0;left:0}.video-js .vjs-volume-level:before{z-index:1;font-size:.9em;position:absolute}.vjs-slider-vertical .vjs-volume-level{width:.3em}.vjs-slider-vertical .vjs-volume-level:before{z-index:1;top:-.5em;left:-.3em}.vjs-svg-icons-enabled .vjs-volume-level:before{content:none}.vjs-volume-level .vjs-svg-icon{pointer-events:none;z-index:1;width:.9em;height:.9em;position:absolute}.vjs-slider-horizontal .vjs-volume-level{height:.3em}.vjs-slider-horizontal .vjs-volume-level:before{line-height:.35em;right:-.5em}.vjs-slider-horizontal .vjs-volume-level .vjs-svg-icon{right:-.3em;transform:translateY(-50%)}.vjs-slider-vertical .vjs-volume-level .vjs-svg-icon{top:-.55em;transform:translate(-50%)}.video-js .vjs-volume-panel.vjs-volume-panel-vertical{width:4em}.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level{height:100%}.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level{width:100%}.video-js .vjs-volume-vertical{background-color:#2b333fb3;width:3em;height:8em;bottom:8em}.video-js .vjs-volume-horizontal .vjs-menu{left:-2em}.video-js .vjs-volume-tooltip{color:#000;float:right;pointer-events:none;visibility:hidden;z-index:1;background-color:#fffc;border-radius:.3em;padding:6px 8px 8px;font-family:Arial,Helvetica,sans-serif;font-size:1em;position:absolute;top:-3.4em}.video-js .vjs-volume-control:hover .vjs-volume-tooltip,.video-js .vjs-volume-control:hover .vjs-progress-holder:focus .vjs-volume-tooltip{visibility:visible;font-size:1em;display:block}.video-js .vjs-volume-vertical:hover .vjs-volume-tooltip,.video-js .vjs-volume-vertical:hover .vjs-progress-holder:focus .vjs-volume-tooltip{top:-12px;left:1em}.video-js .vjs-volume-control.disabled:hover .vjs-volume-tooltip{font-size:1em}.video-js .vjs-volume-control .vjs-mouse-display{z-index:1;background-color:#000;width:100%;height:1px;display:none;position:absolute}.video-js .vjs-volume-horizontal .vjs-mouse-display{width:1px;height:100%}.video-js .vjs-volume-control:hover .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-volume-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-volume-tooltip{color:#fff;background-color:#000c}.vjs-poster{vertical-align:middle;cursor:pointer;height:100%;margin:0;padding:0;display:inline-block;position:absolute;inset:0}.vjs-has-started .vjs-poster,.vjs-using-native-controls .vjs-poster{display:none}.vjs-audio.vjs-has-started .vjs-poster,.vjs-has-started.vjs-audio-poster-mode .vjs-poster,.vjs-pip-container.vjs-has-started .vjs-poster{display:block}.vjs-poster img{object-fit:contain;width:100%;height:100%}.video-js .vjs-live-control{flex:auto;align-items:flex-start;font-size:1em;line-height:3em;display:flex}.video-js:not(.vjs-live) .vjs-live-control,.video-js.vjs-liveui .vjs-live-control{display:none}.video-js .vjs-seek-to-live-control{cursor:pointer;flex:none;align-items:center;width:auto;min-width:4em;height:100%;padding-left:.5em;padding-right:.5em;font-size:1em;line-height:3em;display:inline-flex}.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,.video-js:not(.vjs-live) .vjs-seek-to-live-control{display:none}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge{cursor:auto}.vjs-seek-to-live-control .vjs-icon-placeholder{color:#888;margin-right:.5em}.vjs-svg-icons-enabled .vjs-seek-to-live-control{line-height:0}.vjs-seek-to-live-control .vjs-svg-icon{pointer-events:none;fill:#888;width:1em;height:1em}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder{color:red}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-svg-icon{fill:red}.video-js .vjs-time-control{flex:none;width:auto;min-width:2em;padding-left:1em;padding-right:1em;font-size:1em;line-height:3em}.vjs-live .vjs-time-control,.vjs-live .vjs-time-divider,.video-js .vjs-current-time,.video-js .vjs-duration{display:none}.vjs-time-divider{line-height:3em;display:none}.vjs-normalise-time-controls:not(.vjs-live) .vjs-time-control{display:flex}.video-js .vjs-play-control{cursor:pointer}.video-js .vjs-play-control .vjs-icon-placeholder{flex:none}.vjs-text-track-display{pointer-events:none;position:absolute;inset:0 0 3em}.vjs-error .vjs-text-track-display{display:none}.video-js.vjs-controls-disabled .vjs-text-track-display,.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display{bottom:1em}.video-js .vjs-text-track{text-align:center;margin-bottom:.1em;font-size:1.4em}.vjs-subtitles{color:#fff}.vjs-captions{color:#fc6}.vjs-tt-cue{display:block}video::-webkit-media-text-track-display{transform:translateY(-3em)}.video-js.vjs-controls-disabled video::-webkit-media-text-track-display,.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display{transform:translateY(-1.5em)}.video-js.vjs-force-center-align-cues .vjs-text-track-cue{text-align:center!important;width:80%!important}@supports not (inset:10px){.video-js .vjs-text-track-display>div{inset:0}}.video-js .vjs-picture-in-picture-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-picture-in-picture-control,.vjs-pip-window .vjs-picture-in-picture-control{display:none}.video-js .vjs-fullscreen-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-fullscreen-control,.vjs-pip-window .vjs-fullscreen-control{display:none}.vjs-playback-rate>.vjs-menu-button,.vjs-playback-rate .vjs-playback-rate-value{width:100%;height:100%;position:absolute;top:0;left:0}.vjs-playback-rate .vjs-playback-rate-value{pointer-events:none;text-align:center;font-size:1.5em;line-height:2}.vjs-playback-rate .vjs-menu{width:4em;left:0}.vjs-error .vjs-error-display .vjs-modal-dialog-content{text-align:center;font-size:1.4em}.vjs-loading-spinner{opacity:.85;text-align:left;box-sizing:border-box;visibility:hidden;background-clip:padding-box;border:.6em solid #2b333fb3;border-radius:50%;width:5em;height:5em;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vjs-seeking .vjs-loading-spinner,.vjs-waiting .vjs-loading-spinner{justify-content:center;align-items:center;animation:0s linear .3s forwards vjs-spinner-show;display:flex}.vjs-error .vjs-loading-spinner{display:none}.vjs-loading-spinner:before,.vjs-loading-spinner:after{content:"";box-sizing:inherit;width:inherit;height:inherit;border-radius:inherit;opacity:1;border:inherit;border-color:#fff #0000 #0000;position:absolute}.vjs-seeking .vjs-loading-spinner:before,.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:after{animation:1.1s cubic-bezier(.6,.2,0,.8) infinite vjs-spinner-spin,1.1s linear infinite vjs-spinner-fade}.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:before{border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:after{border-top-color:#fff;animation-delay:.44s}@keyframes vjs-spinner-show{to{visibility:visible}}@keyframes vjs-spinner-spin{to{transform:rotate(360deg)}}@keyframes vjs-spinner-fade{0%{border-top-color:#73859f}20%{border-top-color:#73859f}35%{border-top-color:#fff}60%{border-top-color:#73859f}to{border-top-color:#73859f}}.video-js.vjs-audio-only-mode .vjs-captions-button{display:none}.vjs-chapters-button .vjs-menu ul{width:24em}.video-js.vjs-audio-only-mode .vjs-descriptions-button{display:none}.vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-svg-icon{width:1.5em;height:1.5em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;margin-bottom:-.1em;display:inline-block}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{content:"";font-family:VideoJS;font-size:1.5em;line-height:inherit}.video-js.vjs-audio-only-mode .vjs-subs-caps-button{display:none}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;margin-bottom:-.1em;display:inline-block}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{content:" ";font-family:VideoJS;font-size:1.5em;line-height:inherit}.video-js.vjs-layout-small .vjs-current-time,.video-js.vjs-layout-small .vjs-time-divider,.video-js.vjs-layout-small .vjs-duration,.video-js.vjs-layout-small .vjs-remaining-time,.video-js.vjs-layout-small .vjs-playback-rate,.video-js.vjs-layout-small .vjs-volume-control,.video-js.vjs-layout-x-small .vjs-current-time,.video-js.vjs-layout-x-small .vjs-time-divider,.video-js.vjs-layout-x-small .vjs-duration,.video-js.vjs-layout-x-small .vjs-remaining-time,.video-js.vjs-layout-x-small .vjs-playback-rate,.video-js.vjs-layout-x-small .vjs-volume-control,.video-js.vjs-layout-tiny .vjs-current-time,.video-js.vjs-layout-tiny .vjs-time-divider,.video-js.vjs-layout-tiny .vjs-duration,.video-js.vjs-layout-tiny .vjs-remaining-time,.video-js.vjs-layout-tiny .vjs-playback-rate,.video-js.vjs-layout-tiny .vjs-volume-control{display:none}.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover{width:auto;width:initial}.video-js.vjs-layout-x-small .vjs-progress-control,.video-js.vjs-layout-tiny .vjs-progress-control{display:none}.video-js.vjs-layout-x-small .vjs-custom-control-spacer{flex:auto;display:block}.vjs-modal-dialog.vjs-text-track-settings{color:#fff;background-color:#2b333fbf;height:70%}.vjs-spatial-navigation-enabled .vjs-modal-dialog.vjs-text-track-settings{height:80%}.vjs-error .vjs-text-track-settings{display:none}.vjs-text-track-settings .vjs-modal-dialog-content{display:table}.vjs-text-track-settings .vjs-track-settings-colors,.vjs-text-track-settings .vjs-track-settings-font,.vjs-text-track-settings .vjs-track-settings-controls{display:table-cell}.vjs-text-track-settings .vjs-track-settings-controls{text-align:right;vertical-align:bottom}@supports (display:grid){.vjs-text-track-settings .vjs-modal-dialog-content{grid-template-rows:1fr;grid-template-columns:1fr 1fr;padding:20px 24px 0;display:grid}.vjs-track-settings-controls .vjs-default-button{margin-bottom:20px}.vjs-text-track-settings .vjs-track-settings-controls{grid-column:1/-1}.vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content{grid-template-columns:1fr}}.vjs-text-track-settings select{font-size:inherit}.vjs-track-setting>select{margin-bottom:.5em;margin-right:1em}.vjs-text-track-settings fieldset{border:none;margin:10px}.vjs-text-track-settings fieldset span{padding:0 .6em .8em;display:inline-block}.vjs-text-track-settings fieldset span>select{max-width:7.3em}.vjs-text-track-settings legend{color:#fff;font-size:1.2em;font-weight:700}.vjs-text-track-settings .vjs-label{margin:0 .5em .5em 0}.vjs-track-settings-controls button:focus,.vjs-track-settings-controls button:active{background-image:linear-gradient(#73859f 0%,#fff 12%);outline-width:medium;outline-style:solid}.vjs-track-settings-controls button:hover{color:#2b333fbf}.vjs-track-settings-controls button{color:#2b333f;cursor:pointer;background-color:#fff;background-image:linear-gradient(-180deg,#fff 88%,#73859f 100%);border-radius:2px}.vjs-track-settings-controls .vjs-default-button{margin-right:1em}.vjs-title-bar{pointer-events:none;background:linear-gradient(#000000e6 0%,#000000b3 60%,#0000 100%);width:100%;padding:.666em 1.333em 4em;font-size:1.2em;line-height:1.5;transition:opacity .1s;position:absolute;top:0}.vjs-error .vjs-title-bar{display:none}.vjs-title-bar-title,.vjs-title-bar-description{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.vjs-title-bar-title{margin-bottom:.333em;font-weight:700}.vjs-playing.vjs-user-inactive .vjs-title-bar{opacity:0;transition:opacity 1s}.video-js .vjs-skip-forward-5,.video-js .vjs-skip-forward-10,.video-js .vjs-skip-forward-30,.video-js .vjs-skip-backward-5,.video-js .vjs-skip-backward-10,.video-js .vjs-skip-backward-30{cursor:pointer}.video-js .vjs-transient-button{cursor:pointer;opacity:1;background-color:#32323280;justify-content:center;align-items:center;height:3em;transition:opacity 1s;display:flex;position:absolute}.video-js:not(.vjs-has-started) .vjs-transient-button{display:none}.video-js.not-hover .vjs-transient-button:not(.force-display),.video-js.vjs-user-inactive .vjs-transient-button:not(.force-display){opacity:0}.video-js .vjs-transient-button span{padding:0 .5em}.video-js .vjs-transient-button.vjs-left{left:1em}.video-js .vjs-transient-button.vjs-right{right:1em}.video-js .vjs-transient-button.vjs-top{top:1em}.video-js .vjs-transient-button.vjs-near-top{top:4em}.video-js .vjs-transient-button.vjs-bottom{bottom:4em}.video-js .vjs-transient-button:hover{background-color:#323232e6}@media print{.video-js>:not(.vjs-tech):not(.vjs-poster){visibility:hidden}}.vjs-resize-manager{z-index:-1000;border:none;width:100%;height:100%;position:absolute;top:0;left:0}.js-focus-visible .video-js :focus:not(.focus-visible),.video-js :focus:not(:focus-visible){outline:none}.player[data-v-4ab3cf75]{user-select:none;-webkit-tap-highlight-color:transparent;width:100%;max-width:800px;margin:0 auto}[data-vjs-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{cursor:pointer;background:#000;border-radius:12px;position:relative;overflow:hidden}.player__shell--portrait[data-v-4ab3cf75]{width:auto;max-width:100%;max-height:75vh;margin:0 auto}.player__native-play[data-v-4ab3cf75]{z-index:3;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.player__native-play[data-v-4ab3cf75]>*{pointer-events:auto}.player__placeholder[data-v-4ab3cf75]{opacity:.4;background:#000;border-radius:12px;width:100%}.player__backdrop[data-v-4ab3cf75]{z-index:999;background:0 0;position:fixed;inset:0}.player__focus-frame--active[data-v-4ab3cf75]{z-index:1000;flex-direction:column;gap:12px;width:min(720px,100vw - 32px);max-height:calc(100vh - 32px);display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.player__focus-frame--active .player__shell[data-v-4ab3cf75],.player__focus-frame--active .player__shell--portrait[data-v-4ab3cf75]{align-self:center;margin:0}.player__focus-controls[data-v-4ab3cf75]{justify-content:center;display:flex}.player__shell[data-v-4ab3cf75]:fullscreen{border-radius:0;width:100vw;height:100vh}.player__shell:fullscreen .video-js[data-v-4ab3cf75],.player__shell:fullscreen [data-vjs-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.video-js{background:#000;border-radius:12px;overflow:hidden}.video-js .vjs-big-play-button,.video-js .vjs-control-bar,.video-js .vjs-error-display,.vjs-youtube .vjs-loading-spinner,.vjs-vimeo .vjs-loading-spinner,.vjs-dailymotion .vjs-loading-spinner{display:none!important}.video-js .vjs-poster{background-size:cover;transition:opacity .3s}.video-js .vjs-poster img{object-fit:cover}.video-js.vjs-has-started .vjs-poster{opacity:0;pointer-events:none}.vjs-dailymotion .vjs-tech>*,.vjs-dailymotion .dailymotion-player-root,.vjs-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.vjs-vimeo .vjs-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.vjs-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.video-js .ima-ad-container{pointer-events:none;z-index:20!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.vjs-ad-playing .ima-ad-container{pointer-events:auto}.vjs-ad-playing .overlay__tap-capture,.vjs-ad-playing .overlay__hud,.vjs-ad-playing .overlay__spinner{display:none!important}.stage-wrapper[data-v-fb8c86cf]{width:100%;max-width:800px;margin:0 auto}.stage[data-v-fb8c86cf]{width:100%}.stage__dismiss[data-v-fb8c86cf]{z-index:10;backdrop-filter:blur(6px);color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:background .15s;display:flex;position:absolute;top:.4rem;right:.4rem}.stage__dismiss[data-v-fb8c86cf]:hover{background:#000000d9}.stage__dismiss svg[data-v-fb8c86cf]{width:14px;height:14px}.stage--minified[data-v-fb8c86cf]{z-index:100;border-radius:12px;width:300px;max-width:300px;margin:0;position:fixed;bottom:1.25rem;right:1.25rem;overflow:hidden;box-shadow:0 8px 32px #0009;@media (width<=740px){max-width:200px}}.stage__idle[data-v-fb8c86cf]{cursor:pointer;background:#111;border-radius:12px;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.stage__idle-poster[data-v-fb8c86cf]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.stage__idle-scrim[data-v-fb8c86cf]{background:#00000073;transition:background .15s;position:absolute;inset:0}.stage__idle:hover .stage__idle-scrim[data-v-fb8c86cf]{background:#0000004d}.stage__idle-body[data-v-fb8c86cf]{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;display:flex;position:relative}.stage__idle-btn[data-v-fb8c86cf]{backdrop-filter:blur(4px);color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .15s,background .15s;display:flex}.stage__idle:hover .stage__idle-btn[data-v-fb8c86cf]{background:#000c;transform:scale(1.1)}.stage__idle-btn svg[data-v-fb8c86cf]{width:32px;height:32px}.stage__idle-title[data-v-fb8c86cf]{color:#f1f5f9;text-shadow:0 1px 4px #000c;font-size:1rem;font-weight:600}.stage__idle-empty[data-v-fb8c86cf]{color:#64748b;font-size:.95rem}.placeholder[data-v-dbcb4f82]{width:100%}.placeholder__shell[data-v-dbcb4f82]{cursor:pointer;background:#111;border-radius:8px;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height:75vh;margin:0 auto}.placeholder__poster[data-v-dbcb4f82]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.placeholder__scrim[data-v-dbcb4f82]{background:#00000059;transition:background .15s;position:absolute;inset:0}.placeholder__shell:hover .placeholder__scrim[data-v-dbcb4f82]{background:#00000026}.placeholder__btn-wrap[data-v-dbcb4f82]{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.placeholder__btn-wrap[data-v-dbcb4f82]>*{pointer-events:auto}.placeholder__footer[data-v-dbcb4f82]{pointer-events:none;background:linear-gradient(#0000 0%,#000c 100%);padding:1.5rem .75rem .6rem;position:absolute;bottom:0;left:0;right:0}.placeholder__title[data-v-dbcb4f82]{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 3px #0009;font-size:.8rem;font-weight:600;overflow:hidden}.placeholder__badge[data-v-dbcb4f82]{z-index:1;text-transform:uppercase;letter-spacing:.06em;color:#fff;border-radius:4px;padding:2px 6px;font-size:.6rem;font-weight:700;position:absolute;top:6px;left:6px}
1
+ .ppbtn[data-v-85902525]{backdrop-filter:blur(12px);will-change:backdrop-filter;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.ppbtn[data-v-85902525]:hover{background:#fff3;transform:scale(1.08)}.ppbtn--lg[data-v-85902525]{background:var(--mvp-btn-bg,#ffffff1a);width:clamp(48px,20cqw,64px);height:clamp(48px,20cqw,64px);color:var(--mvp-btn-color,#fff)}.ppbtn--lg svg[data-v-85902525]{width:clamp(20px,9cqw,28px);height:clamp(20px,9cqw,28px)}.ppbtn--lg[data-v-85902525]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12)}.ppbtn--sm[data-v-85902525]{color:#ffffffbf;background:0 0;border:none;border-radius:8px;width:30px;height:30px}.ppbtn--sm svg[data-v-85902525]{width:16px;height:16px}.ppbtn--sm[data-v-85902525]:hover{color:#fff;background:#ffffff1a;transform:none}@keyframes spin-259be2b2{to{transform:rotate(360deg)}}.spinner[data-v-259be2b2]{border-style:solid;border-color:#fffc #ffffff26 #ffffff26;border-radius:50%;animation:.75s linear infinite spin-259be2b2}.hud[data-v-a6d118e7]{align-items:center;gap:clamp(12px,5cqw,20px);display:flex}.hud__play-wrap[data-v-a6d118e7]{display:flex;position:relative}.hud__buf-spinner[data-v-a6d118e7]{margin-top:8px;position:absolute;top:100%;left:calc(50% - 7px)}.hud__spacer[data-v-a6d118e7]{flex-shrink:0;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px)}.hud__btn[data-v-a6d118e7]{background:var(--mvp-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px);color:var(--mvp-btn-color,#fff);cursor:pointer;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.hud__btn svg[data-v-a6d118e7]{width:clamp(16px,6cqw,18px);height:clamp(16px,6cqw,18px)}.hud__btn[data-v-a6d118e7]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.controls__vol-header[data-v-10b0ae67]{align-items:center;gap:4px;display:flex}.controls__vol-label[data-v-10b0ae67]{color:#ffffffe6;flex:1;padding:0 4px;font-size:.8rem;font-weight:600}.controls__vol-body[data-v-10b0ae67]{align-items:center;gap:12px;padding:6px 0 4px;display:flex}.controls__vol-pct[data-v-10b0ae67]{font-variant-numeric:tabular-nums;color:#fff9;text-align:right;min-width:32px;font-size:.75rem;font-weight:600}.controls__vol-slider[data-v-10b0ae67]{-webkit-appearance:none;appearance:none;cursor:pointer;background:linear-gradient(to right, #fff 0%, #fff var(--v), #ffffff26 var(--v), #ffffff26 100%);outline:none;flex:1;height:5px;transition:height .15s}.controls__vol-slider[data-v-10b0ae67]:hover{height:7px}.controls__vol-slider[data-v-10b0ae67]::-webkit-slider-runnable-track{background:0 0;height:5px}.controls__vol-slider[data-v-10b0ae67]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px;margin-top:-5.5px;transition:transform .15s;box-shadow:0 0 0 3px #fff3}.controls__vol-slider[data-v-10b0ae67]:hover::-webkit-slider-thumb{transform:scale(1.2)}.controls__vol-slider[data-v-10b0ae67]::-moz-range-track{background:#ffffff26;height:5px}.controls__vol-slider[data-v-10b0ae67]::-moz-range-progress{background:#fff;height:5px}.controls__vol-slider[data-v-10b0ae67]::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 3px #fff3}::view-transition-old(controls-popup),::view-transition-new(controls-popup){animation-duration:.22s;animation-timing-function:ease-in-out}.controls__btn{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s,color .15s;display:flex}.controls__btn svg{width:16px;height:16px}.controls__btn:hover{color:#fff;background:#ffffff1a}.controls[data-v-5712aad4]{-webkit-backdrop-filter:blur(20px);background:#0a0a0e;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;width:min(340px,100% - 32px);padding:14px 16px 12px;display:flex;box-shadow:0 8px 32px #00000080}.controls--fs[data-v-5712aad4]{width:100%}.controls__seek[data-v-5712aad4]{-webkit-appearance:none;appearance:none;cursor:pointer;box-sizing:border-box;background:padding-box content-box;background-image:linear-gradient(to right, var(--mvp-accent,#3b82f6) 0%, var(--mvp-accent,#3b82f6) var(--p), #ffffff4d var(--p), #ffffff4d var(--b), #ffffff1a var(--b), #ffffff1a 100%);outline:none;width:100%;height:20px;padding:8px 0}.controls__seek[data-v-5712aad4]::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek[data-v-5712aad4]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border-radius:50%;margin-top:-5px;transition:transform .15s}.controls__seek[data-v-5712aad4]:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek[data-v-5712aad4]::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek[data-v-5712aad4]::-moz-range-progress{background:var(--mvp-accent,#3b82f6);height:4px}.controls__seek[data-v-5712aad4]::-moz-range-thumb{background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border:none;border-radius:50%}.controls__row[data-v-5712aad4]{align-items:center;gap:4px;display:flex}.controls__time[data-v-5712aad4]{font-variant-numeric:tabular-nums;color:#fff9;letter-spacing:.02em;flex:1;padding:0 4px;font-size:.7rem;font-weight:500}.controls__play-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.controls__btn--rate[data-v-5712aad4]{font-variant-numeric:tabular-nums;letter-spacing:.02em;width:auto;min-width:30px;padding:0 4px;font-size:.65rem;font-weight:700}.controls__btn--active[data-v-5712aad4]{color:var(--mvp-accent,#3b82f6)}.controls__btn--active[data-v-5712aad4]:hover{color:var(--mvp-accent,#60a5fa)}.controls__btn--close[data-v-5712aad4]{color:#fff6}.controls__btn--close[data-v-5712aad4]:hover{color:#fffc}.controls__fs-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.overlay__tap-capture[data-v-f3307b98]{z-index:2;position:absolute;inset:0}.overlay__spinner[data-v-f3307b98]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fade-enter-active[data-v-f3307b98],.fade-leave-active[data-v-f3307b98]{transition:opacity .25s}.fade-enter-from[data-v-f3307b98],.fade-leave-to[data-v-f3307b98]{opacity:0}.overlay__error[data-v-f3307b98]{z-index:6;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex;position:absolute;inset:0}.overlay__error p[data-v-f3307b98]{color:#ffffffb3;text-align:center;max-width:260px;font-size:.875rem;line-height:1.5}.overlay__retry[data-v-f3307b98]{pointer-events:auto;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:background .15s}.overlay__retry[data-v-f3307b98]:hover{background:#fff3}.overlay__hud[data-v-f3307b98]{z-index:4;opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.overlay__hud--visible[data-v-f3307b98]{opacity:1;pointer-events:all}.overlay__popup[data-v-f3307b98]{z-index:5;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.overlay__popup--fs[data-v-f3307b98]{align-items:flex-end}.popup-enter-active[data-v-f3307b98],.popup-leave-active[data-v-f3307b98]{transition:opacity .2s,transform .2s}.popup-enter-from[data-v-f3307b98],.popup-leave-to[data-v-f3307b98]{opacity:0;transform:scale(.95)}.vjs-svg-icon{fill:currentColor;background-position:50%;background-repeat:no-repeat;width:1.8em;height:1.8em;display:inline-block}.vjs-svg-icon:before{content:none!important}.vjs-svg-icon:hover,.vjs-control:focus .vjs-svg-icon{filter:drop-shadow(0 0 .25em #fff)}.vjs-modal-dialog .vjs-modal-dialog-content,.video-js .vjs-modal-dialog,.vjs-button>.vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{width:100%;height:100%;position:absolute;top:0;left:0}.vjs-button>.vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{text-align:center}@font-face{font-family:VideoJS;src:url(data:application/font-woff;charset=utf-8;base64,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)format("woff");font-weight:400;font-style:normal}.vjs-icon-play,.video-js .vjs-play-control .vjs-icon-placeholder,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-play:before,.video-js .vjs-play-control .vjs-icon-placeholder:before,.video-js .vjs-big-play-button .vjs-icon-placeholder:before{content:""}.vjs-icon-play-circle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-play-circle:before{content:""}.vjs-icon-pause,.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-pause:before,.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-mute,.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-mute:before,.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-low,.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-low:before,.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-mid,.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-mid:before,.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before{content:""}.vjs-icon-volume-high,.video-js .vjs-mute-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-volume-high:before,.video-js .vjs-mute-control .vjs-icon-placeholder:before{content:""}.vjs-icon-fullscreen-enter,.video-js .vjs-fullscreen-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-fullscreen-enter:before,.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before{content:""}.vjs-icon-fullscreen-exit,.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-fullscreen-exit:before,.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before{content:""}.vjs-icon-spinner{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-spinner:before{content:""}.vjs-icon-subtitles,.video-js .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-subtitles-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-subtitles:before,.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-subtitles-button .vjs-icon-placeholder:before{content:""}.vjs-icon-captions,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-captions-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-captions:before,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-captions-button .vjs-icon-placeholder:before{content:""}.vjs-icon-hd{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-hd:before{content:""}.vjs-icon-chapters,.video-js .vjs-chapters-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-chapters:before,.video-js .vjs-chapters-button .vjs-icon-placeholder:before{content:""}.vjs-icon-downloading{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-downloading:before{content:""}.vjs-icon-file-download{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download:before{content:""}.vjs-icon-file-download-done{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download-done:before{content:""}.vjs-icon-file-download-off{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-file-download-off:before{content:""}.vjs-icon-share{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-share:before{content:""}.vjs-icon-cog{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cog:before{content:""}.vjs-icon-square{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-square:before{content:""}.vjs-icon-circle,.vjs-seek-to-live-control .vjs-icon-placeholder,.video-js .vjs-volume-level,.video-js .vjs-play-progress{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle:before,.vjs-seek-to-live-control .vjs-icon-placeholder:before,.video-js .vjs-volume-level:before,.video-js .vjs-play-progress:before{content:""}.vjs-icon-circle-outline{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle-outline:before{content:""}.vjs-icon-circle-inner-circle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-circle-inner-circle:before{content:""}.vjs-icon-cancel,.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cancel:before,.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before{content:""}.vjs-icon-repeat{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-repeat:before{content:""}.vjs-icon-replay,.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay:before,.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-5,.video-js .vjs-skip-backward-5 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-5:before,.video-js .vjs-skip-backward-5 .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-10,.video-js .vjs-skip-backward-10 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-10:before,.video-js .vjs-skip-backward-10 .vjs-icon-placeholder:before{content:""}.vjs-icon-replay-30,.video-js .vjs-skip-backward-30 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-replay-30:before,.video-js .vjs-skip-backward-30 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-5,.video-js .vjs-skip-forward-5 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-5:before,.video-js .vjs-skip-forward-5 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-10,.video-js .vjs-skip-forward-10 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-10:before,.video-js .vjs-skip-forward-10 .vjs-icon-placeholder:before{content:""}.vjs-icon-forward-30,.video-js .vjs-skip-forward-30 .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-forward-30:before,.video-js .vjs-skip-forward-30 .vjs-icon-placeholder:before{content:""}.vjs-icon-audio,.video-js .vjs-audio-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-audio:before,.video-js .vjs-audio-button .vjs-icon-placeholder:before{content:""}.vjs-icon-next-item{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-next-item:before{content:""}.vjs-icon-previous-item{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-previous-item:before{content:""}.vjs-icon-shuffle{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-shuffle:before{content:""}.vjs-icon-cast{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-cast:before{content:""}.vjs-icon-picture-in-picture-enter,.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-picture-in-picture-enter:before,.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before{content:""}.vjs-icon-picture-in-picture-exit,.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-picture-in-picture-exit:before,.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before{content:""}.vjs-icon-facebook{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-facebook:before{content:""}.vjs-icon-linkedin{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-linkedin:before{content:""}.vjs-icon-twitter{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-twitter:before{content:""}.vjs-icon-tumblr{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-tumblr:before{content:""}.vjs-icon-pinterest{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-pinterest:before{content:""}.vjs-icon-audio-description,.video-js .vjs-descriptions-button .vjs-icon-placeholder{font-family:VideoJS;font-style:normal;font-weight:400}.vjs-icon-audio-description:before,.video-js .vjs-descriptions-button .vjs-icon-placeholder:before{content:""}.video-js{vertical-align:top;box-sizing:border-box;color:#fff;word-break:initial;background-color:#000;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-style:normal;font-weight:400;line-height:1;display:inline-block;position:relative}.video-js:-moz-full-screen{position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.video-js[tabindex="-1"]{outline:none}.video-js *,.video-js :before,.video-js :after{box-sizing:inherit}.video-js ul{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;list-style-position:outside}.video-js.vjs-fluid,.video-js.vjs-16-9,.video-js.vjs-4-3,.video-js.vjs-9-16,.video-js.vjs-1-1{width:100%;max-width:100%}.video-js.vjs-fluid:not(.vjs-audio-only-mode),.video-js.vjs-16-9:not(.vjs-audio-only-mode),.video-js.vjs-4-3:not(.vjs-audio-only-mode),.video-js.vjs-9-16:not(.vjs-audio-only-mode),.video-js.vjs-1-1:not(.vjs-audio-only-mode){height:0}.video-js.vjs-16-9:not(.vjs-audio-only-mode){padding-top:56.25%}.video-js.vjs-4-3:not(.vjs-audio-only-mode){padding-top:75%}.video-js.vjs-9-16:not(.vjs-audio-only-mode){padding-top:177.778%}.video-js.vjs-1-1:not(.vjs-audio-only-mode){padding-top:100%}.video-js.vjs-fill:not(.vjs-audio-only-mode){width:100%;height:100%}.video-js .vjs-tech{width:100%;height:100%;position:absolute;top:0;left:0}.video-js.vjs-audio-only-mode .vjs-tech{display:none}body.vjs-full-window,body.vjs-pip-window{height:100%;margin:0;padding:0}.vjs-full-window .video-js.vjs-fullscreen,body.vjs-pip-window .video-js{z-index:1000;position:fixed;inset:0;overflow:hidden}.video-js.vjs-fullscreen:not(.vjs-ios-native-fs),body.vjs-pip-window .video-js{display:block;width:100%!important;height:100%!important;padding-top:0!important}.video-js.vjs-fullscreen.vjs-user-inactive{cursor:none}.vjs-pip-container .vjs-pip-text{text-align:center;background-color:#000000b3;width:100%;padding:.5em;font-size:2em;position:absolute;bottom:10%}.vjs-layout-tiny.vjs-pip-container .vjs-pip-text,.vjs-layout-x-small.vjs-pip-container .vjs-pip-text,.vjs-layout-small.vjs-pip-container .vjs-pip-text{font-size:1.4em;bottom:0}.vjs-hidden{display:none!important}.vjs-disabled{opacity:.5;cursor:default}.video-js .vjs-offscreen{width:1px;height:1px;position:absolute;top:0;left:-9999px}.vjs-lock-showing{opacity:1!important;visibility:visible!important;display:block!important}.vjs-no-js{color:#fff;text-align:center;background-color:#000;width:300px;height:150px;margin:0 auto;padding:20px;font-family:Arial,Helvetica,sans-serif;font-size:18px}.vjs-no-js a,.vjs-no-js a:visited{color:#66a8cc}.video-js .vjs-big-play-button{cursor:pointer;opacity:1;background-color:#2b333fb3;border:.06666em solid #fff;border-radius:.3em;width:3em;height:1.63332em;margin-top:-.81666em;margin-left:-1.5em;padding:0;font-size:3em;line-height:1.5em;transition:all .4s;display:block;position:absolute;top:50%;left:50%}.vjs-big-play-button .vjs-svg-icon{width:1em;height:1em;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-js:hover .vjs-big-play-button,.video-js .vjs-big-play-button:focus{background-color:#73859f80;border-color:#fff;transition:all}.vjs-controls-disabled .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button,.vjs-error .vjs-big-play-button{display:none}.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause:not(.vjs-seeking,.vjs-scrubbing,.vjs-error) .vjs-big-play-button{display:block}.video-js button{color:inherit;font-size:inherit;line-height:inherit;text-transform:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:none;text-decoration:none;transition:none;display:inline-block}.video-js.vjs-spatial-navigation-enabled .vjs-button:focus{box-shadow:none;outline:.0625em solid #fff}.vjs-control .vjs-button{width:100%;height:100%}.video-js .vjs-control.vjs-close-button{cursor:pointer;z-index:2;height:3em;position:absolute;top:.5em;right:0}.video-js .vjs-modal-dialog{background:linear-gradient(#000c,#fff0);overflow:auto}.video-js .vjs-modal-dialog>*{box-sizing:border-box}.vjs-modal-dialog .vjs-modal-dialog-content{z-index:1;padding:20px 24px;font-size:1.2em;line-height:1.5}.vjs-menu-button{cursor:pointer}.vjs-menu-button.vjs-disabled{cursor:default}.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu{display:none}.vjs-menu .vjs-menu-content{margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;display:block;overflow:auto}.vjs-menu .vjs-menu-content>*{box-sizing:border-box}.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu{display:none}.vjs-menu li{text-align:center;text-transform:lowercase;justify-content:center;margin:0;padding:.2em 0;font-size:1.2em;line-height:1.4em;list-style:none;display:flex}.vjs-menu li.vjs-menu-item:focus,.vjs-menu li.vjs-menu-item:hover,.js-focus-visible .vjs-menu li.vjs-menu-item:hover{background-color:#73859f80}.vjs-menu li.vjs-selected,.vjs-menu li.vjs-selected:focus,.vjs-menu li.vjs-selected:hover,.js-focus-visible .vjs-menu li.vjs-selected:hover{color:#2b333f;background-color:#fff}.vjs-menu li.vjs-selected .vjs-svg-icon,.vjs-menu li.vjs-selected:focus .vjs-svg-icon,.vjs-menu li.vjs-selected:hover .vjs-svg-icon,.js-focus-visible .vjs-menu li.vjs-selected:hover .vjs-svg-icon{fill:#000}.video-js .vjs-menu :not(.vjs-selected):focus:not(:focus-visible),.js-focus-visible .vjs-menu :not(.vjs-selected):focus:not(.focus-visible){background:0 0}.vjs-menu li.vjs-menu-title{text-align:center;text-transform:uppercase;cursor:default;margin:0 0 .3em;padding:0;font-size:1em;font-weight:700;line-height:2em}.vjs-menu-button-popup .vjs-menu{border-top-color:#2b333fb3;width:10em;height:0;margin-bottom:1.5em;display:none;position:absolute;bottom:0;left:-3em}.vjs-pip-window .vjs-menu-button-popup .vjs-menu{left:unset;right:1em}.vjs-menu-button-popup .vjs-menu .vjs-menu-content{background-color:#2b333fb3;width:100%;max-height:15em;position:absolute;bottom:1.5em}.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:5em}.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:10em}.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:14em}.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:25em}.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu,.vjs-menu-button-popup .vjs-menu.vjs-lock-showing{display:block}.video-js .vjs-menu-button-inline{transition:all .4s;overflow:hidden}.video-js .vjs-menu-button-inline:before{width:2.22222em}.video-js .vjs-menu-button-inline:hover,.video-js .vjs-menu-button-inline:focus,.video-js .vjs-menu-button-inline.vjs-slider-active{width:12em}.vjs-menu-button-inline .vjs-menu{opacity:0;width:auto;height:100%;margin:0;padding:0;transition:all .4s;position:absolute;top:0;left:4em}.vjs-menu-button-inline:hover .vjs-menu,.vjs-menu-button-inline:focus .vjs-menu,.vjs-menu-button-inline.vjs-slider-active .vjs-menu{opacity:1;display:block}.vjs-menu-button-inline .vjs-menu-content{width:auto;height:100%;margin:0;overflow:hidden}.video-js .vjs-control-bar{background-color:#2b333fb3;width:100%;height:3em;display:none;position:absolute;bottom:0;left:0;right:0}.video-js.vjs-spatial-navigation-enabled .vjs-control-bar{gap:1px}.video-js:not(.vjs-controls-disabled,.vjs-using-native-controls,.vjs-error) .vjs-control-bar.vjs-lock-showing{display:flex!important}.vjs-has-started .vjs-control-bar,.vjs-audio-only-mode .vjs-control-bar{visibility:visible;opacity:1;transition:visibility .1s,opacity .1s;display:flex}.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{visibility:visible;opacity:0;pointer-events:none;transition:visibility 1s,opacity 1s}.vjs-controls-disabled .vjs-control-bar,.vjs-using-native-controls .vjs-control-bar,.vjs-error .vjs-control-bar{display:none!important}.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar,.vjs-audio-only-mode.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{opacity:1;visibility:visible;pointer-events:auto}.video-js .vjs-control{text-align:center;flex:none;width:4em;height:100%;margin:0;padding:0;position:relative}.video-js .vjs-control.vjs-visible-text{width:auto;padding-left:1em;padding-right:1em}.vjs-button>.vjs-icon-placeholder:before{font-size:1.8em;line-height:1.67}.vjs-button>.vjs-icon-placeholder{display:block}.vjs-button>.vjs-svg-icon{display:inline-block}.video-js .vjs-control:focus:before,.video-js .vjs-control:hover:before,.video-js .vjs-control:focus{text-shadow:0 0 1em #fff}.video-js :not(.vjs-visible-text)>.vjs-control-text{clip:rect(0 0 0 0);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.video-js .vjs-custom-control-spacer{display:none}.video-js .vjs-progress-control{cursor:pointer;touch-action:none;flex:auto;align-items:center;min-width:4em;display:flex}.video-js .vjs-progress-control.disabled{cursor:default}.vjs-live .vjs-progress-control{display:none}.vjs-liveui .vjs-progress-control{align-items:center;display:flex}.video-js .vjs-progress-holder{flex:auto;height:.3em;transition:all .2s}.video-js .vjs-progress-control .vjs-progress-holder{margin:0 10px}.video-js .vjs-progress-control:hover .vjs-progress-holder,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-progress-holder{font-size:1.66667em}.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled{font-size:1em}.video-js .vjs-progress-holder .vjs-play-progress,.video-js .vjs-progress-holder .vjs-load-progress,.video-js .vjs-progress-holder .vjs-load-progress div{width:0;height:100%;margin:0;padding:0;display:block;position:absolute}.video-js .vjs-play-progress{background-color:#fff}.video-js .vjs-play-progress:before{z-index:1;font-size:.9em;line-height:.35em;position:absolute;right:-.5em}.vjs-svg-icons-enabled .vjs-play-progress:before{content:none!important}.vjs-play-progress .vjs-svg-icon{pointer-events:none;z-index:1;width:.9em;height:.9em;line-height:.15em;position:absolute;top:-.35em;right:-.4em}.video-js .vjs-load-progress{background:#73859f80}.video-js .vjs-load-progress div{background:#73859fbf}.video-js .vjs-time-tooltip{color:#000;float:right;pointer-events:none;visibility:hidden;z-index:1;background-color:#fffc;border-radius:.3em;padding:6px 8px 8px;font-family:Arial,Helvetica,sans-serif;font-size:1em;position:absolute;top:-3.4em}.video-js .vjs-progress-holder:focus .vjs-time-tooltip{display:none}.video-js .vjs-progress-control:hover .vjs-time-tooltip,.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-time-tooltip{visibility:visible;font-size:.6em;display:block}.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip{font-size:1em}.video-js .vjs-progress-control .vjs-mouse-display{z-index:1;background-color:#000;width:1px;height:100%;display:none;position:absolute}.video-js .vjs-progress-control:hover .vjs-mouse-display,.video-js.vjs-scrubbing.vjs-touch-enabled .vjs-progress-control .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display,.video-js.vjs-touch-enabled:not(.vjs-scrubbing) .vjs-progress-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-time-tooltip{color:#fff;background-color:#000c}.video-js .vjs-slider{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:#73859f80;margin:0 .45em;padding:0;position:relative}.video-js .vjs-slider.disabled{cursor:default}.video-js .vjs-slider:focus{text-shadow:0 0 1em #fff;box-shadow:0 0 1em #fff}.video-js.vjs-spatial-navigation-enabled .vjs-slider:focus{outline:.0625em solid #fff}.video-js .vjs-mute-control{cursor:pointer;flex:none}.video-js .vjs-volume-control{cursor:pointer;margin-right:1em;display:flex}.video-js .vjs-volume-control.vjs-volume-horizontal{width:5em}.video-js .vjs-volume-panel .vjs-volume-control{visibility:visible;opacity:0;width:1px;height:1px;margin-left:-1px}.video-js .vjs-volume-panel{transition:width 1s}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control,.video-js .vjs-volume-panel:active .vjs-volume-control,.video-js .vjs-volume-panel:focus .vjs-volume-control,.video-js .vjs-volume-panel .vjs-volume-control:active,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active{visibility:visible;opacity:1;transition:visibility .1s,opacity .1s,height .1s,width .1s,left,top;position:relative}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal{width:5em;height:3em;margin-right:0}.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical{transition:left;left:-3.5em}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active{width:10em;transition:width .1s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only{width:4em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical{width:3em;height:8em;transition:visibility 1s,opacity 1s,height 1s 1s,width 1s 1s,left 1s 1s,top 1s 1s;left:-3000em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal{transition:visibility 1s,opacity 1s,height 1s 1s,width 1s,left 1s 1s,top 1s 1s}.video-js .vjs-volume-panel{display:flex}.video-js .vjs-volume-bar{margin:1.35em .45em}.vjs-volume-bar.vjs-slider-horizontal{width:5em;height:.3em}.vjs-volume-bar.vjs-slider-vertical{width:.3em;height:5em;margin:1.35em auto}.video-js .vjs-volume-level{background-color:#fff;position:absolute;bottom:0;left:0}.video-js .vjs-volume-level:before{z-index:1;font-size:.9em;position:absolute}.vjs-slider-vertical .vjs-volume-level{width:.3em}.vjs-slider-vertical .vjs-volume-level:before{z-index:1;top:-.5em;left:-.3em}.vjs-svg-icons-enabled .vjs-volume-level:before{content:none}.vjs-volume-level .vjs-svg-icon{pointer-events:none;z-index:1;width:.9em;height:.9em;position:absolute}.vjs-slider-horizontal .vjs-volume-level{height:.3em}.vjs-slider-horizontal .vjs-volume-level:before{line-height:.35em;right:-.5em}.vjs-slider-horizontal .vjs-volume-level .vjs-svg-icon{right:-.3em;transform:translateY(-50%)}.vjs-slider-vertical .vjs-volume-level .vjs-svg-icon{top:-.55em;transform:translate(-50%)}.video-js .vjs-volume-panel.vjs-volume-panel-vertical{width:4em}.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level{height:100%}.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level{width:100%}.video-js .vjs-volume-vertical{background-color:#2b333fb3;width:3em;height:8em;bottom:8em}.video-js .vjs-volume-horizontal .vjs-menu{left:-2em}.video-js .vjs-volume-tooltip{color:#000;float:right;pointer-events:none;visibility:hidden;z-index:1;background-color:#fffc;border-radius:.3em;padding:6px 8px 8px;font-family:Arial,Helvetica,sans-serif;font-size:1em;position:absolute;top:-3.4em}.video-js .vjs-volume-control:hover .vjs-volume-tooltip,.video-js .vjs-volume-control:hover .vjs-progress-holder:focus .vjs-volume-tooltip{visibility:visible;font-size:1em;display:block}.video-js .vjs-volume-vertical:hover .vjs-volume-tooltip,.video-js .vjs-volume-vertical:hover .vjs-progress-holder:focus .vjs-volume-tooltip{top:-12px;left:1em}.video-js .vjs-volume-control.disabled:hover .vjs-volume-tooltip{font-size:1em}.video-js .vjs-volume-control .vjs-mouse-display{z-index:1;background-color:#000;width:100%;height:1px;display:none;position:absolute}.video-js .vjs-volume-horizontal .vjs-mouse-display{width:1px;height:100%}.video-js .vjs-volume-control:hover .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-volume-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.vjs-mouse-display .vjs-volume-tooltip{color:#fff;background-color:#000c}.vjs-poster{vertical-align:middle;cursor:pointer;height:100%;margin:0;padding:0;display:inline-block;position:absolute;inset:0}.vjs-has-started .vjs-poster,.vjs-using-native-controls .vjs-poster{display:none}.vjs-audio.vjs-has-started .vjs-poster,.vjs-has-started.vjs-audio-poster-mode .vjs-poster,.vjs-pip-container.vjs-has-started .vjs-poster{display:block}.vjs-poster img{object-fit:contain;width:100%;height:100%}.video-js .vjs-live-control{flex:auto;align-items:flex-start;font-size:1em;line-height:3em;display:flex}.video-js:not(.vjs-live) .vjs-live-control,.video-js.vjs-liveui .vjs-live-control{display:none}.video-js .vjs-seek-to-live-control{cursor:pointer;flex:none;align-items:center;width:auto;min-width:4em;height:100%;padding-left:.5em;padding-right:.5em;font-size:1em;line-height:3em;display:inline-flex}.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,.video-js:not(.vjs-live) .vjs-seek-to-live-control{display:none}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge{cursor:auto}.vjs-seek-to-live-control .vjs-icon-placeholder{color:#888;margin-right:.5em}.vjs-svg-icons-enabled .vjs-seek-to-live-control{line-height:0}.vjs-seek-to-live-control .vjs-svg-icon{pointer-events:none;fill:#888;width:1em;height:1em}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder{color:red}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-svg-icon{fill:red}.video-js .vjs-time-control{flex:none;width:auto;min-width:2em;padding-left:1em;padding-right:1em;font-size:1em;line-height:3em}.vjs-live .vjs-time-control,.vjs-live .vjs-time-divider,.video-js .vjs-current-time,.video-js .vjs-duration{display:none}.vjs-time-divider{line-height:3em;display:none}.vjs-normalise-time-controls:not(.vjs-live) .vjs-time-control{display:flex}.video-js .vjs-play-control{cursor:pointer}.video-js .vjs-play-control .vjs-icon-placeholder{flex:none}.vjs-text-track-display{pointer-events:none;position:absolute;inset:0 0 3em}.vjs-error .vjs-text-track-display{display:none}.video-js.vjs-controls-disabled .vjs-text-track-display,.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display{bottom:1em}.video-js .vjs-text-track{text-align:center;margin-bottom:.1em;font-size:1.4em}.vjs-subtitles{color:#fff}.vjs-captions{color:#fc6}.vjs-tt-cue{display:block}video::-webkit-media-text-track-display{transform:translateY(-3em)}.video-js.vjs-controls-disabled video::-webkit-media-text-track-display,.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display{transform:translateY(-1.5em)}.video-js.vjs-force-center-align-cues .vjs-text-track-cue{text-align:center!important;width:80%!important}@supports not (inset:10px){.video-js .vjs-text-track-display>div{inset:0}}.video-js .vjs-picture-in-picture-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-picture-in-picture-control,.vjs-pip-window .vjs-picture-in-picture-control{display:none}.video-js .vjs-fullscreen-control{cursor:pointer;flex:none}.video-js.vjs-audio-only-mode .vjs-fullscreen-control,.vjs-pip-window .vjs-fullscreen-control{display:none}.vjs-playback-rate>.vjs-menu-button,.vjs-playback-rate .vjs-playback-rate-value{width:100%;height:100%;position:absolute;top:0;left:0}.vjs-playback-rate .vjs-playback-rate-value{pointer-events:none;text-align:center;font-size:1.5em;line-height:2}.vjs-playback-rate .vjs-menu{width:4em;left:0}.vjs-error .vjs-error-display .vjs-modal-dialog-content{text-align:center;font-size:1.4em}.vjs-loading-spinner{opacity:.85;text-align:left;box-sizing:border-box;visibility:hidden;background-clip:padding-box;border:.6em solid #2b333fb3;border-radius:50%;width:5em;height:5em;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vjs-seeking .vjs-loading-spinner,.vjs-waiting .vjs-loading-spinner{justify-content:center;align-items:center;animation:0s linear .3s forwards vjs-spinner-show;display:flex}.vjs-error .vjs-loading-spinner{display:none}.vjs-loading-spinner:before,.vjs-loading-spinner:after{content:"";box-sizing:inherit;width:inherit;height:inherit;border-radius:inherit;opacity:1;border:inherit;border-color:#fff #0000 #0000;position:absolute}.vjs-seeking .vjs-loading-spinner:before,.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:after{animation:1.1s cubic-bezier(.6,.2,0,.8) infinite vjs-spinner-spin,1.1s linear infinite vjs-spinner-fade}.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:before{border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:after{border-top-color:#fff;animation-delay:.44s}@keyframes vjs-spinner-show{to{visibility:visible}}@keyframes vjs-spinner-spin{to{transform:rotate(360deg)}}@keyframes vjs-spinner-fade{0%{border-top-color:#73859f}20%{border-top-color:#73859f}35%{border-top-color:#fff}60%{border-top-color:#73859f}to{border-top-color:#73859f}}.video-js.vjs-audio-only-mode .vjs-captions-button{display:none}.vjs-chapters-button .vjs-menu ul{width:24em}.video-js.vjs-audio-only-mode .vjs-descriptions-button{display:none}.vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-svg-icon{width:1.5em;height:1.5em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;margin-bottom:-.1em;display:inline-block}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{content:"";font-family:VideoJS;font-size:1.5em;line-height:inherit}.video-js.vjs-audio-only-mode .vjs-subs-caps-button{display:none}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;margin-bottom:-.1em;display:inline-block}.video-js .vjs-audio-button+.vjs-menu .vjs-descriptions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before,.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{content:" ";font-family:VideoJS;font-size:1.5em;line-height:inherit}.video-js.vjs-layout-small .vjs-current-time,.video-js.vjs-layout-small .vjs-time-divider,.video-js.vjs-layout-small .vjs-duration,.video-js.vjs-layout-small .vjs-remaining-time,.video-js.vjs-layout-small .vjs-playback-rate,.video-js.vjs-layout-small .vjs-volume-control,.video-js.vjs-layout-x-small .vjs-current-time,.video-js.vjs-layout-x-small .vjs-time-divider,.video-js.vjs-layout-x-small .vjs-duration,.video-js.vjs-layout-x-small .vjs-remaining-time,.video-js.vjs-layout-x-small .vjs-playback-rate,.video-js.vjs-layout-x-small .vjs-volume-control,.video-js.vjs-layout-tiny .vjs-current-time,.video-js.vjs-layout-tiny .vjs-time-divider,.video-js.vjs-layout-tiny .vjs-duration,.video-js.vjs-layout-tiny .vjs-remaining-time,.video-js.vjs-layout-tiny .vjs-playback-rate,.video-js.vjs-layout-tiny .vjs-volume-control{display:none}.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover{width:auto;width:initial}.video-js.vjs-layout-x-small .vjs-progress-control,.video-js.vjs-layout-tiny .vjs-progress-control{display:none}.video-js.vjs-layout-x-small .vjs-custom-control-spacer{flex:auto;display:block}.vjs-modal-dialog.vjs-text-track-settings{color:#fff;background-color:#2b333fbf;height:70%}.vjs-spatial-navigation-enabled .vjs-modal-dialog.vjs-text-track-settings{height:80%}.vjs-error .vjs-text-track-settings{display:none}.vjs-text-track-settings .vjs-modal-dialog-content{display:table}.vjs-text-track-settings .vjs-track-settings-colors,.vjs-text-track-settings .vjs-track-settings-font,.vjs-text-track-settings .vjs-track-settings-controls{display:table-cell}.vjs-text-track-settings .vjs-track-settings-controls{text-align:right;vertical-align:bottom}@supports (display:grid){.vjs-text-track-settings .vjs-modal-dialog-content{grid-template-rows:1fr;grid-template-columns:1fr 1fr;padding:20px 24px 0;display:grid}.vjs-track-settings-controls .vjs-default-button{margin-bottom:20px}.vjs-text-track-settings .vjs-track-settings-controls{grid-column:1/-1}.vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content{grid-template-columns:1fr}}.vjs-text-track-settings select{font-size:inherit}.vjs-track-setting>select{margin-bottom:.5em;margin-right:1em}.vjs-text-track-settings fieldset{border:none;margin:10px}.vjs-text-track-settings fieldset span{padding:0 .6em .8em;display:inline-block}.vjs-text-track-settings fieldset span>select{max-width:7.3em}.vjs-text-track-settings legend{color:#fff;font-size:1.2em;font-weight:700}.vjs-text-track-settings .vjs-label{margin:0 .5em .5em 0}.vjs-track-settings-controls button:focus,.vjs-track-settings-controls button:active{background-image:linear-gradient(#73859f 0%,#fff 12%);outline-width:medium;outline-style:solid}.vjs-track-settings-controls button:hover{color:#2b333fbf}.vjs-track-settings-controls button{color:#2b333f;cursor:pointer;background-color:#fff;background-image:linear-gradient(-180deg,#fff 88%,#73859f 100%);border-radius:2px}.vjs-track-settings-controls .vjs-default-button{margin-right:1em}.vjs-title-bar{pointer-events:none;background:linear-gradient(#000000e6 0%,#000000b3 60%,#0000 100%);width:100%;padding:.666em 1.333em 4em;font-size:1.2em;line-height:1.5;transition:opacity .1s;position:absolute;top:0}.vjs-error .vjs-title-bar{display:none}.vjs-title-bar-title,.vjs-title-bar-description{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.vjs-title-bar-title{margin-bottom:.333em;font-weight:700}.vjs-playing.vjs-user-inactive .vjs-title-bar{opacity:0;transition:opacity 1s}.video-js .vjs-skip-forward-5,.video-js .vjs-skip-forward-10,.video-js .vjs-skip-forward-30,.video-js .vjs-skip-backward-5,.video-js .vjs-skip-backward-10,.video-js .vjs-skip-backward-30{cursor:pointer}.video-js .vjs-transient-button{cursor:pointer;opacity:1;background-color:#32323280;justify-content:center;align-items:center;height:3em;transition:opacity 1s;display:flex;position:absolute}.video-js:not(.vjs-has-started) .vjs-transient-button{display:none}.video-js.not-hover .vjs-transient-button:not(.force-display),.video-js.vjs-user-inactive .vjs-transient-button:not(.force-display){opacity:0}.video-js .vjs-transient-button span{padding:0 .5em}.video-js .vjs-transient-button.vjs-left{left:1em}.video-js .vjs-transient-button.vjs-right{right:1em}.video-js .vjs-transient-button.vjs-top{top:1em}.video-js .vjs-transient-button.vjs-near-top{top:4em}.video-js .vjs-transient-button.vjs-bottom{bottom:4em}.video-js .vjs-transient-button:hover{background-color:#323232e6}@media print{.video-js>:not(.vjs-tech):not(.vjs-poster){visibility:hidden}}.vjs-resize-manager{z-index:-1000;border:none;width:100%;height:100%;position:absolute;top:0;left:0}.js-focus-visible .video-js :focus:not(.focus-visible),.video-js :focus:not(:focus-visible){outline:none}.player[data-v-4ab3cf75]{user-select:none;-webkit-tap-highlight-color:transparent;width:100%;max-width:800px;margin:0 auto}[data-vjs-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#000;position:relative;overflow:hidden;container:player-shell/inline-size}.video-js--hidden[data-v-4ab3cf75]{opacity:0}.player__shell--portrait[data-v-4ab3cf75]{width:auto;max-width:100%;max-height:75vh;margin:0 auto}.player__native-play[data-v-4ab3cf75]{z-index:3;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.player__native-play[data-v-4ab3cf75]>*{pointer-events:auto}.player__placeholder[data-v-4ab3cf75]{border-radius:var(--mvp-radius,12px);opacity:.3;background:#eee;width:100%}.player__backdrop[data-v-4ab3cf75]{z-index:999;background:var(--mvp-backdrop,#fffc);position:fixed;inset:0}.player__focus-frame--active[data-v-4ab3cf75]{z-index:1000;flex-direction:column;gap:12px;width:min(720px,100vw - 32px);max-height:calc(100vh - 32px);display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.player__focus-frame--active .player__shell[data-v-4ab3cf75],.player__focus-frame--active .player__shell--portrait[data-v-4ab3cf75]{align-self:center;margin:0}.player__focus-controls[data-v-4ab3cf75]{justify-content:center;display:flex}.player__shell[data-v-4ab3cf75]:fullscreen{border-radius:0;width:100vw;height:100vh}.player__shell:fullscreen .video-js[data-v-4ab3cf75],.player__shell:fullscreen [data-vjs-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.video-js{border-radius:var(--mvp-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.video-js .vjs-big-play-button,.video-js .vjs-control-bar,.video-js .vjs-error-display,.vjs-youtube .vjs-loading-spinner,.vjs-vimeo .vjs-loading-spinner,.vjs-dailymotion .vjs-loading-spinner{display:none!important}.video-js .vjs-poster{background-size:cover;transition:opacity .3s}.video-js .vjs-poster img{object-fit:cover}.video-js.vjs-has-started .vjs-poster{opacity:0;pointer-events:none}.vjs-dailymotion .vjs-tech>*,.vjs-dailymotion .dailymotion-player-root,.vjs-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.vjs-vimeo .vjs-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.vjs-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.video-js .ima-ad-container{pointer-events:none;z-index:20!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.vjs-ad-playing .ima-ad-container{pointer-events:auto}.vjs-ad-playing .overlay__tap-capture,.vjs-ad-playing .overlay__hud,.vjs-ad-playing .overlay__spinner{display:none!important}.stage-wrapper[data-v-fb8c86cf]{width:100%;max-width:800px;margin:0 auto}.stage[data-v-fb8c86cf]{width:100%}.stage__dismiss[data-v-fb8c86cf]{z-index:10;backdrop-filter:blur(6px);color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:all .15s;display:flex;position:absolute;top:.4rem;right:.4rem}.stage__dismiss[data-v-fb8c86cf]:hover{background:#000000d9}.stage__dismiss svg[data-v-fb8c86cf]{width:14px;height:14px}.stage--minified[data-v-fb8c86cf]{z-index:100;margin:0;position:fixed;overflow:hidden;box-shadow:0 8px 32px #0009}.stage--minified:has([data-focused]){&[data-v-fb8c86cf]{box-shadow:none}& .stage__dismiss[data-v-fb8c86cf]{opacity:0}}.stage--pin-bottom-right[data-v-fb8c86cf],.stage--pin-bottom-left[data-v-fb8c86cf],.stage--pin-top-right[data-v-fb8c86cf],.stage--pin-top-left[data-v-fb8c86cf]{border-radius:var(--mvp-radius,12px);width:300px;max-width:300px;@media (width<=740px){max-width:200px}}.stage--pin-bottom-right[data-v-fb8c86cf]{bottom:1.25rem;right:1.25rem}.stage--pin-bottom-left[data-v-fb8c86cf]{bottom:1.25rem;left:1.25rem}.stage--pin-top-right[data-v-fb8c86cf]{top:1.25rem;right:1.25rem}.stage--pin-top-left[data-v-fb8c86cf]{top:1.25rem;left:1.25rem}.stage--pin-full-width[data-v-fb8c86cf]{width:100%;max-width:100%;box-shadow:none;border-radius:0;top:0;left:0;right:0}.stage__idle[data-v-fb8c86cf]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#111;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.stage__idle-poster[data-v-fb8c86cf]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.stage__idle-scrim[data-v-fb8c86cf]{background:#00000073;transition:background .15s;position:absolute;inset:0}.stage__idle:hover .stage__idle-scrim[data-v-fb8c86cf]{background:#0000004d}.stage__idle-body[data-v-fb8c86cf]{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;display:flex;position:relative}.stage__idle-btn[data-v-fb8c86cf]{backdrop-filter:blur(4px);color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .15s,background .15s;display:flex}.stage__idle:hover .stage__idle-btn[data-v-fb8c86cf]{background:#000c;transform:scale(1.1)}.stage__idle-btn svg[data-v-fb8c86cf]{width:32px;height:32px}.stage__idle-title[data-v-fb8c86cf]{color:#f1f5f9;text-shadow:0 1px 4px #000c;font-size:1rem;font-weight:600}.stage__idle-empty[data-v-fb8c86cf]{color:#64748b;font-size:.95rem}.placeholder[data-v-dbcb4f82]{width:100%}.placeholder__shell[data-v-dbcb4f82]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#111;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height:75vh;margin:0 auto}.placeholder__poster[data-v-dbcb4f82]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.placeholder__scrim[data-v-dbcb4f82]{background:#00000059;transition:background .15s;position:absolute;inset:0}.placeholder__shell:hover .placeholder__scrim[data-v-dbcb4f82]{background:#00000026}.placeholder__btn-wrap[data-v-dbcb4f82]{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.placeholder__btn-wrap[data-v-dbcb4f82]>*{pointer-events:auto}.placeholder__footer[data-v-dbcb4f82]{pointer-events:none;background:linear-gradient(#0000 0%,#000c 100%);padding:1.5rem .75rem .6rem;position:absolute;bottom:0;left:0;right:0}.placeholder__title[data-v-dbcb4f82]{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 3px #0009;font-size:.8rem;font-weight:600;overflow:hidden}.placeholder__badge[data-v-dbcb4f82]{z-index:1;text-transform:uppercase;letter-spacing:.06em;color:#fff;border-radius:4px;padding:2px 6px;font-size:.6rem;font-weight:700;position:absolute;top:6px;left:6px}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@munsonlabs/video-player",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "dist"
@@ -1 +0,0 @@
1
- import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{s as n,t as r}from"./tech-DQUZqNr6.mjs";var i=e(t(),1);function a(e){let t=e.match(/^brightcove:\/\/([^/]+)\/([^/]+)\/([^/]+)\/([^/]+)$/);return t?{accountId:t[1],playerId:t[2],embed:t[3],videoId:t[4]}:null}function o(e){return(e?.plugins??[]).find(e=>e.name===`ima3`)?.options?.serverUrl??null}const s=r(async(e,t,n,r)=>{let i=await fetch(`https://players.brightcove.net/${e}/${t}_${n}/config.json`);if(!i.ok)throw Error(`Brightcove: could not load player config (${i.status})`);let a=await i.json(),s=r??a?.video_cloud?.policy_key;if(!s)throw Error(`Brightcove: policy_key not found in player config`);return{policyKey:s,adTagUrl:o(a)}},(e,t,n)=>`${e}/${t}_${n}`);async function c(e,t){let n=a(e);if(!n)return null;let{accountId:r,playerId:i,embed:o}=n;return s(r,i,o,t)}async function l(e,t,r){let i=await fetch(`https://edge.api.brightcove.com/playback/v1/accounts/${e}/videos/${t}`,{headers:{Accept:`application/json;pk=${r}`}});if(!i.ok)throw Error(`Brightcove Playback API error: ${i.status}`);let a=await i.json(),o=n(a.sources||[]);if(!o.length)throw Error(`Brightcove: no playable sources found`);return{sources:o.map(e=>({src:e.src,type:e.type})),poster:a.poster??a.thumbnail??null}}i.default.use(`video/brightcove`,e=>({setSource(t,n){let r=a(t.src);if(!r){n(Error(`Brightcove: invalid src — expected "brightcove://accountId/playerId/embed/videoId"`),t);return}let{accountId:o,playerId:c,embed:u,videoId:d}=r,f=e.options_?.brightcove?.policyKey;(async()=>{try{let{policyKey:t}=await s(o,c,u,f);i.default.log(`Brightcove: resolved policy key, fetching sources…`);let{sources:r,poster:a}=await l(o,d,t);i.default.log(`Brightcove: sources resolved`,r),a&&!e.poster()&&e.poster(a),n(null,r[0])}catch(e){i.default.log.error(`Brightcove error:`,e.message),n(e,t)}})()}}));export{c as prefetchConfig};
@@ -1 +0,0 @@
1
- import{s as e,t}from"./tech-BOi4jf1S.mjs";import n from"video.js";function r(e){let t=e.match(/^brightcove:\/\/([^/]+)\/([^/]+)\/([^/]+)\/([^/]+)$/);return t?{accountId:t[1],playerId:t[2],embed:t[3],videoId:t[4]}:null}function i(e){return(e?.plugins??[]).find(e=>e.name===`ima3`)?.options?.serverUrl??null}const a=t(async(e,t,n,r)=>{let a=await fetch(`https://players.brightcove.net/${e}/${t}_${n}/config.json`);if(!a.ok)throw Error(`Brightcove: could not load player config (${a.status})`);let o=await a.json(),s=r??o?.video_cloud?.policy_key;if(!s)throw Error(`Brightcove: policy_key not found in player config`);return{policyKey:s,adTagUrl:i(o)}},(e,t,n)=>`${e}/${t}_${n}`);async function o(e,t){let n=r(e);if(!n)return null;let{accountId:i,playerId:o,embed:s}=n;return a(i,o,s,t)}async function s(t,n,r){let i=await fetch(`https://edge.api.brightcove.com/playback/v1/accounts/${t}/videos/${n}`,{headers:{Accept:`application/json;pk=${r}`}});if(!i.ok)throw Error(`Brightcove Playback API error: ${i.status}`);let a=await i.json(),o=e(a.sources||[]);if(!o.length)throw Error(`Brightcove: no playable sources found`);return{sources:o.map(e=>({src:e.src,type:e.type})),poster:a.poster??a.thumbnail??null}}n.use(`video/brightcove`,e=>({setSource(t,i){let o=r(t.src);if(!o){i(Error(`Brightcove: invalid src — expected "brightcove://accountId/playerId/embed/videoId"`),t);return}let{accountId:c,playerId:l,embed:u,videoId:d}=o,f=e.options_?.brightcove?.policyKey;(async()=>{try{let{policyKey:t}=await a(c,l,u,f);n.log(`Brightcove: resolved policy key, fetching sources…`);let{sources:r,poster:o}=await s(c,d,t);n.log(`Brightcove: sources resolved`,r),o&&!e.poster()&&e.poster(o),i(null,r[0])}catch(e){n.log.error(`Brightcove error:`,e.message),i(e,t)}})()}}));export{o as prefetchConfig};
@@ -1 +0,0 @@
1
- import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";import{s as n,t as r}from"./tech-DQUZqNr6.mjs";var i=e(t(),1);function a(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function o(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const s=r(async e=>{let t=await fetch(`https://cdn.jwplayer.com/v2/media/${e}`);if(!t.ok)throw Error(`JW Platform API error: ${t.status}`);let r=(await t.json()).playlist?.[0];if(!r)throw Error(`JW Platform: empty playlist`);let i=n((r.sources??[]).map(e=>({src:e.file,type:e.type})));if(!i.length)throw Error(`JW Platform: no playable sources found`);return{src:i[0].src,type:i[0].type,poster:r.image??null,adTagUrl:o(r)}});async function c(e){let t=a(e);if(!t)throw Error(`JW Platform: unrecognised source URL: ${e}`);let n=await s(t);if(e.startsWith(`jwplayer://`))return n;let r=/\.mp4(\?|$)/.test(e)?`video/mp4`:`application/x-mpegURL`;return{...n,src:e,type:r}}async function l(e){let t=a(e);return t?s(t).catch(()=>null):null}i.default.use(`video/jwplayer`,e=>({setSource(t,n){(async()=>{try{let{src:r,type:a,poster:o}=await c(t.src);i.default.log(`JW Platform: resolved source`,r),o&&!e.poster()&&e.poster(o),n(null,{src:r,type:a})}catch(e){i.default.log.error(`JW Platform error:`,e.message),n(e,t)}})()}}));export{l as prefetchConfig};
@@ -1 +0,0 @@
1
- import{s as e,t}from"./tech-BOi4jf1S.mjs";import n from"video.js";function r(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function i(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const a=t(async t=>{let n=await fetch(`https://cdn.jwplayer.com/v2/media/${t}`);if(!n.ok)throw Error(`JW Platform API error: ${n.status}`);let r=(await n.json()).playlist?.[0];if(!r)throw Error(`JW Platform: empty playlist`);let a=e((r.sources??[]).map(e=>({src:e.file,type:e.type})));if(!a.length)throw Error(`JW Platform: no playable sources found`);return{src:a[0].src,type:a[0].type,poster:r.image??null,adTagUrl:i(r)}});async function o(e){let t=r(e);if(!t)throw Error(`JW Platform: unrecognised source URL: ${e}`);let n=await a(t);if(e.startsWith(`jwplayer://`))return n;let i=/\.mp4(\?|$)/.test(e)?`video/mp4`:`application/x-mpegURL`;return{...n,src:e,type:i}}async function s(e){let t=r(e);return t?a(t).catch(()=>null):null}n.use(`video/jwplayer`,e=>({setSource(t,r){(async()=>{try{let{src:i,type:a,poster:s}=await o(t.src);n.log(`JW Platform: resolved source`,i),s&&!e.poster()&&e.poster(s),r(null,{src:i,type:a})}catch(e){n.log.error(`JW Platform error:`,e.message),r(e,t)}})()}}));export{s as prefetchConfig};
@@ -1 +0,0 @@
1
- import e from"video.js";const t=`video-select`,n=`video-toggle`,r=`video-state`,i=`fullscreen-pending`,a=`fullscreen-pending-done`,o=`ads-pod-started`,s=`ads-pod-ended`,c=`player:positions`,l=new Set([`Youtube`,`Vimeo`,`Dailymotion`]);function u(e){return l.has(e)}function d(){return/iPad|iPhone|iPod/.test(navigator.userAgent)||/Mac/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function f(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled)}function p(e){(e.requestFullscreen||e.webkitRequestFullscreen)?.call(e)}function m(){(document.exitFullscreen||document.webkitExitFullscreen)?.call(document)}function h(t,n){e.registerTech(t,n)}function g(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}function _(e){return!e||isNaN(e)?`0:00`:`${Math.floor(e/60)}:${String(Math.floor(e%60)).padStart(2,`0`)}`}function v(e,t=(...e)=>String(e[0])){let n={};return async(...r)=>{let i=t(...r);if(n[i])return n[i];let a=await e(...r);return n[i]=a,a}}function y(e){return e.filter(e=>e.src&&(e.type===`application/x-mpegURL`||e.type===`video/mp4`)).sort((e,t)=>e.type===`application/x-mpegURL`?-1:1)}export{r as _,d as a,h as c,c as d,s as f,t as g,a as h,u as i,p as l,i as m,m as n,g as o,o as p,_ as r,y as s,v as t,f as u,n as v};
@@ -1 +0,0 @@
1
- import{a as e,t}from"./video.cjs-gZWrkL0e.mjs";var n=e(t(),1);const r=`video-select`,i=`video-toggle`,a=`video-state`,o=`fullscreen-pending`,s=`fullscreen-pending-done`,c=`ads-pod-started`,l=`ads-pod-ended`,u=`player:positions`,d=new Set([`Youtube`,`Vimeo`,`Dailymotion`]);function f(e){return d.has(e)}function p(){return/iPad|iPhone|iPod/.test(navigator.userAgent)||/Mac/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function m(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled)}function h(e){(e.requestFullscreen||e.webkitRequestFullscreen)?.call(e)}function g(){(document.exitFullscreen||document.webkitExitFullscreen)?.call(document)}function _(e,t){n.default.registerTech(e,t)}function v(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}function y(e){return!e||isNaN(e)?`0:00`:`${Math.floor(e/60)}:${String(Math.floor(e%60)).padStart(2,`0`)}`}function b(e,t=(...e)=>String(e[0])){let n={};return async(...r)=>{let i=t(...r);if(n[i])return n[i];let a=await e(...r);return n[i]=a,a}}function x(e){return e.filter(e=>e.src&&(e.type===`application/x-mpegURL`||e.type===`video/mp4`)).sort((e,t)=>e.type===`application/x-mpegURL`?-1:1)}export{a as _,p as a,_ as c,u as d,l as f,r as g,s as h,f as i,h as l,o as m,g as n,v as o,c as p,y as r,x as s,b as t,m as u,i as v};