@munsonlabs/video-player 0.0.8 → 0.0.9
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.
- package/README.md +45 -61
- package/dist/element.d.mts +0 -1
- package/dist/element.mjs +13 -3
- package/dist/index.d.mts +18 -5
- package/dist/index.mjs +1 -3
- package/dist/style.css +1 -1
- package/package.json +2 -5
- package/dist/chunks/brightcove-BQ7atfxD.mjs +0 -1
- package/dist/chunks/brightcove-wzVhFaj0.mjs +0 -1
- package/dist/chunks/dailymotion-BkCqcmM9.mjs +0 -1
- package/dist/chunks/dailymotion-CEXthEHH.mjs +0 -1
- package/dist/chunks/jwplayer-BHEYGzXA.mjs +0 -1
- package/dist/chunks/jwplayer-DZmqU8XG.mjs +0 -1
- package/dist/chunks/loadScript-Du6JsTc2.mjs +0 -1
- package/dist/chunks/tech-BNI0cffg.mjs +0 -1
- package/dist/chunks/tech-DHDK_NLh.mjs +0 -1
- package/dist/chunks/video.cjs-gZWrkL0e.mjs +0 -239
- package/dist/chunks/videojs.ads-jA_s2l9Y.mjs +0 -3
- package/dist/chunks/videojs.ima-Ccon1y6f.mjs +0 -2
- package/dist/chunks/vimeo-C54chOVx.mjs +0 -1
- package/dist/chunks/vimeo-DiVKBACn.mjs +0 -15
- package/dist/chunks/youtube-BjxCa1gp.mjs +0 -1
- package/dist/chunks/youtube-CLB51PMl.mjs +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1 @@
|
|
|
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,Teleport as b,Transition as x,computed as S,createBlock as C,createCommentVNode as w,createElementBlock as T,createElementVNode as E,createStaticVNode as D,createVNode as O,defineComponent as k,inject as A,mergeProps as j,nextTick as M,normalizeClass as N,normalizeProps as P,normalizeStyle as F,onBeforeUnmount as I,onMounted as L,openBlock as R,provide as z,reactive as ee,ref as B,toDisplayString as V,toRef as H,unref as U,watch as W,withCtx as te,withModifiers as G}from"vue";import ne from"video.js";const re={},ie=[{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 ae(e){return ie.find(t=>t.test(e))?.key??`html5`}function oe(e){return ie.find(t=>t.test(e))?.tech!=null}async function se(e){let t=ie.find(t=>t.test(e));if(!t)return{tech:null,type:null,adTagUrl:null};re[t.key]||(re[t.key]=t.load());let n=null,{prefetchConfig:r}=await re[t.key];return r&&(n=(await r(e).catch(()=>null))?.adTagUrl??null),{tech:t.tech,type:t.type,adTagUrl:n}}function ce(e){return!u(e)}function le(){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 ue(e,t){return!t||!ce(e)?!1:(await le(),await import(`videojs-contrib-ads`),await import(`videojs-ima`),!0)}function de(e,t,n={}){e.ima({adTagUrl:t,showControlsForJSAds:!1,...n})}const fe=new Set;function pe(e){return fe.add(e),()=>fe.delete(e)}function me(e){fe.forEach(t=>{if(t!==e)try{t()}catch{}})}function he(e,t){let n=B(!1),r=B(!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 L(()=>{document.addEventListener(`fullscreenchange`,i),document.addEventListener(`webkitfullscreenchange`,i)}),I(()=>{document.removeEventListener(`fullscreenchange`,i),document.removeEventListener(`webkitfullscreenchange`,i)}),{isFullscreen:n,isFullscreenPending:r,toggleFullscreen:c,attachPlayerEvents:l}}function ge(){let e=B(!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 I(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}function _e(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 ve(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function ye(e){localStorage.setItem(_,JSON.stringify(e))}function be(e,t){if(t<5)return;let n=ve().filter(t=>t.url!==e);n.unshift({url:e,time:t}),ye(n.slice(0,5))}function xe(e){return ve().find(t=>t.url===e)?.time??null}function Se(e){ye(ve().filter(t=>t.url!==e))}function Ce(e,t,n){let r=!1;function i(t){if(r)return;let n=xe(e);n&&t.currentTime(n),r=!0}function a(t){!t||n.value||be(e,t.currentTime()??0)}function o(){Se(e)}function s(){document.visibilityState===`hidden`&&a(t())}return L(()=>document.addEventListener(`visibilitychange`,s)),I(()=>{a(t()),document.removeEventListener(`visibilitychange`,s)}),{restoreOnce:i,save:a,clear:o}}function we(e,t,n){let r=null;L(()=>{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))}),I(()=>r?.disconnect())}function Te(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 Ee(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],()=>{me(x),s.value=!0,b(`adstart`)}),t.on([`adend`,i],()=>{s.value=!1,b(`adend`)}),t.on(`play`,()=>{me(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 De(e,t,n){let r=null,i=null,a=null,o=B(!1),s=B(!1),c=B(!1),l=B(!1),u=B(0),d=B(0),f=B(0),p=B(1),h=B(t.muted??t.autoplay??!1),g=B(!1),_=B(t.playbackRate??1),v=B(!1),y=B(!1),b=B(!1),x=B(``),C=B(!1),w=S(()=>d.value?u.value/d.value*100:0),T=S(()=>Math.max(f.value,w.value)),E=()=>r,D=()=>r?.tech({IWillNotUseThisInPlugins:!0}),O=he(E,D),k=ge(),A=Ce(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=_e(u,d,j);function N(){!r||!a||(b.value=!1,x.value=``,r.src(a))}function P(){r?.pause()}let F=Te(E,c,d,g,_),{attachPlayerEvents:R}=Ee({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:x},{getTech:D,fire:j,pauseThisPlayer:P,positionMemory:A,quartiles:M,buffering:k,fullscreen:O});return W(()=>t.muted,e=>{!r||e===void 0||r.muted(e)}),W(()=>t.playbackRate,e=>{!r||e===void 0||r.playbackRate(e)}),we(e,E,O.isFullscreen),L(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,C.value=!!(t.nativeUi&&!ce(n??``)),r=ne(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&&(de(r,l,t.imaOptions??{}),r.src(d)),i=pe(P),R(r)}),I(()=>{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:x,progress:w,bufferedDisplay:T,isFullscreen:O.isFullscreen,isFullscreenPending:O.isFullscreenPending,fmt:m,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:C}}function Oe(e,t){let n=B(!0),r=B(!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 W(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),I(()=>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 ke(e,t,n){if(!document.startViewTransition||!e.value){n();return}e.value.style.viewTransitionName=t,document.startViewTransition(async()=>{n(),await M()}).finished.finally(()=>{e.value&&(e.value.style.viewTransitionName=``)})}function Ae(e,t,n,r,i){let a=typeof document<`u`&&!!document.startViewTransition,o=S(()=>t.value&&a);W(()=>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}ke(i,`player-focus`,r)}),W(()=>n.isFullscreen,()=>{r.isOpen&&r.closeControls()});function s(t){t.key===`Escape`&&e.value&&r.closeControls()}return L(()=>document.addEventListener(`keydown`,s)),I(()=>document.removeEventListener(`keydown`,s)),{focusModeEnabled:o}}function je(e,t){let n=B({width:0,height:0});function r(){n.value={width:window.innerWidth,height:window.innerHeight}}return L(()=>{r(),window.addEventListener(`resize`,r)}),I(()=>window.removeEventListener(`resize`,r)),S(()=>{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`),Me=Symbol(`compact`);function Y(e){let t=A(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:S(()=>!e.isReady||e.isError||t.isOpen&&e.isFullscreen?!1:t.showHUD),popupVisible:S(()=>!e.isReady||e.isError||n.value&&!e.isFullscreen?!1:t.isOpen)}}function Pe(e,t,n){return S(()=>!(!e?.value||t.value||n.isFullscreen))}function Fe(e,t){let n=S(()=>e?.value??null),r=S(()=>!!n.value&&typeof n.value==`object`),i=S(()=>r.value?n.value:null),a=S(()=>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 Ie={},Le={viewBox:`0 0 24 24`,fill:`currentColor`};function Re(e,t){return R(),T(`svg`,Le,[...t[0]||=[E(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var ze=X(Ie,[[`render`,Re]]);const Be={},Ve={viewBox:`0 0 24 24`,fill:`currentColor`};function He(e,t){return R(),T(`svg`,Ve,[...t[0]||=[E(`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=X(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 R(),T(`svg`,Ge,[...t[0]||=[D(`<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=X(We,[[`render`,Ke]]);const Je={},Ye={viewBox:`0 0 24 24`,fill:`currentColor`};function Xe(e,t){return R(),T(`svg`,Ye,[...t[0]||=[E(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var Ze=X(Je,[[`render`,Xe]]);const Qe={},$e={viewBox:`0 0 24 24`,fill:`currentColor`};function et(e,t){return R(),T(`svg`,$e,[...t[0]||=[E(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var tt=X(Qe,[[`render`,et]]);const nt={},rt={viewBox:`0 0 24 24`,fill:`currentColor`};function it(e,t){return R(),T(`svg`,rt,[...t[0]||=[E(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var at=X(nt,[[`render`,it]]);const ot={},st={viewBox:`0 0 24 24`,fill:`currentColor`};function ct(e,t){return R(),T(`svg`,st,[...t[0]||=[E(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var lt=X(ot,[[`render`,ct]]);const ut={},dt={viewBox:`0 0 24 24`,fill:`currentColor`};function ft(e,t){return R(),T(`svg`,dt,[...t[0]||=[E(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var pt=X(ut,[[`render`,ft]]);const mt={},ht={viewBox:`0 0 24 24`,fill:`currentColor`};function gt(e,t){return R(),T(`svg`,ht,[...t[0]||=[E(`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=X(mt,[[`render`,gt]]);const vt={},yt={viewBox:`0 0 24 24`,fill:`currentColor`};function bt(e,t){return R(),T(`svg`,yt,[...t[0]||=[E(`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=X(vt,[[`render`,bt]]);const St={},Ct={viewBox:`0 0 24 24`,fill:`currentColor`};function wt(e,t){return R(),T(`svg`,Ct,[...t[0]||=[E(`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=X(St,[[`render`,wt]]);const Et=[`aria-label`];var Z=X(k({__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=S(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,r)=>(R(),T(`button`,{class:N([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":n.value,onClick:r[0]||=G(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(R(),C(U(lt),{key:0})):e.hasEnded?(R(),C(U(_t),{key:1})):(R(),C(U(pt),{key:2}))],10,Et))}}),[[`__scopeId`,`data-v-85902525`]]),Dt=k({__name:`VolumeIcon`,setup(e){let t=Y(K),n=S(()=>!t.isMuted&&t.vol>0);return(e,t)=>n.value?(R(),C(U(Tt),{key:0})):(R(),C(U(xt),{key:1}))}}),Q=X(k({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(R(),T(`div`,{class:`spinner`,style:F({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=X(k({__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}=Fe(A(J),t);return(c,l)=>(R(),T(`div`,Ot,[!e.isFocused&&U(r)===`mute`?(R(),T(`button`,{key:0,class:N([`hud__btn`,{"hud__btn--active":U(t).isMuted}]),"aria-label":U(o),onClick:l[0]||=G((...e)=>U(s)&&U(s)(...e),[`stop`])},[O(Dt)],10,kt)):!e.isFocused&&U(r)===`loop`?(R(),T(`button`,{key:1,class:N([`hud__btn`,{"hud__btn--active":U(t).isLooping}]),"aria-label":U(o),onClick:l[1]||=G((...e)=>U(s)&&U(s)(...e),[`stop`])},[O(U(at))],10,At)):!e.isFocused&&U(i)&&U(a)?(R(),T(`button`,{key:2,class:`hud__btn`,"aria-label":U(a).label,onClick:l[2]||=G(e=>U(a).onClick(),[`stop`]),innerHTML:U(a).icon},null,8,jt)):(R(),T(`div`,Mt)),E(`div`,Nt,[O(Z,{"is-playing":U(t).isPlaying,"has-ended":U(t).hasEnded,size:`lg`,onTogglePlay:U(t).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),U(t).isBuffering?(R(),C(Q,{key:0,class:`hud__buf-spinner`})):w(`v-if`,!0)]),e.isFocused?(R(),T(`div`,Pt)):(R(),T(`button`,{key:4,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[3]||=G((...e)=>U(n).openControls&&U(n).openControls(...e),[`stop`])},[O(U(qe))]))]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);function It(e){let t=B(null),n=S(()=>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 W(()=>e.current,()=>{if(t.value===null||!e.total)return;let n=t.value/100*e.total;Math.abs(e.current-n)<1&&i()}),I(i),{displaySeek:n,onSeekInput:a,onSeekChange:o}}function Lt(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 Rt={class:`controls__vol-header`},zt=[`aria-label`],Bt={class:`controls__vol-body`},Vt=[`value`],Ht={class:`controls__vol-pct`};var Ut=X(k({__name:`VolumePanel`,emits:[`back`],setup(e){let t=Y(K),n=Y(q),r=S(()=>t.isMuted?0:Math.round(t.vol*100));function i(e){t.setVolume(Number(e.target.value)/100)}return(e,a)=>(R(),T(y,null,[E(`div`,Rt,[E(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:a[0]||=t=>e.$emit(`back`)},[O(U(ze))]),a[6]||=E(`span`,{class:`controls__vol-label`},`Volume`,-1),E(`button`,{class:`controls__btn`,"aria-label":U(t).isMuted?`Unmute`:`Mute`,onClick:a[1]||=e=>U(t).toggleMute()},[O(Dt)],8,zt)]),E(`div`,Bt,[E(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`controls__vol-slider`,style:F({"--v":r.value+`%`}),"aria-label":`Volume`,onInput:i,onMousedown:a[2]||=e=>U(n).pauseHide(),onMouseup:a[3]||=e=>U(n).scheduleHide(),onTouchstartPassive:a[4]||=e=>U(n).pauseHide(),onTouchend:a[5]||=e=>U(n).scheduleHide()},null,44,Vt),E(`span`,Ht,V(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={class:`controls__fs-wrap`},Xt=[`aria-label`];var Zt=X(k({__name:`ControlsPopup`,props:{focusMode:{type:Boolean,required:!1,default:!1}},setup(e){let t=e,n=Y(K),r=Y(q),i=Pe(A(Me),H(t,`focusMode`),n),{isCustom:a,customAction:s}=Fe(A(J),n),c=B(!1),l=B(null);I(()=>{c.value=!1});function u(e){r.suppressMouseLeave(),ke(l,`controls-popup`,e)}function d(){if(o()){n.toggleMute();return}u(()=>{c.value=!0})}let{displaySeek:f,onSeekInput:p,onSeekChange:m}=It(n),{cycleRate:h,fmtRate:g}=Lt(n);return(t,o)=>(R(),T(`div`,{ref_key:`popupEl`,ref:l,class:N([`controls`,{"controls--fs":U(n).isFullscreen||e.focusMode,"controls--compact":U(i)}]),onMousemove:o[13]||=G((...e)=>U(r).keepOpen&&U(r).keepOpen(...e),[`stop`])},[c.value?(R(),C(Ut,{key:0,onBack:o[0]||=e=>u(()=>c.value=!1)})):(R(),T(y,{key:1},[E(`input`,{type:`range`,min:`0`,max:`100`,value:U(f),class:`controls__seek`,style:F({"--p":U(f)+`%`,"--b":U(n).bufferedDisplay+`%`}),onInput:o[1]||=(...e)=>U(p)&&U(p)(...e),onChange:o[2]||=(...e)=>U(m)&&U(m)(...e),onMousedown:o[3]||=e=>U(r).pauseHide(),onMouseup:o[4]||=e=>U(r).scheduleHide(),onTouchstartPassive:o[5]||=e=>U(r).pauseHide(),onTouchend:o[6]||=e=>U(r).scheduleHide()},null,44,Wt),E(`div`,Gt,[E(`div`,Kt,[U(n).isBuffering?(R(),C(Q,{key:0})):(R(),C(Z,{key:1,"is-playing":U(n).isPlaying,"has-ended":U(n).hasEnded,size:`sm`,onTogglePlay:o[7]||=e=>U(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),E(`span`,qt,V(U(n).fmt(U(n).current))+` / `+V(U(n).fmt(U(n).total)),1),U(n).supportsPlaybackRate?(R(),T(`button`,{key:0,class:N([`controls__btn controls__btn--rate`,{"controls__btn--active":U(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:o[8]||=(...e)=>U(h)&&U(h)(...e)},V(U(g)(U(n).playbackRate)),3)):w(`v-if`,!0),E(`button`,{class:N([`controls__btn controls__btn--loop`,{"controls__btn--active":U(n).isLooping}]),"aria-label":`Toggle loop`,onClick:o[9]||=e=>U(n).toggleLoop()},[O(U(at))],2),E(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:d},[O(Dt)]),U(a)&&U(s)?(R(),T(`button`,{key:1,class:`controls__btn`,"aria-label":U(s).label,onClick:o[10]||=e=>U(s).onClick(),innerHTML:U(s).icon},null,8,Jt)):w(`v-if`,!0),E(`div`,Yt,[U(n).isFullscreenPending?(R(),C(Q,{key:0})):(R(),T(`button`,{key:1,class:`controls__btn`,"aria-label":U(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:o[11]||=e=>U(n).toggleFullscreen()},[U(n).isFullscreen?(R(),C(U(tt),{key:0})):(R(),C(U(Ze),{key:1}))],8,Xt))]),E(`button`,{class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:o[12]||=e=>U(r).closeControls()},[O(U(Ue))])])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Qt={key:0,class:`overlay__spinner`},$t={key:0,class:`overlay__error`};var en=X(k({__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}=Ne(n,r,H(t,`focusMode`));return(t,o)=>(R(),T(y,null,[e.disableTapCapture?w(`v-if`,!0):(R(),T(`div`,{key:0,class:`overlay__tap-capture`,style:F({pointerEvents:!U(n).hasStarted||U(n).isAdPlaying?`none`:void 0}),onClick:o[0]||=(...e)=>U(r).onVideoTap&&U(r).onVideoTap(...e),onTouchend:o[1]||=G((...e)=>U(r).onVideoTap&&U(r).onVideoTap(...e),[`prevent`,`stop`])},null,36)),O(x,{name:`fade`},{default:te(()=>[!U(n).isReady&&!U(n).isError?(R(),T(`div`,Qt,[O(Q,{size:40,"border-width":3})])):w(`v-if`,!0)]),_:1}),O(x,{name:`fade`},{default:te(()=>[U(n).isError?(R(),T(`div`,$t,[E(`p`,null,V(U(n).errorMessage||`This video could not be played.`),1),E(`button`,{class:`overlay__retry`,onClick:o[2]||=G((...e)=>U(n).retry&&U(n).retry(...e),[`stop`])},`Retry`)])):w(`v-if`,!0)]),_:1}),E(`div`,{class:N([`overlay__hud`,{"overlay__hud--visible":U(i)}])},[O(Ft,{"is-focused":e.isFocused},null,8,[`is-focused`])],2),O(x,{name:`popup`},{default:te(()=>[U(a)?(R(),T(`div`,{key:0,class:N([`overlay__popup`,{"overlay__popup--fs":U(n).isFullscreen}]),onClick:o[3]||=G(()=>{},[`stop`])},[O(Zt)],2)):w(`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 $=X(k({__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=B(null),o=ee(De(a,r,i)),s=B(!1),c=ee(Oe(H(o,`isPlaying`),s));z(K,o),z(q,c),z(J,H(r,`action`));let{isPortrait:l,cssRatio:u}=f(r.aspectRatio),d=B(null),{focusModeEnabled:p}=Ae(s,H(r,`focusMode`),o,c,d),m=je(s,H(r,`aspectRatio`)),h=S(()=>!r.poster&&!o.isReady),g=S(()=>!oe(r.videoUrl));return t(o),(e,t)=>(R(),T(`div`,{class:`player`,"data-focused":s.value?``:null},[s.value?(R(),T(`div`,{key:0,class:N([`player__placeholder`,{"player__shell--portrait":U(l)}]),style:F({aspectRatio:U(u)})},null,6)):w(`v-if`,!0),w(` Teleported to body while focused so the fixed-position overlay escapes any ancestor
|
|
2
|
-
that establishes its own containing block (transform, filter, contain, etc. combined with
|
|
3
|
-
overflow: hidden), which would otherwise clip it despite \`position: fixed\`. `),(R(),C(b,{to:`body`,disabled:!s.value||!g.value},[s.value?(R(),T(`div`,{key:0,class:`player__backdrop`,onClick:t[0]||=e=>c.closeControls()})):w(`v-if`,!0),E(`div`,{ref_key:`focusFrameEl`,ref:d,class:N([`player__focus-frame`,{"player__focus-frame--active":s.value}])},[E(`div`,{class:N([`player__shell`,{"player__shell--portrait":U(l)}]),style:F([{aspectRatio:U(u)},U(m)]),onMousemove:t[1]||=e=>c.onMouseMove(),onContextmenuCapture:t[2]||=G(()=>{},[`prevent`]),onMouseleave:t[3]||=e=>c.onMouseLeave()},[E(`div`,nn,[E(`video`,{ref_key:`videoEl`,ref:a,class:N([`video-js`,{"video-js--hidden":h.value}]),poster:r.poster,playsinline:``},null,10,rn),o.nativeUi?w(`v-if`,!0):(R(),C(en,{key:0,"focus-mode":U(p),"is-focused":s.value,"disable-tap-capture":r.disableTapCapture},null,8,[`focus-mode`,`is-focused`,`disable-tap-capture`])),o.nativeUi&&!o.hasStarted?(R(),T(`div`,an,[O(Z,{"is-playing":!1,size:`lg`,onTogglePlay:o.togglePlay},null,8,[`onTogglePlay`])])):w(`v-if`,!0)])],38),s.value?(R(),T(`div`,{key:0,class:`player__focus-controls`,onClick:t[4]||=G(()=>{},[`stop`])},[O(Zt,{"focus-mode":``})])):w(`v-if`,!0)],2)],8,[`disabled`]))],8,tn))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const on=B(0),sn=S(()=>on.value>0);function cn(){on.value++}function ln(){on.value--}function un(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function dn(e,t){let n=e=>t(e.detail);L(()=>window.addEventListener(e,n)),I(()=>window.removeEventListener(e,n))}const fn=[`src`],pn={class:`stage__idle-body`},mn={class:`stage__idle-btn`},hn={class:`stage__idle-title`},gn={key:1,class:`stage__idle-empty`};var _n=X(k({__name:`VideoStage`,props:{pinPosition:{type:String,required:!1,default:`bottom-right`}},emits:[`state-change`],setup(e,{emit:i}){let a=i,o=B(null),s=B(null),c=B(!1),l=B(!1),u=B(null),d=B(null),p=B(!1);z(Me,p);let m=S(()=>p.value&&!!s.value&&c.value),h=S(()=>f(s.value?.aspectRatio||`16:9`).cssRatio),g=B(null),_=B(null);W(p,e=>{g.value=e&&d.value?{height:d.value.offsetHeight,width:d.value.offsetWidth}:null});let v=S(()=>{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,x=null;function D(){b?.disconnect(),x?.disconnect(),u.value&&(b=new IntersectionObserver(([e])=>{p.value=!e.isIntersecting},{threshold:1}),b.observe(u.value),x=new ResizeObserver(([e])=>{_.value=e.contentRect.width}),x.observe(u.value))}W(u,D);function k(){s.value&&(s.value={...s.value,autoplay:!0},c.value=!0)}function A(){s.value=null,c.value=!1,l.value=!1,p.value=!1,g.value=null,M()}function M(){un(t,{currentVideoUrl:s.value?.videoUrl??null,isPlaying:l.value})}function P(e){if(s.value?.videoUrl===e.videoUrl&&c.value){o.value?.togglePlay();return}s.value=e,c.value=!1,l.value=!1,M(),c.value=!0}function ee(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 H(e){e.type===`play`&&(l.value=!0),(e.type===`pause`||e.type===`ended`)&&(l.value=!1),M(),a(`state-change`,e)}return dn(n,P),dn(r,ee),L(cn),I(()=>{ln(),b?.disconnect(),x?.disconnect()}),(t,n)=>(R(),T(`div`,{ref_key:`wrapperEl`,ref:u,class:`stage-wrapper`,style:F(v.value)},[E(`div`,{ref_key:`stageEl`,ref:d,class:N([`stage`,{"stage--minified":m.value,[`stage--pin-${e.pinPosition}`]:m.value}])},[m.value?(R(),T(`button`,{key:0,class:`stage__dismiss`,"aria-label":`Close`,onClick:G(A,[`stop`])},[O(U(Ue))])):w(`v-if`,!0),s.value&&c.value?(R(),C($,j({ref_key:`playerRef`,ref:o,key:s.value.videoUrl},s.value,{onStateChange:H}),null,16)):(R(),T(`div`,{key:2,class:`stage__idle`,style:F({aspectRatio:h.value}),onClick:k},[s.value?.poster?(R(),T(`img`,{key:0,src:s.value.poster,class:`stage__idle-poster`},null,8,fn)):w(`v-if`,!0),n[0]||=E(`div`,{class:`stage__idle-scrim`},null,-1),E(`div`,pn,[s.value?(R(),T(y,{key:0},[E(`div`,mn,[O(U(pt))]),E(`p`,hn,V(s.value.title),1)],64)):(R(),T(`p`,gn,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const vn={class:`placeholder`},yn=[`src`,`alt`],bn={class:`placeholder__btn-wrap`},xn={key:2,class:`placeholder__footer`},Sn={class:`placeholder__title`};var Cn=X(k({__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=B(!1),s=B(!1);dn(t,e=>{o.value=e.currentVideoUrl===r.videoUrl,s.value=o.value&&e.isPlaying});function c(e){un(n,{...r,...e!==void 0&&{autoplay:e}})}function l(){c(!0)}return L(()=>{r.autoStage&&c()}),(t,n)=>(R(),T(`div`,vn,[E(`div`,{class:N([`placeholder__shell`,{"placeholder__shell--portrait":U(i),"placeholder__shell--active":o.value}]),style:F({aspectRatio:U(a)}),onClick:l},[e.poster?(R(),T(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,yn)):w(`v-if`,!0),n[0]||=E(`div`,{class:`placeholder__scrim`},null,-1),e.platform?(R(),T(`span`,{key:1,class:N([`placeholder__badge`,`badge--${e.platform}`])},V(e.platform),3)):w(`v-if`,!0),E(`div`,bn,[O(Z,{"is-playing":o.value&&s.value,size:`lg`,onTogglePlay:l},null,8,[`is-playing`])]),e.title?(R(),T(`div`,xn,[E(`p`,Sn,V(e.title),1)])):w(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),wn=k({__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=B(!1);return(e,t)=>U(sn)?(R(),C(Cn,P(j({key:0},n)),null,16)):(R(),T(y,{key:1},[n.lazy&&!i.value&&!n.autoplay?(R(),C(Cn,j({key:0},n,{onClickCapture:t[0]||=e=>i.value=!0}),null,16)):(R(),C($,j({key:1},n,{autoplay:i.value||n.autoplay,onStateChange:t[1]||=e=>r(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const Tn={install(e){e.component(`VideoPlayer`,$),e.component(`VideoStage`,_n),e.component(`VideoPlaceholder`,Cn),e.component(`VideoItem`,wn)}};export{J as ActionKey,Me as CompactKey,q as HudKey,K as PlayerKey,wn as VideoItem,Cn as VideoPlaceholder,$ as VideoPlayer,Tn as VideoPlayerPlugin,Tn as default,_n as VideoStage,ae as getPlatform,Y as injectStrict};
|
|
1
|
+
import{Fragment as e,Transition as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createStaticVNode as s,createTextVNode as c,createVNode as l,defineComponent as u,inject as d,mergeProps as f,nextTick as p,normalizeClass as m,normalizeProps as h,normalizeStyle as g,onBeforeUnmount as _,onMounted as v,openBlock as y,provide as b,reactive as x,ref as S,toDisplayString as C,toRef as w,unref as T,watch as E,withCtx as D,withModifiers as O}from"vue";import k from"@vimeo/player";import A from"hls.js";function j(){return/iPad|iPhone|iPod/.test(navigator.userAgent)||/Mac/.test(navigator.userAgent)&&navigator.maxTouchPoints>1}function M(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled)}function N(e){(e.requestFullscreen||e.webkitRequestFullscreen)?.call(e)}function P(){(document.exitFullscreen||document.webkitExitFullscreen)?.call(document)}function F(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}function I(e){return!e||isNaN(e)?`0:00`:`${Math.floor(e/60)}:${String(Math.floor(e%60)).padStart(2,`0`)}`}function L(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 R(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)}const z=`video-select`,ee=`video-state`,B=`fullscreen-pending`,V=`fullscreen-pending-done`,H=`mvp-youtube`,U=`mvp-vimeo`,W=`mvp-dailymotion`,G=`mvp-ad-playing`,te=`mvp-ad-paused`,ne=`16:9`,re=[.5,.75,1,1.25,1.5,2],ie=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]];function ae(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function oe(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const se=L(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 n=(await t.json()).playlist?.[0];if(!n)throw Error(`JW Platform: empty playlist`);let r=R((n.sources??[]).map(e=>({src:e.file,type:e.type})));if(!r.length)throw Error(`JW Platform: no playable sources found`);return{src:r[0].src,type:r[0].type,poster:n.image??null,adTagUrl:oe(n)}});async function ce(e){let t=ae(e);if(!t)throw Error(`JW Platform: unrecognised source URL: ${e}`);let n=await se(t);if(e.startsWith(`jwplayer://`))return n;let r=/\.mp4(\?|#|$)/.test(e)?`video/mp4`:`application/x-mpegURL`;return{...n,src:e,type:r}}function le(e){let t=e.match(/^brightcove:\/\/([^/]+)\/([^/]+)\/([^/]+)\/([^/]+)$/);return t?{accountId:t[1],playerId:t[2],embed:t[3],videoId:t[4]}:null}function ue(e){return(e?.plugins??[]).find(e=>e.name===`ima3`)?.options?.serverUrl??null}const de=L(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(),o=r??a?.video_cloud?.policy_key;if(!o)throw Error(`Brightcove: policy_key not found in player config`);return{policyKey:o,adTagUrl:ue(a)}},(e,t,n)=>`${e}/${t}_${n}`);async function fe(e,t,n){let r=await fetch(`https://edge.api.brightcove.com/playback/v1/accounts/${e}/videos/${t}`,{headers:{Accept:`application/json;pk=${n}`}});if(!r.ok)throw Error(`Brightcove Playback API error: ${r.status}`);let i=await r.json(),a=R(i.sources||[]);if(!a.length)throw Error(`Brightcove: no playable sources found`);return{sources:a.map(e=>({src:e.src,type:e.type})),poster:i.poster??i.thumbnail??null}}async function pe(e,t){let n=le(e);if(!n)throw Error(`Brightcove: invalid src — expected "brightcove://accountId/playerId/embed/videoId"`);let{accountId:r,playerId:i,embed:a,videoId:o}=n,{policyKey:s,adTagUrl:c}=await de(r,i,a,t),{sources:l,poster:u}=await fe(r,o,s);return{...l[0],poster:u,adTagUrl:c}}function me(){let e=new Map;function t(t,n){for(let r of Array.isArray(t)?t:[t])e.has(r)||e.set(r,new Set),e.get(r)?.add(n)}function n(t,n){e.get(t)?.delete(n)}function r(t,...n){e.get(t)?.forEach(e=>e(...n))}function i(){e.clear()}return{on:t,off:n,trigger:r,dispose:i}}const he={};function ge(e,t=e){return he[t]||(he[t]=new Promise((t,n)=>{let r=document.createElement(`script`);r.src=e,r.onload=()=>t(),r.onerror=()=>n(Error(`Failed to load script: ${e}`)),document.head.appendChild(r)})),he[t]}let _e=0;function ve(e,t){e.parentElement?.classList.add(t);let n=`${t}-${++_e}`,r=document.createElement(`div`);r.id=n,r.className=`mvp-tech`,r.style.cssText=`width:100%;height:100%;top:0;left:0;position:absolute`;let i=document.createElement(`div`);return i.style.cssText=`width:100%;height:100%;position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity 0.2s`,i.appendChild(r),e.parentElement?.insertBefore(i,e),{techId:n,wrapper:i,innerDiv:r}}function ye(e,t){e.style.display=`none`,t.style.opacity=`1`,t.style.pointerEvents=``}function be(e,t,n){t.remove(),e.parentElement?.classList.remove(n),e.style.display=``}function xe(e){return e.closest(`.player__shell`)}function Se(e){e.trigger(B);let t=document.createElement(`div`);t.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(t);let n=!1;function r(r){n||(n=!0,e.trigger(V),t.remove(),r?.())}return{overlay:t,finish:r}}function Ce(e,t){return t===e.PlayerState.PLAYING||t===e.PlayerState.BUFFERING}function we(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}let Te=!1,Ee=!1;const K=[];function De(){Ee||(Ee=!0,ge(`https://www.youtube.com/iframe_api`).then(()=>{window.YT?.ready(()=>{Te=!0,K.forEach(e=>e()),K.length=0})}))}function Oe(e,t){De();let n=me(),{techId:r,wrapper:i}=ve(e,H),a=we(t.src),o=null,s=a.videoId,c=!1,l=!1,u=!1,d=null,f=!1,p=null,m=!1,h=new Set,g=null,_={active:!1,wasPaused:!1,timeBefore:0,catchUpInterval:null};function v(e,t=0){let n=setTimeout(()=>{h.delete(n),e()},t);h.add(n)}function y(){try{let e=o?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}function b(e){o?.loadVideoById({videoId:e})}function x(e){o?.cueVideoById({videoId:e})}function S(){a.videoId&&(_.wasPaused=!1,c?s===a.videoId?o?.playVideo():(b(a.videoId),s=a.videoId):(n.trigger(`waiting`),l=!0))}function C(){_.catchUpInterval&&clearInterval(_.catchUpInterval),_.active=!1,_.wasPaused&&o?.pauseVideo(),n.trigger(`seeked`)}function w(){m=(o?.getAvailablePlaybackRates()??[]).length>1,c=!0,t.muted&&o?.mute(),l?S():u&&a.videoId&&(x(a.videoId),s=a.videoId)}function T(e){if(e===d||p!==null)return;d=e;let t=y();t!==f&&(f=t,n.trigger(t?`adstart`:`adend`));let r=window.YT;if(r){switch(e){case-1:n.trigger(`loadstart`),n.trigger(`loadedmetadata`),n.trigger(`durationchange`),n.trigger(`ratechange`);break;case r.PlayerState.ENDED:n.trigger(`ended`);break;case r.PlayerState.PLAYING:n.trigger(`timeupdate`),n.trigger(`durationchange`),n.trigger(`playing`),n.trigger(`play`),_.active&&C();break;case r.PlayerState.PAUSED:n.trigger(`canplay`),_.active||n.trigger(`pause`);break;case r.PlayerState.BUFFERING:n.trigger(`waiting`);break;case r.PlayerState.CUED:n.trigger(`canplay`);break}g&&=(clearInterval(g),null),e===r.PlayerState.PLAYING&&(g=setInterval(()=>n.trigger(`timeupdate`),250))}}function E(){let e={controls:+!!t.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!t.muted,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,playsinline:1,...t.customVars};s=a.videoId,o=new window.YT.Player(r,{videoId:s??void 0,playerVars:e,events:{onReady:w,onStateChange:e=>T(e.data),onPlaybackRateChange:()=>n.trigger(`ratechange`),onVolumeChange:()=>n.trigger(`volumechange`),onError:e=>{p=e.data,n.trigger(`error`),v(()=>{p=null})}}})}Te?E():K.push(E),t.autoplay?c?S():l=!0:a.videoId&&(u=!0);function D(){if(!o)return;let e=o.getCurrentTime(),{video_id:t}=o.getVideoData();o.pauseVideo();let{overlay:r,finish:i}=Se(n),a=document.createElement(`div`);a.id=`yt-fs-${Math.random().toString(36).slice(2)}`,r.appendChild(a);let s=null,c=()=>{i(()=>{let t=s?.getCurrentTime()??e;try{s?.destroy()}catch{}o?.seekTo(t,!0),n.trigger(`timeupdate`)})};s=new window.YT.Player(a.id,{videoId:t,playerVars:{playsinline:0,autoplay:1,controls:1,modestbranding:1,rel:0,start:Math.floor(e)},events:{onReady:t=>{i(),t.target.seekTo(e,!0),t.target.playVideo()},onStateChange:e=>{let t=window.YT;t&&(e.data===t.PlayerState.PAUSED||e.data===t.PlayerState.ENDED)&&c()}}})}function O(){if(j()&&o){D();return}let t=xe(e);t&&N(t)}function k(){P()}return{el:i,play:S,pause:()=>o?.pauseVideo(),paused:()=>{if(!o)return!0;let e=window.YT;return!e||!Ce(e,d)},currentTime:()=>o?.getCurrentTime()??0,setCurrentTime:e=>{if(!o)return;let t=window.YT;t&&d===t.PlayerState.PAUSED&&(_.timeBefore=o.getCurrentTime()),_.active||(_.wasPaused=!t||!Ce(t,d)),o.seekTo(e,!0),n.trigger(`timeupdate`),n.trigger(`seeking`),_.active=!0,t&&d===t.PlayerState.PAUSED&&_.timeBefore!==e&&(_.catchUpInterval&&clearInterval(_.catchUpInterval),_.catchUpInterval=setInterval(()=>{d!==t.PlayerState.PAUSED||!_.active?_.catchUpInterval&&clearInterval(_.catchUpInterval):o&&o.getCurrentTime()!==_.timeBefore&&(n.trigger(`timeupdate`),C())},250))},duration:()=>o?.getDuration()??0,volume:()=>o?o.getVolume()/100:1,setVolume:e=>o?.setVolume(e*100),muted:()=>o?.isMuted()??!1,setMuted:e=>{o&&(e?o.mute():o.unMute(),v(()=>n.trigger(`volumechange`),50))},playbackRate:()=>o?.getPlaybackRate()??1,setPlaybackRate:e=>o?.setPlaybackRate(e),bufferedEnd:()=>o?.getVideoLoadedFraction?o.getVideoLoadedFraction()*o.getDuration():0,error:()=>p===null?null:{code:p,message:`This video could not be played.`},setSrc:e=>{let t=we(e);a.videoId=t.videoId,a.listId=t.listId,a.videoId&&(c?(b(a.videoId),s=a.videoId):u=!0)},featuresPlaybackRate:()=>m,supportsFullScreen:M,enterFullscreen:O,exitFullscreen:k,on:n.on,off:n.off,dispose:()=>{if(h.forEach(clearTimeout),h.clear(),g&&clearInterval(g),_.catchUpInterval&&clearInterval(_.catchUpInterval),o)try{o.stopVideo(),o.destroy()}catch{}else{let e=K.indexOf(E);e!==-1&&K.splice(e,1)}o=null,be(e,i,H),n.dispose()}}}function ke(e){return e.match(/(?:vimeo\.com\/(?:video\/|channels\/[^/]+\/|groups\/[^/]+\/videos\/)?|player\.vimeo\.com\/video\/)(\d+)/)?.[1]??null}function Ae(e,t){let n=me(),{techId:r,wrapper:i}=ve(e,U),a=ke(t.src),o=null,s=0,c=0,l=1,u=!1,d=!0,f=1,p=!1,m=!1,h=null,g=new Set;function _(e,t=0){let n=setTimeout(()=>{g.delete(n),e()},t);g.add(n)}function v(){if(!o){m=!0;return}o.play().catch(()=>{})}function y(){t.muted&&o?.setMuted(!0).catch(()=>{}),m&&v()}a&&(o=new k(r,{id:Number(a),byline:!1,portrait:!1,title:!1,transparent:!0,controls:!!t.nativeUi,autopause:!1,...t.autoplay!==void 0&&{autoplay:t.autoplay},...t.muted!==void 0&&{muted:t.muted}}),t.autoplay&&(m=!0),o.ready().then(y).catch(e=>{h={code:4,message:e?.message||`This video is unavailable or cannot be embedded here.`},n.trigger(`error`)}),o.on(`play`,()=>{d=!1,n.trigger(`play`),n.trigger(`playing`)}),o.on(`pause`,()=>{d=!0,n.trigger(`pause`)}),o.on(`ended`,()=>{d=!0,n.trigger(`ended`)}),o.on(`timeupdate`,e=>{s=e.seconds,c=e.duration,n.trigger(`timeupdate`),e.duration&&!p&&(p=!0,n.trigger(`durationchange`))}),o.on(`loaded`,()=>{p=!1,n.trigger(`loadedmetadata`),n.trigger(`durationchange`)}),o.on(`seeking`,e=>{s=e.seconds,n.trigger(`seeking`)}),o.on(`seeked`,e=>{s=e.seconds,n.trigger(`seeked`),n.trigger(`timeupdate`)}),o.on(`bufferstart`,()=>n.trigger(`waiting`)),o.on(`bufferend`,()=>n.trigger(`canplay`)),o.on(`volumechange`,e=>{l=e.volume,n.trigger(`volumechange`)}),o.on(`error`,()=>n.trigger(`error`)));function b(){if(!j()){let t=xe(e);t&&N(t);return}o?.requestFullscreen().catch(()=>{})}function x(){P()}return{el:i,play:v,pause:()=>o?.pause().catch(()=>{}),paused:()=>d,currentTime:()=>s,setCurrentTime:e=>{o?.setCurrentTime(e).catch(()=>{}),n.trigger(`timeupdate`),n.trigger(`seeking`)},duration:()=>c,volume:()=>l,setVolume:e=>{l=e,o?.setVolume(e).catch(()=>{})},muted:()=>u,setMuted:e=>{u=e,o?.setMuted(e).then(()=>_(()=>n.trigger(`volumechange`),50)).catch(()=>{})},playbackRate:()=>f,setPlaybackRate:e=>{f=e,o?.setPlaybackRate(e).catch(()=>{}),n.trigger(`ratechange`)},bufferedEnd:()=>s,error:()=>h,setSrc:()=>{},featuresPlaybackRate:()=>!1,supportsFullScreen:M,enterFullscreen:b,exitFullscreen:x,on:n.on,off:n.off,dispose:()=>{g.forEach(clearTimeout),g.clear(),o?.destroy().catch(()=>{}),o=null,be(e,i,U),n.dispose()}}}function je(e){let t=e.match(/[?&]video=([a-zA-Z0-9]+)/);return t?t[1]:e.match(/(?:dailymotion\.com\/(?:embed\/)?video\/|dai\.ly\/)([a-zA-Z0-9]+)/)?.[1]??null}function Me(e,t){let n=me(),{techId:r,wrapper:i}=ve(e,W),a=xe(e),o=je(t.src),s=typeof t.customVars?.playerId==`string`?t.customVars.playerId:void 0,c=null,l=0,u=0,d=1,f=!1,p=!0,m=!1,h=!1,g=null;async function _(){if(!o){g={code:4,message:`Could not parse video ID from source URL`},n.trigger(`error`);return}try{let e=await ge(s?`https://geo.dailymotion.com/libs/player/${s}.js`:`https://geo.dailymotion.com/libs/player.js`,s||`dailymotion-sdk`).then(()=>window.dailymotion);if(!e)return;let i=await e.createPlayer(r,{...s&&{player:s},video:o,params:{autoplay:!!t.autoplay,mute:!!t.muted}});c=i;let a=e.events;m&&i.play(),i.on(a.PLAYER_CRITICALPATHREADY,e=>{let t=e.videoThumbnails;if(!t)return;let r=Object.keys(t).map(Number).sort((e,t)=>t-e)[0],i=r===void 0?void 0:t[r];i&&n.trigger(`posterchange`,i)}),i.on(a.VIDEO_PLAY,()=>{p=!1,n.trigger(`play`),n.trigger(`playing`),!t.autoplay&&!h&&(h=!0,i.pause())}),i.on(a.VIDEO_PLAYING,()=>{p=!1,n.trigger(`play`),n.trigger(`playing`)}),i.on(a.VIDEO_PAUSE,()=>{p=!0,n.trigger(`pause`)}),a.VIDEO_BUFFERING&&i.on(a.VIDEO_BUFFERING,()=>n.trigger(`waiting`)),i.on(a.VIDEO_END,()=>{p=!0,n.trigger(`ended`)}),i.on(a.VIDEO_TIMECHANGE,e=>{l=e.videoTime??l,u=e.videoDuration??u,n.trigger(`timeupdate`)}),i.on(a.VIDEO_DURATIONCHANGE,e=>{u=e.videoDuration??u,n.trigger(`durationchange`)}),i.on(a.VIDEO_SEEKSTART,()=>n.trigger(`seeking`)),i.on(a.VIDEO_SEEKEND,e=>{l=e.videoTime??l,n.trigger(`seeked`)}),i.on(a.PLAYER_VOLUMECHANGE,e=>{d=e.playerVolume??d,f=e.playerIsMuted??f,n.trigger(`volumechange`)}),i.on(a.PLAYER_ERROR,()=>n.trigger(`error`)),a.AD_START&&i.on(a.AD_START,()=>{p=!1,n.trigger(`play`),n.trigger(`adstart`)}),a.AD_END&&i.on(a.AD_END,()=>n.trigger(`adend`))}catch(e){g={code:4,message:e instanceof Error?e.message:`This video could not be played.`},n.trigger(`error`)}}_();function v(){c?c.play():m=!0}function y(){if(j()){c?.setFullscreen(!0);return}a&&N(a)}function b(){if(j()){c?.setFullscreen(!1);return}P()}return{el:i,play:v,pause:()=>c?.pause(),paused:()=>p,currentTime:()=>l,setCurrentTime:e=>{l=e,c?.seek(e),n.trigger(`seeking`)},duration:()=>u,volume:()=>d,setVolume:e=>{d=e,c?.setVolume(e)},muted:()=>f,setMuted:e=>{f=e,c?.setMute(e)},playbackRate:()=>1,setPlaybackRate:()=>{},bufferedEnd:()=>l,error:()=>g,setSrc:()=>{},featuresPlaybackRate:()=>!1,supportsFullScreen:M,enterFullscreen:y,exitFullscreen:b,on:n.on,off:n.off,dispose:()=>{c?.destroy?.(),c=null,be(e,i,W),n.dispose()}}}const Ne=[{test:e=>/youtu\.be|youtube\.com/.test(e),key:`youtube`,embed:!0},{test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),key:`vimeo`,embed:!0},{test:e=>/dailymotion\.com|dai\.ly/.test(e),key:`dailymotion`,embed:!0},{test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),key:`jwplayer`,embed:!1},{test:e=>e.startsWith(`brightcove://`),key:`brightcove`,embed:!1}];function Pe(e){return Ne.find(t=>t.test(e))?.key??`html5`}function Fe(e){if(/\.m3u8(\?|#|$)/.test(e))return`application/x-mpegURL`;if(/\.mp4(\?|#|$)/.test(e))return`video/mp4`}function Ie(e){return Ne.find(t=>t.test(e))?.embed??!1}const Le={youtube:Oe,vimeo:Ae,dailymotion:Me};function Re(e,t,n){let r=Le[Pe(e)];return r?r(t,n):null}async function ze(e){let t=Pe(e);return t===`jwplayer`?ce(e):t===`brightcove`?pe(e):{src:e,type:Fe(e)}}const Be=[`play`,`pause`,`ended`,`error`,`timeupdate`,`durationchange`,`progress`,`volumechange`,`ratechange`,`seeking`,`seeked`,`waiting`,`playing`,`canplay`];function Ve(e,t){let n=me(),r=null;function i(t,n){if(r?.destroy(),r=null,n===`application/x-mpegURL`&&A.isSupported()){r=new A({liveDurationInfinity:!0}),r.loadSource(t),r.attachMedia(e);return}e.src=t}let a=e=>()=>n.trigger(e),o=Be.map(e=>[e,a(e)]);for(let[t,n]of o)e.addEventListener(t,n);let s=[[`webkitbeginfullscreen`,a(`nativefullscreenenter`)],[`webkitendfullscreen`,a(`nativefullscreenexit`)]];for(let[t,n]of s)e.addEventListener(t,n);e.poster=t.poster??``,e.muted=t.muted??t.autoplay??!1,e.playbackRate=t.playbackRate??1,e.playsInline=!0,i(t.src,t.type),t.autoplay&&e.play();function c(){let t=e;if(typeof t.webkitEnterFullscreen==`function`){t.webkitEnterFullscreen();return}let n=e.closest(`.player__shell`);n instanceof HTMLElement&&N(n)}function l(){let t=e;if(typeof t.webkitExitFullscreen==`function`){t.webkitExitFullscreen();return}P()}return{el:e,play:()=>e.play(),pause:()=>e.pause(),paused:()=>e.paused,currentTime:()=>e.currentTime,setCurrentTime:t=>{e.currentTime=t},duration:()=>e.duration,volume:()=>e.volume,setVolume:t=>{e.volume=t},muted:()=>e.muted,setMuted:t=>{e.muted=t},playbackRate:()=>e.playbackRate,setPlaybackRate:t=>{e.playbackRate=t},bufferedEnd:()=>{let{buffered:t,duration:n}=e;if(!t.length)return 0;let r=t.end(t.length-1);return n&&r>n?n:r},error:()=>{let t=e.error;return t?{code:t.code,message:t.message||`This video could not be played.`}:null},setSrc:i,featuresPlaybackRate:()=>!0,supportsFullScreen:M,enterFullscreen:c,exitFullscreen:l,on:n.on,off:n.off,dispose:()=>{r?.destroy();for(let[t,n]of o)e.removeEventListener(t,n);for(let[t,n]of s)e.removeEventListener(t,n);n.dispose()}}}function He(){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)})}function Ue(e,t,n,r){let i=document.createElement(`div`);i.className=`ima-ad-container`,e.appendChild(i);let a=null,o=null,s=null,c=!1,l=!1,u=!1,d=!1,f=!1,p=!1,m=1,h=new ResizeObserver(([e])=>{let t=window.google?.ima;if(!s||!t)return;let{width:n,height:r}=e.contentRect;s.resize(n,r,t.ViewMode.NORMAL)});h.observe(t);function g(){o?.contentComplete()}function _(t){d=t,e.classList.toggle(G,t),t||(f=!1,e.classList.remove(te))}function v(){if(c||!l||!u||!a||!o)return;c=!0;let e=window.google?.ima;if(!e)return;a.initialize();let t=new e.AdsRequest;t.adTagUrl=n,o.requestAds(t)}He().then(()=>{if(p)return;let n=window.google?.ima;n&&(a=new n.AdDisplayContainer(i,t),o=new n.AdsLoader(a),l=!0,o.addEventListener(n.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,i=>{if(p)return;let a=new n.AdsRenderingSettings;a.restoreCustomPlaybackStateOnAdBreakComplete=!0,s=i.getAdsManager(t,a),t.addEventListener(`ended`,g),s.addEventListener(n.AdEvent.Type.CONTENT_PAUSE_REQUESTED,()=>{t.removeEventListener(`ended`,g),t.pause(),_(!0),r.onAdStart();let e=s?.getVolume()??1;e>0&&(m=e),r.onAdMuteChange(e===0)}),s.addEventListener(n.AdEvent.Type.CONTENT_RESUME_REQUESTED,()=>{t.addEventListener(`ended`,g),_(!1),r.onAdEnd(),t.ended||t.play()}),s.addEventListener(n.AdEvent.Type.PAUSED,()=>{f=!0,e.classList.add(te),r.onAdPauseChange(!0)}),s.addEventListener(n.AdEvent.Type.RESUMED,()=>{f=!1,e.classList.remove(te),r.onAdPauseChange(!1)}),s.addEventListener(n.AdEvent.Type.AD_PROGRESS,()=>{r.onAdProgress(s?.getRemainingTime()??0)}),s.addEventListener(n.AdErrorEvent.Type.AD_ERROR,e=>{_(!1),r.onError(e.getError().getMessage()),t.play()});try{s.init(t.clientWidth,t.clientHeight,n.ViewMode.NORMAL),s.start()}catch(e){r.onError(e instanceof Error?e.message:`Ad playback failed to start.`)}}),o.addEventListener(n.AdErrorEvent.Type.AD_ERROR,e=>{r.onError(e.getError().getMessage())}),v())}).catch(e=>r.onError(e.message));function y(){u=!0,v()}function b(){if(!s)return;let e=s.getVolume();e>0?(m=e,s.setVolume(0)):s.setVolume(m||1),r.onAdMuteChange(s.getVolume()===0)}return{isAdPlaying:()=>d,isAdPaused:()=>f,requestAdsOnFirstPlay:y,pauseAd:()=>s?.pause(),resumeAd:()=>s?.resume(),toggleAdMute:b,dispose:()=>{p=!0,h.disconnect(),t.removeEventListener(`ended`,g),s?.destroy(),o?.destroy(),i.remove(),e.classList.remove(G,te)}}}const We=new Set;function Ge(e){return We.add(e),()=>We.delete(e)}function Ke(e){We.forEach(t=>{if(t!==e)try{t()}catch{}})}function qe(e){let t=S(!1),n=S(!1);function r(){let e=document;t.value=!!(document.fullscreenElement||e.webkitFullscreenElement),n.value=!1}function i(){let n=e();if(n){if(t.value){n.exitFullscreen();return}n.enterFullscreen()}}function a(){n.value=!0}function o(e){e.on(B,()=>{n.value=!0}),e.on(V,()=>{n.value=!1}),e.on(`nativefullscreenenter`,()=>{t.value=!0,n.value=!1}),e.on(`nativefullscreenexit`,()=>{t.value=!1,n.value=!1})}return v(()=>{document.addEventListener(`fullscreenchange`,r),document.addEventListener(`webkitfullscreenchange`,r)}),_(()=>{document.removeEventListener(`fullscreenchange`,r),document.removeEventListener(`webkitfullscreenchange`,r)}),{isFullscreen:t,isFullscreenPending:n,toggleFullscreen:i,markFullscreenPending:a,attachPlayerEvents:o}}function Je(){let e=S(!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 _(()=>clearTimeout(t??void 0)),{isBuffering:e,attachPlayerEvents:r,reset:n}}function Ye(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of ie)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function Xe(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function Ze(e){localStorage.setItem(`player:positions`,JSON.stringify(e))}function Qe(e,t){if(t<5)return;let n=Xe().filter(t=>t.url!==e);n.unshift({url:e,time:t}),Ze(n.slice(0,5))}function $e(e){return Xe().find(t=>t.url===e)?.time??null}function et(e){Ze(Xe().filter(t=>t.url!==e))}function tt(e,t,n){let r=!1;function i(t){if(r)return;let n=$e(e);n&&t.setCurrentTime(n),r=!0}function a(t){!t||n.value||Qe(e,t.currentTime()??0)}function o(){et(e)}function s(){document.visibilityState===`hidden`&&a(t())}return v(()=>document.addEventListener(`visibilitychange`,s)),_(()=>{a(t()),document.removeEventListener(`visibilitychange`,s)}),{restoreOnce:i,save:a,clear:o}}function nt(e,t,n,r){let i=null;v(()=>{let a=e.value?.closest(`.player__shell`);a&&(i=new IntersectionObserver(([e])=>{let i=t();!e.isIntersecting&&i&&!i.paused()&&!n.value&&!r.value&&i.pause()},{threshold:.1}),i.observe(a))}),_(()=>i?.disconnect())}function rt(e,t,n,r,i,a){function o(){let n=e();if(!(!n||!t.value)){if(!a.value){n.play();return}n.pause()}}function s(t){e()?.setCurrentTime(n.value*(t/100))}function c(){let t=e();t?.setMuted(!t.muted())}function l(t){let n=e();n&&(n.setVolume(t),n.setMuted(t===0))}function u(){r.value=!r.value}function d(t){let n=e();n&&(n.setPlaybackRate(t),i.value=t)}return{togglePlay:o,seek:s,toggleMute:c,setVolume:l,toggleLoop:u,setPlaybackRate:d}}function it(e,t){let{isPlaying:n,hasEnded:r,isReady:i,isAdPlaying:a,isLive:o,current:s,total:c,buffered:l,vol:u,isMuted:d,isLooping:f,playbackRate:p,supportsPlaybackRate:m,hasStarted:h,isError:g,errorMessage:_}=e,{fire:v,pauseThisPlayer:y,positionMemory:b,quartiles:x,buffering:S,fullscreen:C}=t;function w(e){i.value=!0,m.value=e.featuresPlaybackRate();let t=()=>{let t=e.duration();if(t===1/0){o.value=!0;return}o.value=!1,t&&t>0&&isFinite(t)&&(c.value=t)};e.on(`adstart`,()=>{Ke(y),a.value=!0,v(`adstart`)}),e.on(`adend`,()=>{a.value=!1,v(`adend`)}),e.on(`play`,()=>{Ke(y),h.value=!0,n.value=!0,r.value=!1,o.value||b.restoreOnce(e),v(`play`)}),e.on(`pause`,()=>{n.value=!1,o.value||b.save(e),v(`pause`)}),e.on(`ended`,()=>{if(n.value=!1,x.reset(),S.reset(),f.value){e.setCurrentTime(0),e.play();return}c.value&&(s.value=c.value),r.value=!0,b.clear(),v(`ended`)}),e.on(`seeked`,()=>{v(`seeked`)}),e.on(`error`,()=>{let t=e.error();_.value=t?.message||`This video could not be played.`,g.value=!0,i.value=!0,v(`error`,{error:t})}),e.on(`timeupdate`,()=>{r.value||(s.value=e.currentTime()??0,c.value||t(),m.value||=e.featuresPlaybackRate(),o.value||x.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();u.value=e.volume()??1,d.value=t??!1,h.value&&v(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;p.value=t,h.value&&v(`ratechange`,{playbackRate:t})}),S.attachPlayerEvents(e),C.attachPlayerEvents(e)}return{attachPlayerEvents:w}}function at(e,t,r){let i=null,a=null,o=null,s=null,c=S(!1),l=S(!1),u=S(!1),d=S(!1),f=S(!1),p=S(!1),m=S(0),h=S(!1),g=S(0),y=S(0),b=S(0),x=S(1),C=S(t.muted??t.autoplay??!1),w=S(!1),T=S(t.playbackRate??1),D=S(!1),O=S(!1),k=S(!1),A=S(``),j=S(!1),M=n(()=>y.value?g.value/y.value*100:0),N=n(()=>Math.max(b.value,M.value)),P=()=>i,F=qe(P),L=Je(),R=tt(t.videoUrl,P,l);function z(e,n={}){r(`state-change`,{type:e,currentTime:g.value,duration:y.value,src:t.videoUrl,...n,payload:t.payload})}let ee=Ye(g,y,z);function B(){!i||!s||(k.value=!1,A.value=``,i.setSrc(s.src,s.type))}function V(){a?.toggleAdMute()}function H(){if(a?.isAdPlaying()){a.pauseAd();return}i?.pause()}function U(){if(a?.isAdPlaying()){a.isAdPaused()?a.resumeAd():a.pauseAd();return}W.togglePlay()}let W=rt(P,u,y,w,T,c),{attachPlayerEvents:G}=it({isPlaying:c,hasEnded:l,isReady:u,isAdPlaying:d,isLive:h,current:g,total:y,buffered:b,vol:x,isMuted:C,isLooping:w,playbackRate:T,supportsPlaybackRate:D,hasStarted:O,isError:k,errorMessage:A},{fire:z,pauseThisPlayer:H,positionMemory:R,quartiles:ee,buffering:L,fullscreen:F});return E(()=>t.muted,e=>{!i||e===void 0||i.setMuted(e)}),E(()=>t.playbackRate,e=>{!i||e===void 0||i.setPlaybackRate(e)}),nt(e,P,F.isFullscreen,F.isFullscreenPending),E(O,t=>{!t||!e.value||!i||i.el===e.value||ye(e.value,i.el)}),v(async()=>{if(Ie(t.videoUrl)){if(!e.value)return;let n=Re(t.videoUrl,e.value,{src:t.videoUrl,poster:t.poster,autoplay:t.autoplay,muted:t.muted??t.autoplay,nativeUi:t.nativeUi});if(!n){k.value=!0,u.value=!0,A.value=`This platform is not yet supported.`;return}j.value=!!t.nativeUi,i=n,s={src:t.videoUrl},o=Ge(H),G(i);return}let n=await ze(t.videoUrl).catch(()=>({src:t.videoUrl}));if(!e.value)return;s={src:n.src,type:n.type},i=Ve(e.value,{src:n.src,type:n.type,poster:n.poster||t.poster||``,autoplay:t.autoplay,muted:t.muted??t.autoplay,playbackRate:T.value});let r=t.adTagUrl||n.adTagUrl||``;r&&e.value.parentElement&&(a=Ue(e.value.parentElement,e.value,r,{onAdStart:()=>{d.value=!0,f.value=!1,z(`adstart`)},onAdEnd:()=>{d.value=!1,f.value=!1,m.value=0,z(`adend`)},onAdPauseChange:e=>{f.value=e,e||Ke(H)},onAdMuteChange:e=>{p.value=e},onAdProgress:e=>{m.value=e},onError:e=>{d.value=!1,f.value=!1,m.value=0,console.error(`Ad playback error for ${r}:`,e)}}),i.on(`play`,()=>a?.requestAdsOnFirstPlay())),o=Ge(H),G(i)}),_(()=>{o?.(),a?.dispose(),a=null,i?.dispose(),i=null}),{isPlaying:c,hasEnded:l,isReady:u,isAdPlaying:d,isAdPaused:f,isAdMuted:p,adRemainingTime:m,isLive:h,isBuffering:L.isBuffering,current:g,total:y,vol:x,isMuted:C,isLooping:w,playbackRate:T,hasStarted:O,isError:k,errorMessage:A,progress:M,bufferedDisplay:N,isFullscreen:F.isFullscreen,isFullscreenPending:F.isFullscreenPending,fmt:I,fire:z,retry:B,togglePlay:U,seek:W.seek,toggleMute:W.toggleMute,setVolume:W.setVolume,toggleFullscreen:F.toggleFullscreen,markFullscreenPending:F.markFullscreenPending,toggleLoop:W.toggleLoop,toggleAdMute:V,setPlaybackRate:W.setPlaybackRate,supportsPlaybackRate:D,nativeUi:j}}function ot(e){let t=S(!0),n=S(!1),r=null,i=0;function a(e=400){i=Date.now()+e}function o(e=3500){clearTimeout(r??void 0),r=setTimeout(()=>{t.value=!1,n.value=!1},e)}function s(){clearTimeout(r??void 0)}function c(){n.value=!0,t.value=!0,o()}function l(){n.value=!1,e.value&&o()}function u(){e.value&&o()}function d(){t.value=!0,e.value&&o()}function f(){t.value=!0,o()}function p(){Date.now()<i||e.value&&o(600)}return E(e,e=>{if(!e){clearTimeout(r??void 0),t.value=!0;return}o()}),_(()=>clearTimeout(r??void 0)),{showHUD:t,isOpen:n,scheduleHide:o,pauseHide:s,onVideoTap:d,onMouseMove:f,onMouseLeave:p,openControls:c,closeControls:l,keepOpen:u,suppressMouseLeave:a}}const q=Symbol(`player`),J=Symbol(`hud`),Y=Symbol(`action`),st=Symbol(`compact`);function X(e){let t=d(e);if(t===void 0)throw Error(`[video-player] missing "${String(e.description)}" context — this component must be rendered inside <VideoPlayer>`);return t}function ct(e,t){return{hudVisible:n(()=>!e.isReady||e.isError?!1:t.showHUD),popupVisible:n(()=>!e.isReady||e.isError?!1:e.isFullscreen?t.showHUD:t.isOpen)}}function lt(e,t){return n(()=>!(!e?.value||t.isFullscreen))}function ut(e,t){let r=n(()=>e?.value??null),i=n(()=>!!r.value&&typeof r.value==`object`),a=n(()=>i.value?r.value:null),o=n(()=>r.value===`mute`?t.isMuted?`Unmute`:`Mute`:r.value===`loop`?t.isLooping?`Disable loop`:`Loop`:``);function s(){r.value===`mute`?t.toggleMute():r.value===`loop`&&t.toggleLoop()}return{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,onBuiltinClick:s}}var Z=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const dt={},ft={viewBox:`0 0 24 24`,fill:`currentColor`};function pt(e,t){return y(),a(`svg`,ft,[...t[0]||=[o(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var mt=Z(dt,[[`render`,pt]]);const ht={},gt={viewBox:`0 0 24 24`,fill:`currentColor`};function _t(e,t){return y(),a(`svg`,gt,[...t[0]||=[o(`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 vt=Z(ht,[[`render`,_t]]);const yt={},bt={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function xt(e,t){return y(),a(`svg`,bt,[...t[0]||=[s(`<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 St=Z(yt,[[`render`,xt]]);const Ct={},wt={viewBox:`0 0 24 24`,fill:`currentColor`};function Tt(e,t){return y(),a(`svg`,wt,[...t[0]||=[o(`path`,{d:`M4 12l1.41 1.41L11 7.83V20h2V7.83l5.59 5.58L20 12l-8-8-8 8z`},null,-1)]])}var Et=Z(Ct,[[`render`,Tt]]);const Dt={},Ot={viewBox:`0 0 24 24`,fill:`currentColor`};function kt(e,t){return y(),a(`svg`,Ot,[...t[0]||=[o(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var At=Z(Dt,[[`render`,kt]]);const jt={},Mt={viewBox:`0 0 24 24`,fill:`currentColor`};function Nt(e,t){return y(),a(`svg`,Mt,[...t[0]||=[o(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var Pt=Z(jt,[[`render`,Nt]]);const Ft={},It={viewBox:`0 0 24 24`,fill:`currentColor`};function Lt(e,t){return y(),a(`svg`,It,[...t[0]||=[o(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var Rt=Z(Ft,[[`render`,Lt]]);const zt={},Bt={viewBox:`0 0 24 24`,fill:`currentColor`};function Vt(e,t){return y(),a(`svg`,Bt,[...t[0]||=[o(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var Ht=Z(zt,[[`render`,Vt]]);const Ut={},Wt={viewBox:`0 0 24 24`,fill:`currentColor`};function Gt(e,t){return y(),a(`svg`,Wt,[...t[0]||=[o(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var Kt=Z(Ut,[[`render`,Gt]]);const qt={},Jt={viewBox:`0 0 24 24`,fill:`currentColor`};function Yt(e,t){return y(),a(`svg`,Jt,[...t[0]||=[o(`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 Xt=Z(qt,[[`render`,Yt]]);const Zt={},Qt={viewBox:`0 0 24 24`,fill:`currentColor`};function $t(e,t){return y(),a(`svg`,Qt,[...t[0]||=[o(`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 en=Z(Zt,[[`render`,$t]]);const tn={},nn={viewBox:`0 0 24 24`,fill:`currentColor`};function rn(e,t){return y(),a(`svg`,nn,[...t[0]||=[o(`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 an=Z(tn,[[`render`,rn]]);const on=[`aria-label`];var Q=Z(u({__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,i=n(()=>t.isPlaying?`Pause`:t.hasEnded?`Replay`:`Play`);return(t,n)=>(y(),a(`button`,{class:m([`ppbtn`,`ppbtn--${e.size}`]),"aria-label":i.value,onClick:n[0]||=O(e=>t.$emit(`toggle-play`),[`stop`])},[e.isPlaying?(y(),r(T(Ht),{key:0})):e.hasEnded?(y(),r(T(Xt),{key:1})):(y(),r(T(Kt),{key:2}))],10,on))}}),[[`__scopeId`,`data-v-85902525`]]),sn=u({__name:`VolumeIcon`,setup(e){let t=X(q),i=n(()=>!t.isMuted&&t.vol>0);return(e,t)=>i.value?(y(),r(T(an),{key:0})):(y(),r(T(en),{key:1}))}}),$=Z(u({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(y(),a(`div`,{class:`spinner`,style:g({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const cn={class:`hud`},ln=[`aria-label`],un=[`aria-label`],dn=[`aria-label`,`innerHTML`],fn={key:3,class:`hud__spacer`},pn={class:`hud__play-wrap`};var mn=Z(u({__name:`HudButtons`,setup(t){let n=X(q),s=X(J),{currentAction:c,isCustom:u,customAction:f,builtinLabel:p,onBuiltinClick:h}=ut(d(Y),n);return(t,d)=>(y(),a(`div`,cn,[!T(s).isOpen&&!T(n).isFullscreen?(y(),a(e,{key:0},[T(c)===`mute`?(y(),a(`button`,{key:0,class:m([`hud__btn`,{"hud__btn--active":T(n).isMuted}]),"aria-label":T(p),onClick:d[0]||=O((...e)=>T(h)&&T(h)(...e),[`stop`])},[l(sn)],10,ln)):T(c)===`loop`?(y(),a(`button`,{key:1,class:m([`hud__btn`,{"hud__btn--active":T(n).isLooping}]),"aria-label":T(p),onClick:d[1]||=O((...e)=>T(h)&&T(h)(...e),[`stop`])},[l(T(Rt))],10,un)):T(u)&&T(f)?(y(),a(`button`,{key:2,class:`hud__btn`,"aria-label":T(f).label,onClick:d[2]||=O(e=>T(f).onClick(),[`stop`]),innerHTML:T(f).icon},null,8,dn)):(y(),a(`div`,fn))],64)):i(`v-if`,!0),o(`div`,pn,[l(Q,{"is-playing":T(n).isPlaying,"has-ended":T(n).hasEnded,size:`lg`,onTogglePlay:T(n).togglePlay},null,8,[`is-playing`,`has-ended`,`onTogglePlay`]),T(n).isBuffering?(y(),r($,{key:0,class:`hud__buf-spinner`})):i(`v-if`,!0)]),!T(s).isOpen&&!T(n).isFullscreen?(y(),a(`button`,{key:1,class:`hud__btn`,"aria-label":`Show controls`,onClick:d[3]||=O((...e)=>T(s).openControls&&T(s).openControls(...e),[`stop`])},[l(T(St))])):i(`v-if`,!0)]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);function hn(e){let t=S(null),r=n(()=>t.value??e.progress),i=null;function a(){i&&clearTimeout(i),i=null,t.value=null}function o(e){i&&clearTimeout(i),i=null,t.value=Number(e.target.value)}function s(n){let r=Number(n.target.value);t.value=r,e.seek(r),i&&clearTimeout(i),i=setTimeout(a,3e3)}return E(()=>e.current,()=>{if(t.value===null||!e.total)return;let n=t.value/100*e.total;Math.abs(e.current-n)<1&&a()}),_(a),{displaySeek:r,onSeekInput:o,onSeekChange:s}}function gn(e){function t(){let t=re.indexOf(e.playbackRate);e.setPlaybackRate(re[(t+1)%re.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}function _n(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=``)})}const vn={class:`controls__vol-header`},yn=[`aria-label`],bn={class:`controls__vol-body`},xn=[`value`],Sn={class:`controls__vol-pct`};var Cn=Z(u({__name:`VolumePanel`,emits:[`back`],setup(t){let r=X(q),i=X(J),s=n(()=>r.isMuted?0:Math.round(r.vol*100));function c(e){r.setVolume(Number(e.target.value)/100)}return(t,n)=>(y(),a(e,null,[o(`div`,vn,[o(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:n[0]||=e=>t.$emit(`back`)},[l(T(mt))]),n[6]||=o(`span`,{class:`controls__vol-label`},`Volume`,-1),o(`button`,{class:`controls__btn`,"aria-label":T(r).isMuted?`Unmute`:`Mute`,onClick:n[1]||=e=>T(r).toggleMute()},[l(sn)],8,yn)]),o(`div`,bn,[o(`input`,{type:`range`,min:`0`,max:`100`,step:`1`,value:s.value,class:`controls__vol-slider`,style:g({"--v":s.value+`%`}),"aria-label":`Volume`,onInput:c,onMousedown:n[2]||=e=>T(i).pauseHide(),onMouseup:n[3]||=e=>T(i).scheduleHide(),onTouchstartPassive:n[4]||=e=>T(i).pauseHide(),onTouchend:n[5]||=e=>T(i).scheduleHide()},null,44,xn),o(`span`,Sn,C(s.value)+`%`,1)])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);const wn=[`value`],Tn={class:`controls__row`},En={class:`controls__play-wrap`},Dn={key:0,class:`controls__live`},On={key:1,class:`controls__time`},kn=[`aria-label`,`innerHTML`],An={class:`controls__fs-wrap`},jn=[`aria-label`];var Mn=Z(u({__name:`ControlsPopup`,setup(t){let n=X(q),s=X(J),u=lt(d(st),n),{isCustom:f,customAction:p}=ut(d(Y),n),h=S(!1),b=S(null);function x(e){b.value&&!b.value.contains(e.target)&&s.closeControls()}v(()=>{n.fire(`controlsopen`,{element:b.value}),document.addEventListener(`click`,x)}),_(()=>{h.value=!1,n.fire(`controlsclose`,{element:b.value}),document.removeEventListener(`click`,x)});function w(e){s.suppressMouseLeave(),_n(b,`controls-popup`,e)}function E(){if(j()){n.toggleMute();return}w(()=>{h.value=!0})}let{displaySeek:D,onSeekInput:k,onSeekChange:A}=hn(n),{cycleRate:M,fmtRate:N}=gn(n);function P(){n.isFullscreen||n.markFullscreenPending(),n.toggleFullscreen()}return(t,d)=>(y(),a(`div`,{ref_key:`popupEl`,ref:b,class:m([`controls`,{"controls--fs":T(n).isFullscreen,"controls--compact":T(u)}]),onMousemove:d[12]||=O((...e)=>T(s).keepOpen&&T(s).keepOpen(...e),[`stop`])},[h.value?(y(),r(Cn,{key:0,onBack:d[0]||=e=>w(()=>h.value=!1)})):(y(),a(e,{key:1},[T(n).isLive?i(`v-if`,!0):(y(),a(`input`,{key:0,type:`range`,min:`0`,max:`100`,value:T(D),class:`controls__seek`,style:g({"--p":T(D)+`%`,"--b":T(n).bufferedDisplay+`%`}),onInput:d[1]||=(...e)=>T(k)&&T(k)(...e),onChange:d[2]||=(...e)=>T(A)&&T(A)(...e),onMousedown:d[3]||=e=>T(s).pauseHide(),onMouseup:d[4]||=e=>T(s).scheduleHide(),onTouchstartPassive:d[5]||=e=>T(s).pauseHide(),onTouchend:d[6]||=e=>T(s).scheduleHide()},null,44,wn)),o(`div`,Tn,[o(`div`,En,[T(n).isBuffering?(y(),r($,{key:0})):(y(),r(Q,{key:1,"is-playing":T(n).isPlaying,"has-ended":T(n).hasEnded,size:`sm`,onTogglePlay:d[7]||=e=>T(n).togglePlay()},null,8,[`is-playing`,`has-ended`]))]),T(n).isLive?(y(),a(`span`,Dn,[...d[13]||=[o(`span`,{class:`controls__live-dot`},null,-1),c(`Live`,-1)]])):(y(),a(`span`,On,C(T(n).fmt(T(n).current))+` / `+C(T(n).fmt(T(n).total)),1)),T(n).supportsPlaybackRate?(y(),a(`button`,{key:2,class:m([`controls__btn controls__btn--rate`,{"controls__btn--active":T(n).playbackRate!==1}]),"aria-label":`Playback rate`,onClick:d[8]||=(...e)=>T(M)&&T(M)(...e)},C(T(N)(T(n).playbackRate)),3)):i(`v-if`,!0),o(`button`,{class:m([`controls__btn controls__btn--loop`,{"controls__btn--active":T(n).isLooping}]),"aria-label":`Toggle loop`,onClick:d[9]||=e=>T(n).toggleLoop()},[l(T(Rt))],2),o(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:E},[l(sn)]),T(f)&&T(p)?(y(),a(`button`,{key:3,class:`controls__btn`,"aria-label":T(p).label,onClick:d[10]||=e=>T(p).onClick(),innerHTML:T(p).icon},null,8,kn)):i(`v-if`,!0),o(`div`,An,[T(n).isFullscreenPending?(y(),r($,{key:0})):(y(),a(`button`,{key:1,class:`controls__btn`,"aria-label":T(n).isFullscreen?`Exit fullscreen`:`Fullscreen`,onClick:P},[T(n).isFullscreen?(y(),r(T(Pt),{key:0})):(y(),r(T(At),{key:1}))],8,jn))]),T(n).isFullscreen?i(`v-if`,!0):(y(),a(`button`,{key:4,class:`controls__btn controls__btn--close`,"aria-label":`Close`,onClick:d[11]||=e=>T(s).closeControls()},[l(T(vt))]))])],64))],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Nn={class:`ad-overlay`},Pn={class:`ad-overlay__bar`},Fn={class:`ad-overlay__badge`},In={key:0,class:`ad-overlay__countdown`},Ln=[`aria-label`],Rn={key:0,class:`ad-overlay__resume`};var zn=Z(u({__name:`AdOverlay`,setup(e){let t=X(q),s=n(()=>t.adRemainingTime>0?t.fmt(t.adRemainingTime):``);return(e,n)=>(y(),a(`div`,Nn,[o(`div`,Pn,[o(`div`,Fn,[n[2]||=o(`span`,null,`Ad`,-1),s.value?(y(),a(`span`,In,C(s.value),1)):i(`v-if`,!0)]),o(`button`,{class:`ad-overlay__mute`,"aria-label":T(t).isAdMuted?`Unmute ad`:`Mute ad`,onClick:n[0]||=e=>T(t).toggleAdMute()},[T(t).isAdMuted?(y(),r(T(en),{key:0})):(y(),r(T(an),{key:1}))],8,Ln)]),T(t).isAdPaused?(y(),a(`div`,Rn,[l(Q,{"is-playing":!1,size:`lg`,onTogglePlay:n[1]||=e=>T(t).togglePlay()})])):i(`v-if`,!0)]))}}),[[`__scopeId`,`data-v-23efcc8b`]]);const Bn={key:0,class:`overlay__spinner`},Vn={key:0,class:`overlay__error`};var Hn=Z(u({__name:`PlayerOverlay`,props:{disableTapCapture:{type:Boolean,required:!1,default:!1}},setup(n){let s=X(q),c=X(J),{hudVisible:u,popupVisible:d}=ct(s,c);function f(){if(s.isAdPlaying&&s.isAdPaused){s.togglePlay();return}c.onVideoTap()}return(c,p)=>(y(),a(e,null,[!n.disableTapCapture&&T(s).hasStarted&&!(T(s).isAdPlaying&&!T(s).isAdPaused)?(y(),a(`div`,{key:0,class:`overlay__tap-capture`,onClick:f,onTouchend:O(f,[`prevent`,`stop`])},null,32)):i(`v-if`,!0),T(s).isAdPlaying?(y(),r(zn,{key:1})):i(`v-if`,!0),l(t,{name:`fade`},{default:D(()=>[!T(s).isReady&&!T(s).isError?(y(),a(`div`,Bn,[l($,{size:40,"border-width":3})])):i(`v-if`,!0)]),_:1}),l(t,{name:`fade`},{default:D(()=>[T(s).isError?(y(),a(`div`,Vn,[o(`p`,null,C(T(s).errorMessage||`This video could not be played.`),1),o(`button`,{class:`overlay__retry`,onClick:p[0]||=O((...e)=>T(s).retry&&T(s).retry(...e),[`stop`])},`Retry`)])):i(`v-if`,!0)]),_:1}),o(`div`,{class:m([`overlay__hud`,{"overlay__hud--visible":T(u)}])},[l(mn)],2),l(t,{name:`popup`},{default:D(()=>[T(d)?(y(),a(`div`,{key:0,class:m([`overlay__popup`,{"overlay__popup--fs":T(s).isFullscreen}])},[l(Mn)],2)):i(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-f3307b98`]]);const Un={class:`player`},Wn={"data-mvp-player":``},Gn=[`poster`],Kn={key:1,class:`player__native-play`};var qn=Z(u({__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:ne},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,default:void 0},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},disableTapCapture:{type:Boolean,required:!1,default:!1}},emits:[`state-change`],setup(e,{expose:t,emit:s}){let c=e,u=s,d=S(null),f=x(at(d,c,u)),p=x(ot(w(f,`isPlaying`)));b(q,f),b(J,p),b(Y,w(c,`action`));let h=n(()=>F(c.aspectRatio)),_=n(()=>h.value.isPortrait),v=n(()=>h.value.cssRatio),C=n(()=>!c.poster&&!f.isReady);return t(f),(e,t)=>(y(),a(`div`,Un,[o(`div`,{class:m([`player__shell`,{"player__shell--portrait":_.value}]),style:g({aspectRatio:v.value}),onMousemove:t[0]||=e=>p.onMouseMove(),onContextmenuCapture:t[1]||=O(()=>{},[`prevent`]),onMouseleave:t[2]||=e=>p.onMouseLeave()},[o(`div`,Wn,[o(`video`,{ref_key:`videoEl`,ref:d,class:m([`mvp-video`,{"mvp-video--hidden":C.value}]),poster:c.poster,playsinline:``},null,10,Gn),f.nativeUi?i(`v-if`,!0):(y(),r(Hn,{key:0,"disable-tap-capture":c.disableTapCapture},null,8,[`disable-tap-capture`])),f.nativeUi&&!f.hasStarted?(y(),a(`div`,Kn,[l(Q,{"is-playing":!1,size:`lg`,onTogglePlay:f.togglePlay},null,8,[`onTogglePlay`])])):i(`v-if`,!0)])],38)]))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);const Jn=S(0),Yn=n(()=>Jn.value>0);function Xn(){Jn.value++}function Zn(){Jn.value--}function Qn(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function $n(e,t){let n=e=>t(e.detail);v(()=>window.addEventListener(e,n)),_(()=>window.removeEventListener(e,n))}const er=[`src`],tr={class:`stage__idle-body`},nr={class:`stage__idle-btn`},rr={class:`stage__idle-title`},ir={key:1,class:`stage__idle-empty`};var ar=Z(u({__name:`VideoStage`,props:{pinPosition:{type:String,required:!1,default:`bottom-right`}},emits:[`state-change`],setup(t,{emit:s}){let c=s,u=S(null),d=S(null),p=S(!1),h=S(!1),x=S(null),w=S(null),D=S(!1);b(st,D);let k=n(()=>D.value&&!!d.value&&p.value),A=n(()=>F(d.value?.aspectRatio||`16:9`).cssRatio),j=S(null),M=S(null);E(D,e=>{j.value=e&&w.value?{height:w.value.offsetHeight,width:w.value.offsetWidth}:null});let N=n(()=>{if(!j.value)return{};let{height:e,width:t}=j.value,n=M.value&&t?M.value/t:1;return{height:`${Math.round(e*n)}px`}}),P=null,I=null;function L(){P?.disconnect(),I?.disconnect(),x.value&&(P=new IntersectionObserver(([e])=>{D.value=!e.isIntersecting},{threshold:1}),P.observe(x.value),I=new ResizeObserver(([e])=>{M.value=e.contentRect.width}),I.observe(x.value))}E(x,L);function R(){d.value&&(d.value={...d.value,autoplay:!0},p.value=!0)}function B(){x.value?.scrollIntoView({behavior:`smooth`,block:`center`})}function V(){d.value=null,p.value=!1,h.value=!1,D.value=!1,j.value=null,H()}function H(){Qn(ee,{currentVideoUrl:d.value?.videoUrl??null,isPlaying:h.value})}function U(e){if(d.value?.videoUrl===e.videoUrl&&p.value){u.value?.togglePlay();return}d.value=e,p.value=!1,h.value=!1,H(),p.value=!0}function W(e){if(!(!d.value||e.videoUrl!==d.value.videoUrl)){if(!p.value){d.value={...d.value,autoplay:!0},p.value=!0;return}u.value?.togglePlay()}}function G(e){e.type===`play`&&(h.value=!0),(e.type===`pause`||e.type===`ended`)&&(h.value=!1),H(),c(`state-change`,e)}return $n(z,U),$n(`video-toggle`,W),v(Xn),_(()=>{Zn(),P?.disconnect(),I?.disconnect()}),(n,s)=>(y(),a(`div`,{ref_key:`wrapperEl`,ref:x,class:`stage-wrapper`,style:g(N.value)},[o(`div`,{ref_key:`stageEl`,ref:w,class:m([`stage`,{"stage--minified":k.value,[`stage--pin-${t.pinPosition}`]:k.value}])},[k.value?(y(),a(`button`,{key:0,class:`stage__scroll-to`,"aria-label":`Scroll to player`,onClick:O(B,[`stop`])},[l(T(Et))])):i(`v-if`,!0),k.value?(y(),a(`button`,{key:1,class:`stage__dismiss`,"aria-label":`Close`,onClick:O(V,[`stop`])},[l(T(vt))])):i(`v-if`,!0),d.value&&p.value?(y(),r(qn,f({ref_key:`playerRef`,ref:u,key:d.value.videoUrl},d.value,{onStateChange:G}),null,16)):(y(),a(`div`,{key:3,class:`stage__idle`,style:g({aspectRatio:A.value}),onClick:R},[d.value?.poster?(y(),a(`img`,{key:0,src:d.value.poster,class:`stage__idle-poster`},null,8,er)):i(`v-if`,!0),s[0]||=o(`div`,{class:`stage__idle-scrim`},null,-1),o(`div`,tr,[d.value?(y(),a(e,{key:0},[o(`div`,nr,[l(T(Kt))]),o(`p`,rr,C(d.value.title),1)],64)):(y(),a(`p`,ir,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]);const or={class:`placeholder`},sr=[`src`,`alt`],cr={class:`placeholder__btn-wrap`},lr={key:2,class:`placeholder__footer`},ur={class:`placeholder__title`};var dr=Z(u({__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:ne},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,default:void 0},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},disableTapCapture:{type:Boolean,required:!1}},setup(e){let t=e,r=n(()=>F(t.aspectRatio)),s=n(()=>r.value.isPortrait),c=n(()=>r.value.cssRatio),u=S(!1),d=S(!1);$n(ee,e=>{u.value=e.currentVideoUrl===t.videoUrl,d.value=u.value&&e.isPlaying});function f(e){Qn(z,{...t,...e!==void 0&&{autoplay:e}})}function p(){f(!0)}return v(()=>{t.autoStage&&f()}),(t,n)=>(y(),a(`div`,or,[o(`div`,{class:m([`placeholder__shell`,{"placeholder__shell--portrait":s.value,"placeholder__shell--active":u.value}]),style:g({aspectRatio:c.value}),onClick:p},[e.poster?(y(),a(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,sr)):i(`v-if`,!0),n[0]||=o(`div`,{class:`placeholder__scrim`},null,-1),e.platform?(y(),a(`span`,{key:1,class:m([`placeholder__badge`,`badge--${e.platform}`])},C(e.platform),3)):i(`v-if`,!0),o(`div`,cr,[l(Q,{"is-playing":u.value&&d.value,size:`lg`,onTogglePlay:p},null,8,[`is-playing`])]),e.title?(y(),a(`div`,lr,[o(`p`,ur,C(e.title),1)])):i(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),fr=u({__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,default:void 0},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},disableTapCapture:{type:Boolean,required:!1}},emits:[`state-change`],setup(t,{emit:n}){let i=t,o=n,s=S(!1);return(t,n)=>T(Yn)?(y(),r(dr,h(f({key:0},i)),null,16)):(y(),a(e,{key:1},[i.lazy&&!s.value&&!i.autoplay?(y(),r(dr,f({key:0},i,{onClickCapture:n[0]||=e=>s.value=!0}),null,16)):(y(),r(qn,f({key:1},i,{autoplay:s.value||i.autoplay,onStateChange:n[1]||=e=>o(`state-change`,e)}),null,16,[`autoplay`]))],64))}});const pr={install(e){e.component(`VideoPlayer`,qn),e.component(`VideoStage`,ar),e.component(`VideoPlaceholder`,dr),e.component(`VideoItem`,fr)}};export{Y as ActionKey,st as CompactKey,J as HudKey,q as PlayerKey,fr as VideoItem,dr as VideoPlaceholder,qn as VideoPlayer,pr as VideoPlayerPlugin,pr as default,ar as VideoStage,Pe as getPlatform,X 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: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--compact .controls__seek[data-v-5712aad4],.controls--compact .controls__btn--rate[data-v-5712aad4],.controls--compact .controls__btn--loop[data-v-5712aad4],.controls--compact .controls__fs-wrap[data-v-5712aad4]{display:none}@container player-shell (width<=360px){.controls__seek[data-v-5712aad4],.controls__btn--rate[data-v-5712aad4],.controls__btn--loop[data-v-5712aad4],.controls__fs-wrap[data-v-5712aad4]{display:none}}.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,d09GRgABAAAAABTsAAsAAAAAIpAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV32Y21hcAAAAYQAAAEJAAAD5p42+VxnbHlmAAACkAAADtIAABckI4l972hlYWQAABFkAAAAKwAAADYsvIjpaGhlYQAAEZAAAAAdAAAAJA+RCL1obXR4AAARsAAAABcAAAC8Q2YAAGxvY2EAABHIAAAAYAAAAGB7CIGGbWF4cAAAEigAAAAfAAAAIAFAAI9uYW1lAAASSAAAASUAAAIK1cf1oHBvc3QAABNwAAABfAAAAnXdFqh1eJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGR7yDiBgZWBgaWQ5RkDA8MvCM0cwxDOeI6BgYmBlZkBKwhIc01hcPjI+FGPHcRdyA4RZgQRADaGCyYAAHic7dPXbcMwAEXRK1vuvffem749XAbKV3bjBA6fXsaIgMMLEWoQJaAEFKNnlELyQ4K27zib5PNF6vl8yld+TKr5kH0+cUw0xv00Hwvx2DResUyFKrV4XoMmLdp06NKjz4AhI8ZMmDJjzoIlK9Zs2LJjz4EjJ85cuHLjziPe/0UWL17mf2tqKLz/9jK9f8tXpGCoRdPKhtS0RqFkWvVQNtSKoVYNtWaoddPXEBqG2jQ9XWgZattQO4baNdSeofYNdWCoQ0MdGerYUCeGOjXUmaHODXVhqEtDXRnq2lA3hro11J2h7g31YKhHQz0Z6tlQL4Z6NdSbod4N9WGoT9MfHF6GmhnZLxyDcRMAAAB4nJ1YC1hU17U+a5/HMA4iA3NmVBDmoQwP5TFnHlFeA4gYiUFRQINoSCBAyK3G2yi+0aipYtFcHYo2xsb4NiY3+VrNxSaX5uvt495ozNdoYoxmem2/L8HGpLc+InB279pnhlGr5mvL4eyz99nrrL32eu1/DQcc/okdYgdHOA6MQKp4r9gx0EcMHMezOalVasW5BM7NcXoSb9fFgE6KtSSBxWz1FYDPG+vMBGcKb9cebu2VS5s2aaTkCvRSf6C7Y+Ppibm5E09v7IDs2/3uZQtbD0zIyppwoHXh/93ukmyYgdePNRp65p5v+3v/9otQl2O7wP34cT88p8Md2YxpYLQZoRcy6FlSBRnwnGAe6BPMSCZo+7NJVqS0cE4uHendzhSnbPH6TDqL1+Nme5LZXkCHnGyoH0kne30WH+gswhm3q+pt/mTas9NLS64GnjmSlTPw0wVQT/ewRaBgxtydy3cuUB9/6SW+vb5yRvr+t0eOfPKJZ/9t3+4tL7xj32Xd3thCxi+ge6ifdsAN+l5+wi5HQ/cCoeull1AszS7CUfEcJzK7sKWJAdJhCd0sPM4+EY7QDm5ov08hXRQXE5bf6PV5Q5+IjW7X7Nku92Ask4l2hCRRD6TPqISiCJeQna3SCFwrhrNzXHzo4yFevBwxpzxk8WCIIfkvVEKVy32SbT8n68gzgaslpaiO2zIGIyuSb7RNf9HSuN26y/7OC1tgEmpiyA6aD4qcgTOiLThwGG0eB694FI8NHLLN6OBlRVaMxNAFS4JdXUG6mW8PwpKuYLCLXKGbu8iwYNdgO06Sn3Th+/vyZAxs8Ro30DjHe9gy8Fywi24OMm7Qyzh3MTZVOMYhLBnoC+J79lpTUyQmorjhnMwlcQ5uPEYGpDjsOkkH49BjQLQBqs3jFtFdJNlksYmoQFDArLh8Xh+Qd6Ghcsb6FUuehDi+U/lqD71K/qiegeV1imcwjl7ExwiSrf4BZyCujV6cVcFo6VX+G9IcPyFjJnUufbU/jzrL1X99as36reXl8K32nFaOr+E8jWJEcJ55DpMVfSMe95/AJaOsGBH2GJCNpiRQbK4C8BjdmQA22QY2j03Em13i2YHqtNLU1NI04Yj2HJgA6fQc6VPNpA/D+Ryks554NnVy2mB72uRUfPLsqR4N0LOBQKArwJYO+5W2fgZX8oC1HR6HjNaQTVIG2FPwnTcXXGZZfNB7TE6pTKZUwaw91XWLAoFFGcnB5PHjsckgBjbWutrL+0h5Y1xw3DRGDumsnXb3MJwXrJIN5U7m0rgJ3yG5w4he5ckFG4pmNEkOm0/xOO4r4yL87wqtQM+hiJIVp+6iG2wPBKD35ElGkDx+UfC2v1mFG1o+M3AjNFty8biKMXwzyxnZLds8wYD2BxmCPHAldPOeLsy/0BugftYhVYFAhO8SqQ0j3oK7dHJZnI/jxmUS4onlxskSF8thmvNZjIrRZwEPxr0lBuLRuz3oy/FOHCsxwOPYh2M+e9u3J5pgPYz9gp6G7C9m0A11F9ddqKMfV+4sbq45/YspOysXvT+3pdFdYNg2fHbW8Dz301MqDVuGrz0Fuh0YMW8mddrpqzST7rV9BcvqPoNvadRndWp0p8HvbiqrFj5yFQ/vNFSXDpxpLEFWp+DcrF3FT1afWshFcmCfeAMjEvO65i0Y6XijQfSRPWx3TV/Df7Km3E1l+kLt56s/rwVzuRusNMhudznkwdLaS+QNdeal2jDPP4l9qHc98vTYZOSkxzD+njBWVWjFPKgipx6DkWvXQiW8OYcewVHE5yukinDMcfGgc0opDltYKDxIGBedkzc6jSfE7tlvESCDFUw0Hx0opS+U0lHCxNottbNWSxX9zZVvEhKWUSyBpaXwBc2a98M6UqPeXAs/GDon8Ax7hsthO8cM5HU7Ad0UvRR9lHmtyQKZ4MAe814X5h9MSUkQmhf96eVJ6p90OjIiqSIjvykvr2l5U55O/fPQKD+jIomYpNyGJQ25uQ2kIikRfAmuBHCPsWqkSDEqgZ5KDI2sifS/R43MbZg0idFHbCPNxXxZws1ACVE6hAhOdJwRkJLFBLPZpRGYJ50pko6XzMkgmSx40ljik6AQcKhFnLcQE6rF7PXFe1Ocoj0T3AXgSgJTDIhHRfHlYZKuSzc6uievOJGXY+i5GJkkTp7UM3y0LqATDbtFcbdBxO7o4T25JYlEjoH0uynUh8rapkxp62QN70svSF+hT4gGPlovlmcm/ComLi7mV4kTykV9NFWjE/QrwgQ4uIcAP0rQF4VZYRP2o3PhHHzfPMJj9Ir+uzKUlrH49ntT18AVvj1sc3YGjUT/Mt2Dxawa8ArcA7bCQIpvfwAYu22vEG/No/5RvPdA7g+AelLrPwzy+LtkLPhnpIxH14m4EYq8eeMHbPEPNm6G7Nv9B4jcFPZ8bJj0SEjP3MPgQdKTqqEoy2v6G32P/Y6dxOv04AxnoAeq+GILvUavtYCBXm+BaIhuodcfrN5B/V2EYMCPh+SxavjGyPwV0x4CJgUPGT0mQaODGBACIJZGsMXwAD0LGXx7l3CdAcKMIKI+f5CepWeD0BvyU/GcdBxPF8SwejC6LGZmAURFdsSWKR5HyHld2kbdIZO1Ixx+bnnzU7n5+blPNV9jnUDWhP2tC68tbN3PVIldsQPxSAcSpjOav7Q05uXn5zW2LLvDXn9B6syscPy9iDLEMmSrJz6nYuWMipukjM0AH8JkGS+XFyMRkzSCH7KD/hwm172SAyZYumHlefr5AddrtA0O0TnwaVZxcRY9Bfukn9Gf05N1r9DV9MoBsJ1f+ZrqUvtPHizJAntWybv7hmqLt6QLuK6ZS9Fqi1jO5rDoWPZXXII5Tgajg53cIXCjDCGIcYrRIY2n6+mXOa/W0bdhau3ryiEYe2FV/5oeaIYK/5w5frCyll6/cYO8DiNhw6t1MBWmznt91QX62UF1N7l0eHBZTRGpKaqpKVIPF9UcIzmReud9TSY75+K899GHbBu6wjoR7RKKZVYiYxSPf5/2wJT5e3NAhmUbVn5KLx1Ujg0+BGvpAIh0DezInTkzF37KVocxrKU3r1+XLtAe2lO3l66kfQfB/unKY+q8N375Ru8bc4pJXfEcESU95q+p8ZNZRTWH1d9FzvUdYXk5rLkcdkEisoKKVHQW/b3GEx6tPaYcoJfOr9wAbSBnv1IHpep0OExr4LPMkpJM+j7sly7UHkOzXjoAZljHCGiyegtNlwljM0v+c19ET9Pvst09a2Mtgcf5/ZSzYO5h1156+eyydfAsxGa9XAuF6vzjh6CssLq6ECysperXX0sX5h5ZdpZe3guxsGIPEtHk/aqXX1hVqP5HYVVVISkrrNqvXorIc+5Ou91Hnr/LcD2afi6eX7UBloOcs7cOpqgGaNfs1g7bNbs9z6wASaylN69d0/TFTIz6Ws8+oGV3mE2612wRTHKcVUbhjKadebloMc+dyXgMVtVK6BwMB/+mVW09igdRBWaRtNQX59d/VD//xdQ0TCiYNj1KT9sq6Wdu5WTbqk3qDXyDaLa1fv621LS01G3z61sD6lH8lAxDLicV921s6Bf92JOYvzNYCL1khbqBXEFUzC521N5NyzNaQIWhjyFyDoBIVrAjmv2UEaLlI+c6zw1jmVIPLLLZZUTj6GxGHW+mq1tgHXR2D85p4Q934+jLbtjVLcyCdS10NVzpHqxp4Q/hK7WopY/NRGx9HGsPGdFjOjcpjBnGYMVqY/4eqT5khWEHWUup2A/pTw7pdWgsWft7ETUERL96nRg0HNFPmCYba6pylECaExX89A9WLUOVB4oKLu/o1oqSYHCgLzBUlAz8hNFDRpeSU1XT+LRmDUgPaKbYdHDn9suF/tu13nHJij0N97LfS0QmqONuyONk7zvUI6Qa0pF9f2+oABL92AT6e0U//z9YqAiWtJLU1JK0gS+1aacwamiNqK067u9ZQ8f1d4qLodMzz3uL89Z68V/Hnr++hXWUuHgw8dfi972PeTyPefu3aNNucemQ74qFuIaJnVkOu4Q+yjuwmmC1FqZpl1i4uzoPxjkpPf3Xv545tl26Rr+dOvUd+omqJzch9dOeU7f10Y64nMcKK137DccIZq2WdXtdZjbEoLSzHwiMtrjYLDxpHQW8gjMX6XFYAE2zSWVD04EGYSs9MbO6sEo20BMEAB4mpvSypsKjZ4Stgzb+c3A9/MQT2+vrBy+qvyFxLUtLlSRF/Ri2wjfZ2dus2Q8lXx4608/jnqK5OOap6NY2PSjYYnECCjiEeLJll/pbmqfeIK+ps3+MxrlEhqmTPipVP7kqlF4VhpEb6r+Q7YOJg38kJ9SHBf3NBl6+9YchfbUjb5ahLSzUM3kPHmwFAsZ5rpai0S7E5xWzZ1j+fW7zsUWP2g5NXTw52ySCTrgG0+lbw60l2Y/CB185CoA8NK+tbRKxfjy6pm5hzQRRR+cMqv1Jbiw6STivtEvt3DRcy0QEh92JlUGo2PG4tSKHl00YD6xc8CK+YPYyy3io2lN8BcSjKRzrIV6ypOAobqxViJPaT9M9Hy5szY33mp7OX/Zu89L/7Ww5vqY2Y8b0pKgoiUhG5cPDPzq8qTV/WkzUOIvXVVA96kmjcBrr3HrYC/Wn+fYP6Z7T1rqy3zknbvqma/FvVk96fNXGkuaXrdHW5JGSxZT/2I/O73v+yNWafMdzc5NdxYurHs6h86e01sLKLz9EBrg+x36rxAaED7hRnAMx7Vzu+9wabh3zG8XLQjx0ablUJzmxdErxYT3kzQSd0SSafVqF5PXgpp0OyYJ1EyNHpGUZmvK575ySzd85JSqF7IBzSAbMM04+MbE58xF3/njXOGecSaermlw2y9PsSQdytLJVr8t+wg+rR8cZYoeNxVIzNdk3Bngi8U5LAlgTFoQnzJCa5EsCgYhCaGL+qPj7TdhG31p9tej3R04N//PXxNwJvyUqwaJqRPJY98TJ5TPndmflRAkAhBfe46sfKW5wizSge08Xb7Ca/GUVs55trngkKkrUS2WPzKttaaqq+idmahugkY+W6fN0I6i3gPt/x88U4wAAeJxjYGRgYADiGU9YXsXz23xl4GZnAIFH7fO+IdMc/WBxDgYmEAUASbMKwAB4nGNgZGBgZwABjj4Ghv//OfoZGBlQgT4ARicDZAAAAHicY2BgYGAfxJijD8Fmu4EqBwCSpgKpAAAAAAAADgBoAH4AzADgAQIBQgFsAZgB7gIuAooC0AL8A2IDjAOoA+AEMASwBNoFCAVaBcAGCAYuBnAGrAb2B04HigfSCCoIcAiGCJwIyAkkCVYJiAmsCfIKIApWCsQLknicY2BkYGDQZ2hmYGcAASYg5gJCBob/YD4DABqrAdAAeJxdkE1qg0AYhl8Tk9AIoVDaVSmzahcF87PMARLIMoFAl0ZHY1BHdBJIT9AT9AQ9RQ9Qeqy+yteNMzDzfM+88w0K4BY/cNAMB6N2bUaPPBLukybCLvleeAAPj8JD+hfhMV7hC3u4wxs7OO4NzQSZcI/8Ltwnfwi75E/hAR7wJTyk/xYeY49fYQ/PztM+jbTZ7LY6OWdBJdX/pqs6NYWa+zMxa13oKrA6Uoerqi/JwtpYxZXJ1coUVmeZUWVlTjq0/tHacjmdxuL90OR8O0UEDYMNdtiSEpz5XQGqzlm30kzUdAYFFOb8R7NOZk0q2lwAyz1i7oAr1xoXvrOgtYhZx8wY5KRV269JZ5yGpmzPTjQhvY9je6vEElPOuJP3mWKnP5M3V+YAAAB4nG2ReVPbMBDF/ULi2EkDBFqO3gdHLxUzDB9IkdexBllydRD49ihO3Ckz7B/a31utZnafkkGyiXnyclxhgB0MMUKKMTLkmGCKV5hhF3vYxxwHOMRrvMERjnGCU7zFO7zHB3zEJ3zGF3zFN5zhHBe4xHf8wE/8wm8w/MEVimTYKv44XR9MSCsUjVoeHE3vjQoNsSZ4mmxZmVWPjSz7jlou6/0qKOWEJdKMtCe793/hQfqxa6XWZHMXFl56RS4TvPXSaDeoy0zUUZB109KstDK8lHo5q6Qi1hcOnqkImubPS6aqRq7mlnaEWabub4iYblba3SRmgldS0+FWdhNtt04F14JUaqkl7tcpOpJtErvNt3Bd9HRT5JWxK25Ldjvp6br4hzfFiIdSmlzTg2fSUzNrLd1LE1ynxq4OVaVoKLjzJ60UPtj1RKzHzsbjly6inVnFBS2MucviPncU7Rr7lfTxRepDs1A2j3ZHRc7PuzFYSfE3ZOd4kjwBy227hA==)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[data-v-fb8c86cf]:has([data-focused]){box-shadow:none}.stage--minified:has([data-focused]) .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}
|
|
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--compact .controls__seek[data-v-5712aad4],.controls--compact .controls__btn--rate[data-v-5712aad4],.controls--compact .controls__btn--loop[data-v-5712aad4],.controls--compact .controls__fs-wrap[data-v-5712aad4]{display:none}@container player-shell (width<=360px){.controls__seek[data-v-5712aad4],.controls__btn--rate[data-v-5712aad4],.controls__btn--loop[data-v-5712aad4],.controls__fs-wrap[data-v-5712aad4]{display:none}}.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__live[data-v-5712aad4]{letter-spacing:.04em;text-transform:uppercase;color:#f87171;flex:1;align-items:center;gap:5px;padding:0 4px;font-size:.7rem;font-weight:700;display:flex}.controls__live-dot[data-v-5712aad4]{background:#f87171;border-radius:50%;width:6px;height:6px}.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}.ad-overlay[data-v-23efcc8b]{z-index:21;pointer-events:none;position:absolute;inset:0}.ad-overlay__bar[data-v-23efcc8b]{align-items:center;gap:6px;display:flex;position:absolute;bottom:10px;left:10px}.ad-overlay__badge[data-v-23efcc8b]{color:#fff;text-transform:uppercase;letter-spacing:.06em;background:#0009;border-radius:4px;align-items:center;gap:6px;padding:3px 8px;font-size:.65rem;font-weight:700;display:flex}.ad-overlay__countdown[data-v-23efcc8b]{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:.02em;opacity:.8;font-weight:500}.ad-overlay__mute[data-v-23efcc8b]{color:#fff;cursor:pointer;pointer-events:auto;background:#0009;border:none;border-radius:4px;justify-content:center;align-items:center;padding:3px;transition:background .15s;display:flex}.ad-overlay__mute[data-v-23efcc8b]:hover{background:#000c}.ad-overlay__mute svg[data-v-23efcc8b]{width:11px;height:11px}.ad-overlay__resume[data-v-23efcc8b]{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ad-overlay__resume[data-v-23efcc8b]>*{pointer-events:auto}.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;align-items:var(--mvp-popup-align,center);pointer-events:none;justify-content:center;padding:16px;display:flex;position:absolute;inset:0}.overlay__popup[data-v-f3307b98] .controls{pointer-events:auto}.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)}.player[data-v-4ab3cf75]{user-select:none;-webkit-tap-highlight-color:transparent;width:100%;max-width:800px;margin:0 auto}[data-mvp-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}.mvp-video--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__shell[data-v-4ab3cf75]:fullscreen{border-radius:0;width:100vw;height:100vh}.player__shell:fullscreen .mvp-video[data-v-4ab3cf75],.player__shell:fullscreen [data-mvp-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.mvp-video{border-radius:var(--mvp-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mvp-dailymotion .mvp-tech>*,.mvp-dailymotion .dailymotion-player-root,.mvp-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.mvp-vimeo .mvp-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.mvp-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}[data-mvp-player] .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}.mvp-ad-playing .ima-ad-container{pointer-events:auto}.mvp-ad-paused .ima-ad-container{pointer-events:none}.mvp-ad-playing .overlay__hud,.mvp-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],.stage__scroll-to[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}.stage__dismiss[data-v-fb8c86cf]:hover,.stage__scroll-to[data-v-fb8c86cf]:hover{background:#000000d9}.stage__dismiss svg[data-v-fb8c86cf],.stage__scroll-to svg[data-v-fb8c86cf]{width:14px;height:14px}.stage__dismiss[data-v-fb8c86cf]{right:.4rem}.stage__scroll-to[data-v-fb8c86cf]{left:.4rem}.stage--minified[data-v-fb8c86cf]{z-index:100;margin:0;position:fixed;overflow:hidden;box-shadow:0 8px 32px #0009}.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:250px}}.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.
|
|
3
|
+
"version": "0.0.9",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
@@ -40,16 +40,13 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@vimeo/player": "^2.30.4",
|
|
43
|
-
"
|
|
44
|
-
"videojs-ima": "^2.6.0"
|
|
43
|
+
"hls.js": "^1.6.16"
|
|
45
44
|
},
|
|
46
45
|
"devDependencies": {
|
|
47
46
|
"@pugpigbolt/shipkit": "*",
|
|
48
|
-
"video.js": "^8.23.7",
|
|
49
47
|
"vue": "^3.5.34"
|
|
50
48
|
},
|
|
51
49
|
"peerDependencies": {
|
|
52
|
-
"video.js": ">=8",
|
|
53
50
|
"vue": ">=3"
|
|
54
51
|
}
|
|
55
52
|
}
|
|
@@ -1 +0,0 @@
|
|
|
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};
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
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};
|
|
@@ -1 +0,0 @@
|
|
|
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};
|
|
@@ -1 +0,0 @@
|
|
|
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};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e={};function t(t,n=t){return e[n]||(e[n]=new Promise((e,n)=>{let r=document.createElement(`script`);r.src=t,r.onload=()=>e(),r.onerror=()=>n(Error(`Failed to load script: ${t}`)),document.head.appendChild(r)})),e[n]}export{t};
|
|
@@ -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=`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};
|
|
@@ -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=`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};
|