@munsonlabs/video-player 0.2.2 → 0.2.3

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.
Files changed (41) hide show
  1. package/README.md +67 -5
  2. package/dist/chunks/{ads-CF9PWPJJ.mjs → ads-BV769SMr.mjs} +1 -1
  3. package/dist/{elements/chunks/brightcove-DUITad7n.mjs → chunks/brightcove-rNI-XRxB.mjs} +1 -1
  4. package/dist/chunks/constants-zR-UwEWY.mjs +1 -0
  5. package/dist/chunks/dailymotion-gEquA4h5.mjs +1 -0
  6. package/dist/chunks/embedShared-duyOYFQN.mjs +1 -0
  7. package/dist/chunks/jwplayer-WIkwoJTA.mjs +1 -0
  8. package/dist/chunks/{sourceHelpers-CAGxjbbu.mjs → sourceHelpers-rbs6D6ZG.mjs} +1 -1
  9. package/dist/chunks/{vimeo-BNsFVvtc.mjs → vimeo-WJYDJPA3.mjs} +1 -1
  10. package/dist/chunks/youtube-DbJ-IrvP.mjs +1 -0
  11. package/dist/elements/chunks/{ads-CF9PWPJJ.mjs → ads-BV769SMr.mjs} +1 -1
  12. package/dist/{chunks/brightcove-DUITad7n.mjs → elements/chunks/brightcove-rNI-XRxB.mjs} +1 -1
  13. package/dist/elements/chunks/constants-zR-UwEWY.mjs +1 -0
  14. package/dist/elements/chunks/dailymotion-gEquA4h5.mjs +1 -0
  15. package/dist/elements/chunks/embedShared-duyOYFQN.mjs +1 -0
  16. package/dist/elements/chunks/jwplayer-WIkwoJTA.mjs +1 -0
  17. package/dist/elements/chunks/{sourceHelpers-CAGxjbbu.mjs → sourceHelpers-rbs6D6ZG.mjs} +1 -1
  18. package/dist/elements/chunks/{vimeo-BNsFVvtc.mjs → vimeo-WJYDJPA3.mjs} +1 -1
  19. package/dist/elements/chunks/youtube-DbJ-IrvP.mjs +1 -0
  20. package/dist/elements/controls.css +1 -1
  21. package/dist/elements/controls.mjs +1 -1
  22. package/dist/elements/core.css +1 -1
  23. package/dist/elements/core.d.mts +7 -6
  24. package/dist/elements/core.mjs +1 -1
  25. package/dist/elements/index.d.mts +7 -6
  26. package/dist/elements/index.mjs +1 -1
  27. package/dist/elements/style.css +1 -1
  28. package/dist/index.d.mts +66 -63
  29. package/dist/index.mjs +1 -1
  30. package/dist/style.css +1 -1
  31. package/package.json +6 -4
  32. package/dist/chunks/constants-BUQXC_ZT.mjs +0 -1
  33. package/dist/chunks/dailymotion-CwCwD6rN.mjs +0 -1
  34. package/dist/chunks/embedShared-DgFZ58OV.mjs +0 -1
  35. package/dist/chunks/jwplayer-BxpEGj9-.mjs +0 -1
  36. package/dist/chunks/youtube-B7s74nf6.mjs +0 -1
  37. package/dist/elements/chunks/constants-BUQXC_ZT.mjs +0 -1
  38. package/dist/elements/chunks/dailymotion-CwCwD6rN.mjs +0 -1
  39. package/dist/elements/chunks/embedShared-DgFZ58OV.mjs +0 -1
  40. package/dist/elements/chunks/jwplayer-BxpEGj9-.mjs +0 -1
  41. package/dist/elements/chunks/youtube-B7s74nf6.mjs +0 -1
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{A as e,E as t,O as n,S as r,T as i,a,b as o,h as s,i as c,k as l,m as u,o as d,r as f,s as p,u as m,w as h,x as g}from"./chunks/constants-BUQXC_ZT.mjs";import{n as _,r as v,t as y}from"./chunks/platform-Dg9JBh8M.mjs";import{c as ee,d as b,s as x}from"./chunks/embedShared-DgFZ58OV.mjs";import{Fragment as S,Transition as C,computed as w,createBlock as T,createCommentVNode as E,createElementBlock as D,createElementVNode as O,createStaticVNode as te,createTextVNode as k,createVNode as A,defineComponent as j,inject as M,mergeProps as N,nextTick as P,normalizeClass as F,normalizeProps as ne,normalizeStyle as I,onBeforeUnmount as L,onMounted as R,openBlock as z,provide as B,reactive as re,ref as V,renderList as H,renderSlot as U,resolveDynamicComponent as ie,shallowRef as ae,toDisplayString as W,toRef as G,unref as K,watch as q,withCtx as J,withModifiers as Y}from"vue";const X=[];function oe(e){X.push(e)}function se(e){return X.find(t=>t.test(e))?.key??`html5`}function ce(e){let t=X.find(t=>t.test(e));return{key:t?.key??`html5`,embed:t?.embed??!1}}const le={},ue={};function de(e,t){le[e]=t}async function fe(e,t,n){let r=le[e];if(!r){let t=ue[e];if(!t)return null;r=await t(),le[e]=r}return r(t,n)}const pe={},me={};function he(e,t){pe[e]=t}function ge(e){if(/\.m3u8(\?|#|$)/.test(e))return d;if(/\.mpd(\?|#|$)/.test(e))return f;if(/\.mp4(\?|#|$)/.test(e))return m}async function _e(e,t){let n=pe[e];if(!n){let t=me[e];t&&(n=await t(),pe[e]=n)}return n?n(t):{src:t,type:ge(t)}}function ve(e){oe({test:e.test,key:e.key,embed:e.embed}),e.embed?de(e.key,e.createAdapter):e.resolveSource&&he(e.key,e.resolveSource)}function ye(e){oe({key:e.key,test:e.test,embed:e.embed}),e.embed?ue[e.key]=e.loadAdapter:me[e.key]=e.loadResolver}ye({key:`youtube`,test:e=>/youtu\.be|youtube\.com/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/youtube-B7s74nf6.mjs`).then(e=>e.createYoutubeAdapter)}),ye({key:`vimeo`,test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/vimeo-BNsFVvtc.mjs`).then(e=>e.createVimeoAdapter)}),ye({key:`dailymotion`,test:e=>/dailymotion\.com|dai\.ly/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/dailymotion-CwCwD6rN.mjs`).then(e=>e.createDailymotionAdapter)}),ye({key:`jwplayer`,test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),embed:!1,loadResolver:()=>import(`./chunks/jwplayer-BxpEGj9-.mjs`).then(e=>e.resolveSource)}),ye({key:`brightcove`,test:e=>/players\.brightcove\.net/.test(e),embed:!1,loadResolver:()=>import(`./chunks/brightcove-DUITad7n.mjs`).then(e=>e.resolveSource)});function be(e,t=!1){if(!e||isNaN(e))return`0:00`;let n=t?Math.round(e):Math.floor(e);return`${Math.floor(n/60)}:${String(n%60).padStart(2,`0`)}`}const xe=new Set;function Se(e){return xe.add(e),()=>xe.delete(e)}function Ce(e){xe.forEach(t=>{if(t!==e)try{t()}catch{}})}function we(e){let t=new Set,n=null;function r(){t.forEach(e=>e())}return i=>(n||=e(r),t.add(i),()=>{t.delete(i),t.size===0&&(n?.(),n=null)})}const Te=we(e=>(document.addEventListener(`fullscreenchange`,e),document.addEventListener(`webkitfullscreenchange`,e),()=>{document.removeEventListener(`fullscreenchange`,e),document.removeEventListener(`webkitfullscreenchange`,e)})),Ee=we(e=>(document.addEventListener(`visibilitychange`,e),window.addEventListener(`blur`,e),()=>{document.removeEventListener(`visibilitychange`,e),window.removeEventListener(`blur`,e)}));function De(e){let t=V(!1),n=V(!1),r=null;function i(){let e=document;t.value=!!(document.fullscreenElement||e.webkitFullscreenElement),n.value=!1}function a(){let r=e();if(r){if(t.value){r.exitFullscreen();return}n.value=!0,r.enterFullscreen()}}function o(){n.value=!0}function c(e){e.on(u,()=>{n.value=!0}),e.on(s,()=>{n.value=!1}),e.on(`nativefullscreenenter`,()=>{t.value=!0,n.value=!1}),e.on(`nativefullscreenexit`,()=>{t.value=!1,n.value=!1})}return R(()=>{r=Te(i)}),L(()=>{r?.()}),{isFullscreen:t,isFullscreenPending:n,toggleFullscreen:a,markFullscreenPending:o,attachPlayerEvents:c}}function Oe(e){let t=V(!1),n=null;function r(){clearTimeout(n??void 0),t.value&&e(`bufferend`),t.value=!1}function i(i){i.on(`waiting`,()=>{clearTimeout(n??void 0),n=setTimeout(()=>{t.value=!0,e(`bufferstart`)},500)}),i.on(`playing`,r),i.on(`canplay`,r)}return L(()=>clearTimeout(n??void 0)),{isBuffering:t,attachPlayerEvents:i,reset:r}}function ke(e,t,n){let r=new Set;function i(){if(!t.value)return;let i=e.value/t.value;for(let[e,t]of g)!r.has(e)&&i>=e&&(r.add(e),n(t))}function a(){r.clear()}return{checkQuartiles:i,reset:a}}function Ae(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function je(e){localStorage.setItem(t,JSON.stringify(e))}function Me(e,t){if(t<5)return;let n=Ae().filter(t=>t.url!==e);n.unshift({url:e,time:t}),je(n.slice(0,5))}function Ne(e){return Ae().find(t=>t.url===e)?.time??null}function Pe(e){je(Ae().filter(t=>t.url!==e))}function Fe(e,t,n){let r=!1;function i(t){if(r)return;let n=Ne(e);n&&t.setCurrentTime(n),r=!0}function a(t){!t||n.value||Me(e,t.currentTime()??0)}function o(){Pe(e)}let s=Ee(()=>{document.visibilityState===`hidden`&&a(t())});return L(()=>{a(t()),s()}),{restoreOnce:i,save:a,clear:o}}const Ie=new WeakMap,Le=[.1,.5];function Re(e){let t=Ie.get(e);if(t)return t;let n=new Set,r=new IntersectionObserver(([e])=>n.forEach(t=>t(e)),{threshold:Le});r.observe(e);let i={observer:r,callbacks:n};return Ie.set(e,i),i}function ze(e,t){let n=Re(e);return n.callbacks.add(t),()=>{n.callbacks.delete(t),n.callbacks.size===0&&(n.observer.disconnect(),Ie.delete(e))}}let Be=null,Ve=null;function He(e,t){let n=ze(e,n=>{n.intersectionRatio<.5||(Ve&&clearTimeout(Ve),Be=e,Ve=setTimeout(()=>{Be=null,Ve=null,t()},150))});return()=>{Be===e&&Ve&&(clearTimeout(Ve),Be=null,Ve=null),n()}}function Ue(e,t,n,r,i){let a=null;R(()=>{let o=e.value&&x(e.value);o&&(a=ze(o,e=>{let a=t();e.intersectionRatio<.1&&a&&!a.paused()&&!n.value&&!r.value&&!i.value&&a.pause()}))}),L(()=>a?.())}function We(e){return e.kind===`captions`||e.kind===`subtitles`}function Ge(e,t){e.textTracks.addEventListener(`addtrack`,t),e.textTracks.addEventListener(`removetrack`,t);function n(){let t=[];for(let n=0;n<e.textTracks.length;n++){let r=e.textTracks[n];We(r)&&t.push({index:n,label:r.label||r.language||`Track ${n+1}`,language:r.language})}return t}function r(t){for(let n=0;n<e.textTracks.length;n++){let r=e.textTracks[n];We(r)&&(r.mode=n===t?`showing`:`hidden`)}}function i(){for(let t=0;t<e.textTracks.length;t++){let n=e.textTracks[t];if(We(n)&&n.mode===`showing`)return t}return null}return{supportsCaptions:()=>n().length>0,getCaptionTracks:n,setCaptionTrack:r,getActiveCaptionTrack:i,dispose:()=>{e.textTracks.removeEventListener(`addtrack`,t),e.textTracks.removeEventListener(`removetrack`,t)}}}function Ke(e){function t(){return e()?.levels()??[]}function n(){return e()?.isAuto()??!0}function r(){let t=e();return t?n()?null:t.currentIndex():null}function i(t){e()?.setIndex(t)}return{supportsQuality:()=>t().length>0,getQualityLevels:t,getCurrentQuality:r,isAutoQuality:n,setQuality:i}}function qe(e,t,n){let r=[[`webkitbeginfullscreen`,t],[`webkitendfullscreen`,n]];for(let[t,n]of r)e.addEventListener(t,n);function i(){let t=e;if(typeof t.webkitEnterFullscreen==`function`){t.webkitEnterFullscreen();return}let n=x(e);n&&v(n)}function a(){let t=e;if(typeof t.webkitExitFullscreen==`function`){t.webkitExitFullscreen();return}y()}return{enterFullscreen:i,exitFullscreen:a,dispose:()=>{for(let[t,n]of r)e.removeEventListener(t,n)}}}function Je(e,t){let n=[[`enterpictureinpicture`,t],[`leavepictureinpicture`,t]];for(let[t,r]of n)e.addEventListener(t,r);function r(){return typeof document<`u`&&!!document.pictureInPictureEnabled&&!e.disablePictureInPicture}function i(){return document.pictureInPictureElement===e}function a(){i()?document.exitPictureInPicture():r()&&e.requestPictureInPicture()}return{supportsPip:r,isPipActive:i,togglePip:a,dispose:()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}}const Ye=[`play`,`pause`,`ended`,`error`,`timeupdate`,`durationchange`,`progress`,`volumechange`,`ratechange`,`seeking`,`seeked`,`waiting`,`playing`,`canplay`];function Xe(e){return{levels:()=>e.levels.map((e,t)=>({index:t,height:e.height,bitrate:e.bitrate,label:`${e.height}p`})),isAuto:()=>e.autoLevelEnabled,currentIndex:()=>e.currentLevel,setIndex:t=>{e.currentLevel=t??-1}}}function Ze(e){return{levels:()=>e.getBitrateInfoListFor(`video`).map(e=>({index:e.qualityIndex,height:e.height,bitrate:e.bitrate,label:`${e.height}p`})),isAuto:()=>e.getSettings().streaming?.abr?.autoSwitchBitrate?.video??!0,currentIndex:()=>e.getQualityFor(`video`),setIndex:t=>{if(t===null){e.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:!0}}}});return}e.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:!1}}}}),e.setQualityFor(`video`,t,!0)}}}function Qe(e,t){let n=b(),r=null,i=null,a=!1,o=null,s=null;async function c(i){let{default:s}=await import(`hls.js`);if(a||o!==i)return;if(typeof s?.isSupported!=`function`||!s.isSupported()){e.src=i,t.autoplay&&e.play();return}r=new s({liveDurationInfinity:!0}),r.loadSource(i),r.attachMedia(e),t.autoplay&&e.play();let c=s.Events,l=s.ErrorTypes;r.on(c.MANIFEST_PARSED,f(`qualitychange`)),r.on(c.LEVEL_SWITCHED,f(`qualitychange`)),r.on(c.ERROR,(e,t)=>{if(!(!t.fatal||a||o!==i))switch(t.type){case l.NETWORK_ERROR:r?.startLoad();break;case l.MEDIA_ERROR:r?.recoverMediaError();break;default:r?.destroy(),r=null,n.trigger(`error`);break}})}async function l(r){let o=await import(`dashjs`);if(a||s!==r)return;let c=o.MediaPlayer().create();i=c,c.initialize(e,r,t.autoplay??!1);let l=o.MediaPlayer.events;c.on(l.QUALITY_CHANGE_RENDERED,f(`qualitychange`)),c.on(l.STREAM_INITIALIZED,f(`qualitychange`)),c.on(l.ERROR,()=>{a||s!==r||(c.destroy(),i=null,n.trigger(`error`))})}function u(){return/Apple/.test(navigator.vendor)&&!/CriOS|FxiOS|OPiOS|EdgiOS|Chrome|Chromium|Android/.test(navigator.userAgent)&&(e.canPlayType(`application/vnd.apple.mpegurl`)!==``||e.canPlayType(`application/x-mpegURL`)!==``)}function d(n,a){if(r?.destroy(),r=null,o=null,i?.destroy(),i=null,s=null,a===`application/dash+xml`){s=n,l(n);return}if(a===`application/x-mpegURL`&&!u()){o=n,c(n);return}e.src=n,t.autoplay&&e.play()}let f=e=>()=>n.trigger(e),p=Ye.map(e=>[e,f(e)]);for(let[t,n]of p)e.addEventListener(t,n);let m=Ge(e,f(`captionschange`)),h=Ke(()=>r?Xe(r):i?Ze(i):null),g=qe(e,f(`nativefullscreenenter`),f(`nativefullscreenexit`)),_=Je(e,f(`pipchange`)),{poster:v,muted:y,autoplay:ee,volume:x,playbackRate:S,src:C,type:w}=t;return e.poster=v??``,e.muted=y??ee??!1,e.volume=x??1,e.playbackRate=S??1,e.playsInline=!0,d(C,w),{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:d,supportsPlaybackRate:()=>!0,supportsCaptions:m.supportsCaptions,getCaptionTracks:m.getCaptionTracks,setCaptionTrack:m.setCaptionTrack,getActiveCaptionTrack:m.getActiveCaptionTrack,supportsQuality:h.supportsQuality,getQualityLevels:h.getQualityLevels,getCurrentQuality:h.getCurrentQuality,isAutoQuality:h.isAutoQuality,setQuality:h.setQuality,supportsPip:_.supportsPip,isPipActive:_.isPipActive,togglePip:_.togglePip,enterFullscreen:g.enterFullscreen,exitFullscreen:g.exitFullscreen,on:n.on,off:n.off,dispose:()=>{a=!0,r?.destroy(),i?.destroy();for(let[t,n]of p)e.removeEventListener(t,n);m.dispose(),g.dispose(),_.dispose(),n.dispose()}}}function $e(e,t){if(!t||!Object.keys(t).length)return e;let n=e;for(let[e,r]of Object.entries(t))r!=null&&r!==``&&(n=n.split(`{${e}}`).join(encodeURIComponent(r)));return n}function et(){try{let e=localStorage.getItem(h);if(!e)return a;let t=JSON.parse(e);return{muted:typeof t.muted==`boolean`?t.muted:a.muted,volume:typeof t.volume==`number`?t.volume:a.volume}}catch{return a}}function tt(e){localStorage.setItem(h,JSON.stringify(e))}let nt=!1;function rt(){nt=!0}function it(){return nt}function at(e){tt(e),e.muted||rt()}function ot(e,t=!0){if(e!==void 0)return e;if(!t)return;let n=et().muted;return n||rt(),n}function st(e,t){return e===void 0?t&&!it()?!0:et().muted:e}function ct(e){return e.volume??et().volume}function lt(e){return{muted:st(e.muted,!!(e.autoplay||e.playInView)),volume:ct(e)}}async function ut(e,t,n){if(!t.value)return{status:`aborted`};let r=await fe(e,t.value,{src:n.src,poster:n.poster,autoplay:n.autoplay,...lt(n),nativeUi:n.nativeUi});return t.value?r?{status:`mounted`,mounted:{adapter:r,currentSrc:{src:n.src},nativeUi:!!n.nativeUi,needsReveal:!0}}:{status:`unsupported`}:{status:`aborted`}}async function dt(e,t,n,r,i){let a=await _e(e,n.src).catch(()=>({src:n.src}));if(!t.value)return{status:`aborted`};let o=Qe(t.value,{src:a.src,type:a.type,poster:a.poster||n.poster||``,autoplay:n.autoplay,...lt(n),playbackRate:r.value}),s=$e(n.adTagUrl||a.adTagUrl||``,n.adMacroParams);return i.attach(t.value,o,s,n.headerBidding),{status:`mounted`,mounted:{adapter:o,currentSrc:{src:a.src,type:a.type},needsReveal:!1}}}function ft(e,t,n,r,i){return e.embed?ut(e.key,t,n):dt(e.key,t,n,r,i)}function pt(e,t,n,r,i){let a=null;R(()=>{let o=e.value&&x(e.value);o&&(a=He(o,()=>{let e=t();!e||!e.paused()||n.value||r.value||(e.setMuted(st(i,!0)),e.play())}))}),L(()=>a?.())}function mt(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();if(!t)return;let n=!t.muted();t.setMuted(n),at({muted:n,volume:t.volume()})}function l(t){let n=e();if(!n)return;let r=t===0;n.setVolume(t),n.setMuted(r),at({muted:r,volume:t})}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 ht(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,supportsCaptions:h,captionTracks:g,activeCaptionIndex:_,supportsQuality:v,qualityLevels:y,currentQualityIndex:ee,isAutoQuality:b,supportsPip:x,isPipActive:S,hasStarted:C,isError:w,errorMessage:T}=e,{fire:E,pauseThisPlayer:D,positionMemory:O,quartiles:te,buffering:k,fullscreen:A}=t;function j(e){i.value=!0,m.value=e.supportsPlaybackRate();function t(){g.value=e.getCaptionTracks(),h.value=g.value.length>0;let t=e.getActiveCaptionTrack();t!==_.value&&(_.value=t,C.value&&E(`captionchange`,{captionIndex:t}))}t(),e.on(`captionschange`,t);function j(){y.value=e.getQualityLevels(),v.value=y.value.length>0;let t=e.getCurrentQuality(),n=e.isAutoQuality(),r=t!==ee.value||n!==b.value;ee.value=t,b.value=n,r&&C.value&&E(`qualitychange`,{qualityIndex:n?null:t})}j(),e.on(`qualitychange`,j);function M(){x.value=e.supportsPip();let t=e.isPipActive();t!==S.value&&(S.value=t,C.value&&E(`pipchange`,{isPipActive:t}))}M(),e.on(`pipchange`,M);let N=()=>{if(a.value)return;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`,()=>{Ce(D),a.value=!0,E(`adstart`)}),e.on(`adend`,()=>{a.value=!1,E(`adend`)}),e.on(`play`,()=>{Ce(D),C.value=!0,n.value=!0,r.value=!1,o.value||O.restoreOnce(e),E(`play`)}),e.on(`pause`,()=>{n.value=!1,o.value||O.save(e),E(`pause`)}),e.on(`ended`,()=>{if(n.value=!1,te.reset(),k.reset(),f.value){e.setCurrentTime(0),e.play();return}c.value&&(s.value=c.value),r.value=!0,O.clear(),E(`ended`)}),e.on(`seeked`,()=>{E(`seeked`)}),e.on(`error`,()=>{let t=e.error();T.value=t?.message||`This video could not be played.`,w.value=!0,i.value=!0,console.error(`Video playback error:`,T.value),E(`error`,{error:t})});let P=0;e.on(`timeupdate`,()=>{if(r.value||a.value)return;s.value=e.currentTime()??0,c.value||N(),m.value||=e.supportsPlaybackRate();let t=e.getActiveCaptionTrack();_.value!==t&&(_.value=t,C.value&&E(`captionchange`,{captionIndex:t})),o.value||te.checkQuartiles();let n=Date.now();C.value&&n-P>=250&&(P=n,E(`timeupdate`))}),e.on(`durationchange`,N),e.on(`progress`,()=>{if(a.value)return;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,C.value&&E(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;p.value=t,C.value&&E(`ratechange`,{playbackRate:t})}),k.attachPlayerEvents(e),A.attachPlayerEvents(e)}return{attachPlayerEvents:j}}function gt(e,t){let{isAdPlaying:n,isAdPaused:r,isAdMuted:i,adRemainingTime:a}=e,{fire:o,pauseThisPlayer:s}=t,c=null,l=null,u=!1;async function d(e,t,d,f){if(!(d||f)||!e.parentElement)return;let p=!1;t.on(`play`,()=>{c?c.requestAdsOnFirstPlay():p=!0});let m=null;f&&import(`./chunks/prebid-RHDT0DOX.mjs`).then(({resolveHeaderBiddingAdTagUrl:e})=>e(f,d).catch(()=>d)).then(e=>{c?c.setAdTagUrl(e):m=e});function h(){!_()&&t.isPipActive()&&document.exitPictureInPicture()}function g(){!_()&&(document.hidden||!document.hasFocus())&&c?.isAdPlaying()&&c.pauseAd()}let v=Ee(g),y=()=>{t.isPipActive()||g()};t.on(`pipchange`,y),l=()=>{v(),t.off(`pipchange`,y)};let{attachAds:ee}=await import(`./chunks/ads-CF9PWPJJ.mjs`);u||!e.parentElement||(c=ee(e.parentElement,e,d,{onAdStart:()=>{n.value=!0,r.value=!1,o(`adstart`),h(),g()},onAdEnd:()=>{n.value=!1,r.value=!1,a.value=0,o(`adend`)},onAdPauseChange:e=>{r.value=e,e||Ce(s)},onAdMuteChange:e=>{i.value=e},onAdProgress:e=>{a.value=e},onError:e=>{n.value=!1,r.value=!1,a.value=0,console.error(`Ad playback error:`,e)}}),m&&c.setAdTagUrl(m),p&&c.requestAdsOnFirstPlay())}return{attach:d,isAdPlaying:()=>c?.isAdPlaying()??!1,isAdPaused:()=>c?.isAdPaused()??!1,pauseAd:()=>c?.pauseAd(),resumeAd:()=>c?.resumeAd(),toggleAdMute:()=>c?.toggleAdMute(),dispose:()=>{u=!0,c?.dispose(),c=null,l?.(),l=null}}}function _t(e,t,n){let r=null,i=null,a=null,o=!1,s=V(!1),c=V(!1),l=V(!1),u=V(!1),d=V(0),f=V(0),p=V(0),m=V(ct(t)),h=V(!1),g=V(!1),_=V(!1),v=V(0),y=V(st(t.muted,!!(t.autoplay||t.playInView))),b=V(!1),x=V(t.playbackRate??1),S=V(!1),C=V(!1),T=V([]),E=V(null),D=V(!1),O=V([]),te=V(null),k=V(!0),A=V(!1),j=V(!1),M=V(!1),N=V(!1),P=V(``),F=V(!1),ne=w(()=>f.value?d.value/f.value*100:0),I=w(()=>Math.max(p.value,ne.value)),z=w(()=>!y.value&&m.value>0),B=()=>r,re=w(()=>{if(typeof t.payload!=`string`)return t.payload??{};try{return JSON.parse(t.payload)}catch{return{}}});function H(e,r={}){n(`state-change`,{type:e,currentTime:d.value,duration:f.value,src:t.src,...r,payload:re.value})}let U=De(B),ie=Oe(H),ae=Fe(t.src,B,c),W=ke(d,f,H);function G(){!r||!a||(N.value=!1,P.value=``,r.setSrc(a.src,a.type))}function K(){if(Y.isAdPlaying()){Y.pauseAd();return}r?.pause()}function J(){if(Y.isAdPlaying()){Y.isAdPaused()?Y.resumeAd():Y.pauseAd();return}X.togglePlay()}let Y=gt({isAdPlaying:h,isAdPaused:g,isAdMuted:_,adRemainingTime:v},{fire:H,pauseThisPlayer:K}),X=mt(B,l,f,b,x,s),{attachPlayerEvents:oe}=ht({isPlaying:s,hasEnded:c,isReady:l,isAdPlaying:h,isLive:u,current:d,total:f,buffered:p,vol:m,isMuted:y,isLooping:b,playbackRate:x,supportsPlaybackRate:S,supportsCaptions:C,captionTracks:T,activeCaptionIndex:E,supportsQuality:D,qualityLevels:O,currentQualityIndex:te,isAutoQuality:k,supportsPip:A,isPipActive:j,hasStarted:M,isError:N,errorMessage:P},{fire:H,pauseThisPlayer:K,positionMemory:ae,quartiles:W,buffering:ie,fullscreen:U});function se(e){r?.setCaptionTrack(e),E.value=e,M.value&&H(`captionchange`,{captionIndex:e})}function le(e){r?.setQuality(e),te.value=e,k.value=e===null,M.value&&H(`qualitychange`,{qualityIndex:e})}function ue(){r?.togglePip()}function de(){X.toggleLoop(),M.value&&H(`loopchange`,{isLooping:b.value})}q(()=>t.muted,e=>{!r||e===void 0||r.setMuted(e)}),q(()=>t.playbackRate,e=>{!r||e===void 0||r.setPlaybackRate(e)}),Ue(e,B,U.isFullscreen,U.isFullscreenPending,w(()=>!!t.pin)),t.playInView&&pt(e,B,U.isFullscreen,U.isFullscreenPending,t.muted);function fe(e){r=e.adapter,a=e.currentSrc,o=e.needsReveal,e.nativeUi!==void 0&&(F.value=e.nativeUi),i=Se(K),oe(e.adapter)}return q(M,t=>{!t||!o||!e.value||!r||ee(e.value,r.el)}),R(async()=>{let n=await ft(ce(t.src),e,t,x,Y);if(n.status===`unsupported`){N.value=!0,l.value=!0,P.value=`This platform is not yet supported.`;return}n.status===`mounted`&&fe(n.mounted)}),L(()=>{i?.(),Y.dispose(),r?.dispose(),r=null}),{isPlaying:s,hasEnded:c,isReady:l,isLive:u,isBuffering:ie.isBuffering,current:d,total:f,progress:ne,bufferedDisplay:I,hasStarted:M,isError:N,errorMessage:P,fmt:be,fire:H,retry:G,togglePlay:J,seek:X.seek,isAdPlaying:h,isAdPaused:g,isAdMuted:_,adRemainingTime:v,toggleAdMute:Y.toggleAdMute,vol:m,isMuted:y,isAudible:z,toggleMute:X.toggleMute,setVolume:X.setVolume,isLooping:b,toggleLoop:de,currentPlaybackRate:x,setPlaybackRate:X.setPlaybackRate,supportsPlaybackRate:S,isFullscreen:U.isFullscreen,isFullscreenPending:U.isFullscreenPending,toggleFullscreen:U.toggleFullscreen,markFullscreenPending:U.markFullscreenPending,supportsCaptions:C,captionTracks:T,activeCaptionIndex:E,setCaptionTrack:se,supportsQuality:D,qualityLevels:O,currentQualityIndex:te,isAutoQuality:k,setQuality:le,supportsPip:A,isPipActive:j,togglePip:ue,isNativeUi:F}}function vt(e){let t=V(!0),n=V(!1),r=null,i=0;function a(e=400){i=Date.now()+e}function o(e=p){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 m(){Date.now()<i||e.value&&o(600)}return q(e,e=>{if(!e){clearTimeout(r??void 0),t.value=!0;return}o()}),L(()=>clearTimeout(r??void 0)),{showHUD:t,isOpen:n,scheduleHide:o,pauseHide:s,onVideoTap:d,onMouseMove:f,onMouseLeave:m,openControls:c,closeControls:l,keepOpen:u,suppressMouseLeave:a}}const yt=[`retry`,`togglePlay`,`seek`,`toggleMute`,`setVolume`,`toggleFullscreen`,`markFullscreenPending`,`toggleLoop`,`toggleAdMute`,`setPlaybackRate`,`setCaptionTrack`,`setQuality`,`togglePip`],bt=`isPlaying.hasEnded.isReady.isAdPlaying.isAdPaused.isAdMuted.adRemainingTime.isLive.isBuffering.current.total.vol.isMuted.isAudible.isLooping.currentPlaybackRate.hasStarted.isError.errorMessage.progress.bufferedDisplay.isFullscreen.isFullscreenPending.supportsPlaybackRate.supportsCaptions.captionTracks.activeCaptionIndex.supportsQuality.qualityLevels.currentQualityIndex.isAutoQuality.supportsPip.isPipActive.isNativeUi`.split(`.`);function xt(e=()=>!0){let t=ae(null),n={};for(let r of yt)n[r]=async(...n)=>{await e(r)&&t.value?.[r]?.(...n)};for(let e of bt)n[e]=w(()=>t.value?.[e]);return{playerRef:t,forwarded:n}}const St=Symbol(`player`),Ct=Symbol(`hud`),wt=Symbol(`action`),Tt=Symbol(`compact`),Et=Symbol(`playlist`);function Z(e){let t=M(e);if(t===void 0)throw Error(`[video-player] missing "${String(e.description)}" context — this component must be rendered inside <VideoPlayer>`);return t}function Dt(e,t){let n=w(()=>e.isReady&&!e.isError);return{hudVisible:w(()=>n.value&&t.showHUD),popupVisible:w(()=>n.value?e.isFullscreen?t.showHUD:t.isOpen:!1)}}function Ot(e,t){return w(()=>!(!e?.value||t.isFullscreen))}const kt={mute:{label:e=>e.isMuted?`Unmute`:`Mute`,active:e=>e.isMuted,onClick:e=>e.toggleMute()},loop:{label:e=>e.isLooping?`Disable loop`:`Loop`,active:e=>e.isLooping,onClick:e=>e.toggleLoop()},autoplay:{label:(e,t)=>t.autoAdvance?`Disable autoplay next`:`Autoplay next`,active:(e,t)=>t.autoAdvance,onClick:(e,t)=>t.toggleAutoAdvance()}};function At(e,t,n){let r=w(()=>e?.value??null),i=w(()=>!!r.value&&typeof r.value==`object`),a=w(()=>i.value?r.value:null),o=w(()=>i.value||!r.value?null:kt[r.value]),s=w(()=>o.value?.label(t,n)??``),c=w(()=>o.value?.active(t,n)??!1);function l(){o.value?.onClick(t,n)}return{currentAction:r,isCustom:i,customAction:a,builtinLabel:s,builtinActive:c,onBuiltinClick:l}}var Q=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const jt={},Mt={viewBox:`0 0 24 24`,fill:`currentColor`};function Nt(e,t){return z(),D(`svg`,Mt,[...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 Pt=Q(jt,[[`render`,Nt]]);const Ft={},It={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Lt(e,t){return z(),D(`svg`,It,[...t[0]||=[O(`rect`,{x:`2`,y:`5`,width:`20`,height:`14`,rx:`2`},null,-1),O(`path`,{d:`M9.5 10.5a2 2 0 0 0-3.5 1.3v.4a2 2 0 0 0 3.5 1.3`},null,-1),O(`path`,{d:`M17.5 10.5a2 2 0 0 0-3.5 1.3v.4a2 2 0 0 0 3.5 1.3`},null,-1)]])}var Rt=Q(Ft,[[`render`,Lt]]);const zt={},Bt={viewBox:`0 0 24 24`,fill:`currentColor`};function Vt(e,t){return z(),D(`svg`,Bt,[...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 Ht=Q(zt,[[`render`,Vt]]);const Ut={},Wt={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Gt(e,t){return z(),D(`svg`,Wt,[...t[0]||=[te(`<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 Kt=Q(Ut,[[`render`,Gt]]);const qt={},Jt={viewBox:`0 0 24 24`,fill:`currentColor`};function Yt(e,t){return z(),D(`svg`,Jt,[...t[0]||=[O(`path`,{d:`M4 12l1.41 1.41L11 7.83V20h2V7.83l5.59 5.58L20 12l-8-8-8 8z`},null,-1)]])}var Xt=Q(qt,[[`render`,Yt]]);const Zt={},Qt={viewBox:`0 0 24 24`,fill:`currentColor`};function $t(e,t){return z(),D(`svg`,Qt,[...t[0]||=[O(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var en=Q(Zt,[[`render`,$t]]);const tn={},nn={viewBox:`0 0 24 24`,fill:`currentColor`};function rn(e,t){return z(),D(`svg`,nn,[...t[0]||=[O(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var an=Q(tn,[[`render`,rn]]);const on={},sn={viewBox:`0 0 24 24`,fill:`currentColor`};function cn(e,t){return z(),D(`svg`,sn,[...t[0]||=[O(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var ln=Q(on,[[`render`,cn]]);const un={},dn={viewBox:`0 0 24 24`,fill:`currentColor`};function fn(e,t){return z(),D(`svg`,dn,[...t[0]||=[O(`circle`,{cx:`5`,cy:`12`,r:`2`},null,-1),O(`circle`,{cx:`12`,cy:`12`,r:`2`},null,-1),O(`circle`,{cx:`19`,cy:`12`,r:`2`},null,-1)]])}var pn=Q(un,[[`render`,fn]]);const mn={},hn={viewBox:`0 0 24 24`,fill:`currentColor`};function gn(e,t){return z(),D(`svg`,hn,[...t[0]||=[O(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var _n=Q(mn,[[`render`,gn]]);const vn={},yn={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function bn(e,t){return z(),D(`svg`,yn,[...t[0]||=[O(`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`},null,-1),O(`rect`,{x:`12`,y:`11`,width:`8`,height:`6`,rx:`1`,fill:`currentColor`,stroke:`none`},null,-1)]])}var xn=Q(vn,[[`render`,bn]]);const Sn={},Cn={viewBox:`0 0 24 24`,fill:`currentColor`};function wn(e,t){return z(),D(`svg`,Cn,[...t[0]||=[O(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var Tn=Q(Sn,[[`render`,wn]]);const En={},Dn={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function On(e,t){return z(),D(`svg`,Dn,[...t[0]||=[O(`rect`,{x:`2`,y:`6`,width:`20`,height:`12`,rx:`2`},null,-1),O(`path`,{d:`M7 14v-4M12 14V8M17 14v-2`},null,-1)]])}var kn=Q(En,[[`render`,On]]);const An={},jn={viewBox:`0 0 24 24`,fill:`currentColor`};function Mn(e,t){return z(),D(`svg`,jn,[...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 Nn=Q(An,[[`render`,Mn]]);const Pn={},Fn={viewBox:`0 0 24 24`,fill:`currentColor`};function In(e,t){return z(),D(`svg`,Fn,[...t[0]||=[O(`path`,{d:`M6 18l8.5-6L6 6v12zM16 6v12h2V6h-2z`},null,-1)]])}var Ln=Q(Pn,[[`render`,In]]);const Rn={},zn={viewBox:`0 0 24 24`,fill:`currentColor`};function Bn(e,t){return z(),D(`svg`,zn,[...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 Vn=Q(Rn,[[`render`,Bn]]);const Hn={},Un={viewBox:`0 0 24 24`,fill:`currentColor`};function Wn(e,t){return z(),D(`svg`,Un,[...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 Gn=Q(Hn,[[`render`,Wn]]);function $(e,t){return w(()=>e.value?e.value:t.value?document.getElementById(t.value)??null:null)}const Kn=[`aria-label`];var qn=Q(j({__name:`PlayButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>n.value?.isError?`error`:n.value?.hasEnded?`ended`:n.value?.isPlaying?`playing`:`idle`),i=w(()=>{switch(r.value){case`error`:return`Retry`;case`ended`:return`Replay`;case`playing`:return`Pause`;default:return`Play`}});function a(){let e=n.value;e&&(e.isError?e.retry():e.togglePlay())}return(e,t)=>(z(),D(`button`,{type:`button`,class:`mlv-play-button`,"aria-label":i.value,onClick:a},[U(e.$slots,`default`,{isPlaying:K(n)?.isPlaying??!1,hasEnded:K(n)?.hasEnded??!1,isError:K(n)?.isError??!1},()=>[r.value===`error`||r.value===`ended`?(z(),T(K(Nn),{key:0})):r.value===`playing`?(z(),T(K(_n),{key:1})):(z(),T(K(Tn),{key:2}))],!0)],8,Kn))}}),[[`__scopeId`,`data-v-218255bd`]]),Jn=Q(j({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(z(),D(`div`,{class:`spinner`,style:I({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Yn={key:0,class:`mlv-buffering`};var Xn=Q(j({__name:`Buffering`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>K(n)?.isBuffering?(z(),D(`div`,Yn,[U(e.$slots,`default`,{},()=>[A(Jn)],!0)])):E(`v-if`,!0)}}),[[`__scopeId`,`data-v-454fec7f`]]),Zn=j({__name:`VolumeIcon`,props:{isAudible:{type:Boolean,required:!0}},setup(e){return(t,n)=>e.isAudible?(z(),T(K(Gn),{key:0})):(z(),T(K(Vn),{key:1}))}});const Qn={class:`hud`},$n=[`aria-label`],er=[`aria-label`,`innerHTML`],tr={key:2,class:`hud__spacer`},nr={class:`hud__play-wrap`};var rr=Q(j({__name:`HudButtons`,setup(e){let t=Z(St),n=Z(Ct),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,builtinActive:s,onBuiltinClick:c}=At(M(wt),t,Z(Et));return(e,l)=>(z(),D(`div`,Qn,[!K(n).isOpen&&!K(t).isFullscreen?(z(),D(S,{key:0},[K(r)===`mute`||K(r)===`loop`||K(r)===`autoplay`?(z(),D(`button`,{key:0,class:F([`hud__btn`,{"hud__btn--active":K(s)}]),"aria-label":K(o),onClick:l[0]||=Y((...e)=>K(c)&&K(c)(...e),[`stop`])},[K(r)===`mute`?(z(),T(Zn,{key:0,"is-audible":K(t).isAudible},null,8,[`is-audible`])):K(r)===`loop`?(z(),T(K(ln),{key:1})):(z(),T(K(Ln),{key:2}))],10,$n)):K(i)&&K(a)?(z(),D(`button`,{key:1,class:`hud__btn`,"aria-label":K(a).label,onClick:l[1]||=Y(e=>K(a).onClick(),[`stop`]),innerHTML:K(a).icon},null,8,er)):(z(),D(`div`,tr))],64)):E(`v-if`,!0),O(`div`,nr,[A(qn,{player:K(t),class:`ppbtn ppbtn--lg`},null,8,[`player`]),A(Xn,{player:K(t),class:`hud__buf-spinner`},null,8,[`player`])]),!K(n).isOpen&&!K(t).isFullscreen?(z(),D(`button`,{key:1,class:`hud__btn`,"aria-label":`Show controls`,onClick:l[2]||=Y((...e)=>K(n).openControls&&K(n).openControls(...e),[`stop`])},[A(K(Kt))])):E(`v-if`,!0)]))}}),[[`__scopeId`,`data-v-a6d118e7`]]);const ir=new WeakMap;async function ar(e,t){if(!e){t();return}ir.get(e)?.();let n=e.getBoundingClientRect();t(),await P();let r=e.getBoundingClientRect(),i=n.left-r.left,a=n.top-r.top,o=n.width/r.width,s=n.height/r.height;if(!i&&!a&&o===1&&s===1)return;let c=getComputedStyle(e).position===`static`;c&&(e.style.position=`relative`),e.style.zIndex=`2147483647`,e.style.transition=`none`,e.style.transformOrigin=`top left`,e.style.transform=`translate(${i}px, ${a}px) scale(${o}, ${s})`,e.getBoundingClientRect(),await new Promise(t=>{let n=null,r=()=>{cancelAnimationFrame(i),n&&clearTimeout(n),e.style.transition=``,e.style.transform=``,e.style.transformOrigin=``,e.style.zIndex=``,c&&(e.style.position=``),ir.delete(e),t()};ir.set(e,r);let i=requestAnimationFrame(()=>{e.style.transition=`transform 220ms ease`,e.style.transform=``,n=setTimeout(r,220)})})}const or=[`aria-label`];var sr=Q(j({__name:`FullscreenButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>(z(),D(`button`,{type:`button`,class:`mlv-fullscreen-button`,"aria-label":K(n)?.isFullscreen?`Exit fullscreen`:`Enter fullscreen`,onClick:t[0]||=e=>K(n)?.toggleFullscreen()},[U(e.$slots,`default`,{isFullscreen:K(n)?.isFullscreen??!1},()=>[K(n)?.isFullscreen?(z(),T(K(an),{key:0})):(z(),T(K(en),{key:1}))],!0)],8,or))}}),[[`__scopeId`,`data-v-b93a5017`]]);const cr=[`aria-pressed`];var lr=Q(j({__name:`PipButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>K(n)?.supportsPip?(z(),D(`button`,{key:0,type:`button`,class:F([`mlv-pip-button`,{"mlv-pip-button--active":K(n)?.isPipActive}]),"aria-pressed":K(n)?.isPipActive??!1,"aria-label":`Toggle Picture-in-Picture`,onClick:t[0]||=e=>K(n)?.togglePip()},[U(e.$slots,`default`,{isPipActive:K(n)?.isPipActive??!1},()=>[A(K(xn))],!0)],10,cr)):E(`v-if`,!0)}}),[[`__scopeId`,`data-v-f654d93e`]]);function ur(e){let t=V(!1),n=V(null),i=!1,a=null,o=w(()=>{let t=e.value;return t?.total?t.current/t.total*100:0}),s=w(()=>n.value??o.value),c=w(()=>n.value!==null),l=w(()=>{let t=e.value?.total??0;return s.value/100*t});function u(){a&&clearTimeout(a),a=null}function d(){u(),n.value=null}function f(r){let a=e.value;a?.total&&(t.value||=(i=a.isPlaying,a.isPlaying&&a.togglePlay(),!0),u(),n.value=Number(r.target.value))}function p(o){if(!t.value)return;t.value=!1;let s=e.value;if(!s)return;let c=Number(o.target.value);n.value=c,s.seek(c),i&&s.togglePlay(),u(),a=setTimeout(d,r)}return q(()=>e.value?.current,()=>{let t=e.value;if(n.value===null||!t?.total)return;let r=n.value/100*t.total;Math.abs(t.current-r)<1&&d()}),L(d),{scrubbing:c,displayPercent:s,previewSeconds:l,onInput:f,onChange:p}}const dr={class:`mlv-scrubber-wrap`},fr=[`value`];var pr=Q(j({inheritAttrs:!1,__name:`Scrubber`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),{scrubbing:r,displayPercent:i,previewSeconds:a,onInput:o,onChange:s}=ur(n),c=e=>be(e,!0);return(e,t)=>(z(),D(`div`,dr,[O(`input`,N({type:`range`,min:`0`,max:`100`,step:`0.1`,value:K(i),class:`mlv-scrubber`},e.$attrs,{style:{"--p":`${K(i)}%`,"--b":`${K(n)?.bufferedDisplay??0}%`},onInput:t[0]||=(...e)=>K(o)&&K(o)(...e),onChange:t[1]||=(...e)=>K(s)&&K(s)(...e)}),null,16,fr),U(e.$slots,`preview`,{scrubbing:K(r),percent:K(i),previewSeconds:K(a),formatTime:c},()=>[K(r)?(z(),D(`div`,{key:0,class:`mlv-scrubber__preview`,style:I({left:`${K(i)}%`})},W(c(K(a))),5)):E(`v-if`,!0)],!0)]))}}),[[`__scopeId`,`data-v-043f1bc8`]]);const mr={class:`mlv-time-display__time`},hr={class:`mlv-time-display__total`};var gr=Q(j({__name:`TimeDisplay`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>(z(),D(`span`,{class:F([`mlv-time-display`,{"mlv-time-display--live":K(n)?.isLive}])},[U(e.$slots,`default`,{isLive:K(n)?.isLive??!1,current:K(n)?.current??0,total:K(n)?.total??0,formatTime:K(be)},()=>[K(n)?.isLive?(z(),D(S,{key:0},[t[0]||=O(`span`,{class:`mlv-time-display__dot`},null,-1),t[1]||=k(`Live `,-1)],64)):(z(),D(S,{key:1},[O(`span`,mr,W(K(be)(K(n)?.current??0)),1),O(`span`,hr,`/ `+W(K(be)(K(n)?.total??0)),1)],64))],!0)],2))}}),[[`__scopeId`,`data-v-0285c811`]]);const _r={class:`mlv-volume-wrap`},vr=[`value`],yr={class:`mlv-volume-pct`};var br=Q(j({inheritAttrs:!1,__name:`VolumeSlider`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>{let e=n.value;return e?e.isMuted?0:Math.round(e.vol*100):0});function i(e){n.value?.setVolume(Number(e.target.value)/100)}return(e,t)=>(z(),D(`div`,_r,[O(`input`,N({type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`mlv-volume-slider`},e.$attrs,{style:{"--v":`${r.value}%`},"aria-label":`Volume`,onInput:i}),null,16,vr),U(e.$slots,`default`,{percent:r.value},()=>[O(`span`,yr,W(r.value)+`%`,1)],!0)]))}}),[[`__scopeId`,`data-v-fbb2c86c`]]);const xr={class:`controls__vol-header`},Sr=[`aria-label`],Cr={class:`controls__vol-body`},wr={class:`controls__vol-pct`};var Tr=Q(j({__name:`VolumePanel`,emits:[`back`],setup(e){let t=Z(St),n=Z(Ct);return(e,r)=>(z(),D(S,null,[O(`div`,xr,[O(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:r[0]||=t=>e.$emit(`back`)},[A(K(Pt))]),r[6]||=O(`span`,{class:`controls__vol-label`},`Volume`,-1),O(`button`,{class:`controls__btn`,"aria-label":K(t).isMuted?`Unmute`:`Mute`,onClick:r[1]||=e=>K(t).toggleMute()},[A(Zn,{"is-audible":K(t).isAudible},null,8,[`is-audible`])],8,Sr)]),O(`div`,Cr,[A(br,{player:K(t),class:`controls__vol-slider`,onMousedown:r[2]||=e=>K(n).pauseHide(),onMouseup:r[3]||=e=>K(n).scheduleHide(),onTouchstartPassive:r[4]||=e=>K(n).pauseHide(),onTouchend:r[5]||=e=>K(n).scheduleHide()},{default:J(({percent:e})=>[O(`span`,wr,W(e)+`%`,1)]),_:1},8,[`player`])])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);function Er(e){function t(){let t=o.indexOf(e.currentPlaybackRate);e.setPlaybackRate(o[(t+1)%o.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}function Dr(e){function t(){let t=e.captionTracks;if(!t.length)return;let n=t[t.findIndex(t=>t.index===e.activeCaptionIndex)+1];e.setCaptionTrack(n?n.index:null)}function n(){return e.captionTracks.find(t=>t.index===e.activeCaptionIndex)?.label??`Off`}return{cycleCaptionTrack:t,currentCaptionLabel:n}}function Or(e){function t(){let t=e.qualityLevels;if(!t.length)return;if(e.isAutoQuality){e.setQuality(t[t.length-1].index);return}let n=t.findIndex(t=>t.index===e.currentQualityIndex);e.setQuality(n<=0?null:t[n-1].index)}function n(){return e.isAutoQuality?`Auto`:e.qualityLevels.find(t=>t.index===e.currentQualityIndex)?.label??`Auto`}return{cycleQuality:t,currentQualityLabel:n}}const kr=[`aria-label`],Ar={key:0,class:`controls__more-row-label`},jr=[`innerHTML`],Mr={key:1},Nr={key:2,class:`controls__more-value`};var Pr=Q(j({__name:`MoreMenuRow`,props:{label:{type:String,required:!0},ariaLabel:{type:String,required:!1,default:``},icon:{type:null,required:!1},iconHtml:{type:String,required:!1},active:{type:Boolean,required:!1,default:!1},value:{type:String,required:!1}},emits:[`click`],setup(e){return(t,n)=>(z(),D(`button`,{class:F([`controls__more-row`,{"controls__more-row--active":e.active}]),"aria-label":e.ariaLabel||e.label,onClick:n[0]||=e=>t.$emit(`click`)},[e.icon||e.iconHtml?(z(),D(`span`,Ar,[e.icon?(z(),T(ie(e.icon),{key:0,class:`controls__more-row-icon`})):(z(),D(`span`,{key:1,class:`controls__more-row-icon`,innerHTML:e.iconHtml},null,8,jr)),k(` `+W(e.label),1)])):(z(),D(`span`,Mr,W(e.label),1)),e.value===void 0?E(`v-if`,!0):(z(),D(`span`,Nr,W(e.value),1))],10,kr))}}),[[`__scopeId`,`data-v-47ca5bfc`]]);const Fr={class:`controls__more-header`};var Ir=Q(j({__name:`MoreMenu`,props:{isCustom:{type:Boolean,required:!0},customAction:{type:[Object,null],required:!0}},emits:[`back`],setup(e){let t=Z(St),n=Z(Ct),r=Z(Et),{cycleRate:i,fmtRate:a}=Er(t),{cycleCaptionTrack:o,currentCaptionLabel:s}=Dr(t),{cycleQuality:c,currentQualityLabel:l}=Or(t);return(u,d)=>(z(),D(S,null,[O(`div`,Fr,[O(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:d[0]||=e=>u.$emit(`back`)},[A(K(Pt))]),d[5]||=O(`span`,{class:`controls__more-label`},`More`,-1)]),O(`div`,{class:`controls__more-body`,onTouchstartPassive:d[4]||=e=>K(n).keepOpen()},[K(t).supportsPlaybackRate?(z(),T(Pr,{key:0,label:`Playback speed`,value:K(a)(K(t).currentPlaybackRate),onClick:K(i)},null,8,[`value`,`onClick`])):E(`v-if`,!0),A(Pr,{label:`Loop`,"aria-label":`Toggle loop`,icon:K(ln),active:K(t).isLooping,value:K(t).isLooping?`On`:`Off`,onClick:d[1]||=e=>K(t).toggleLoop()},null,8,[`icon`,`active`,`value`]),K(t).supportsCaptions?(z(),T(Pr,{key:1,label:`Captions`,icon:K(Rt),active:K(t).activeCaptionIndex!==null,value:K(s)(),onClick:K(o)},null,8,[`icon`,`active`,`value`,`onClick`])):E(`v-if`,!0),K(t).supportsQuality?(z(),T(Pr,{key:2,label:`Quality`,icon:K(kn),active:!K(t).isAutoQuality,value:K(l)(),onClick:K(c)},null,8,[`icon`,`active`,`value`,`onClick`])):E(`v-if`,!0),K(r).hasPlaylist?(z(),T(Pr,{key:3,label:`Autoplay next`,"aria-label":`Toggle autoplay next`,icon:K(Ln),active:K(r).autoAdvance,value:K(r).autoAdvance?`On`:`Off`,onClick:d[2]||=e=>K(r).toggleAutoAdvance()},null,8,[`icon`,`active`,`value`])):E(`v-if`,!0),e.isCustom&&e.customAction?(z(),T(Pr,{key:4,label:e.customAction.label,"icon-html":e.customAction.icon,onClick:d[3]||=t=>e.customAction.onClick()},null,8,[`label`,`icon-html`])):E(`v-if`,!0)],32)],64))}}),[[`__scopeId`,`data-v-e89a8208`]]);const Lr={class:`controls__row`},Rr={class:`controls__play-wrap`},zr={class:`controls__fs-wrap`};var Br=Q(j({__name:`ControlsPopup`,setup(e){let t=Z(St),n=Z(Ct),r=Z(Et),i=Ot(M(Tt),t),{isCustom:a,customAction:o}=At(M(wt),t,r),s=V(!1),c=V(!1),l=V(null),u=V(null),d=w(()=>t.isLooping||t.currentPlaybackRate!==1||r.autoAdvance);function f(e){return!l.value||l.value.contains(e)?!1:(n.closeControls(),!0)}function p(e){f(e.target)}function m(e){f(e.target)&&e.preventDefault()}R(()=>{t.fire(`controlsopen`,{element:l.value}),document.addEventListener(`click`,p,!0),document.addEventListener(`touchend`,m,!0)}),L(()=>{s.value=!1,c.value=!1,t.fire(`controlsclose`,{element:l.value}),document.removeEventListener(`click`,p,!0),document.removeEventListener(`touchend`,m,!0)});function h(e){n.suppressMouseLeave();let t=l.value,r=u.value;if(!t||!r){e();return}r.style.opacity=`0`,ar(t,e).then(()=>{r.style.transition=`opacity 130ms ease`,r.style.opacity=``,setTimeout(()=>{r.style.transition=``},130)})}function g(){if(_()){t.toggleMute();return}h(()=>{s.value=!0})}function v(){h(()=>{c.value=!0})}return(e,f)=>(z(),D(`div`,{ref_key:`popupEl`,ref:l,class:F([`controls`,{"controls--fs":K(t).isFullscreen,"controls--compact":K(i)}]),onMousemove:f[7]||=Y((...e)=>K(n).keepOpen&&K(n).keepOpen(...e),[`stop`])},[O(`div`,{ref_key:`contentEl`,ref:u},[s.value?(z(),T(Tr,{key:0,onBack:f[0]||=e=>h(()=>s.value=!1)})):c.value?(z(),T(Ir,{key:1,"is-custom":K(a),"custom-action":K(o),onBack:f[1]||=e=>h(()=>c.value=!1)},null,8,[`is-custom`,`custom-action`])):(z(),D(S,{key:2},[K(t).isLive?E(`v-if`,!0):(z(),T(pr,{key:0,player:K(t),class:`controls__seek`,onMousedown:f[2]||=e=>K(n).pauseHide(),onMouseup:f[3]||=e=>K(n).scheduleHide(),onTouchstartPassive:f[4]||=e=>K(n).pauseHide(),onTouchend:f[5]||=e=>K(n).scheduleHide()},null,8,[`player`])),O(`div`,Lr,[O(`div`,Rr,[A(Xn,{player:K(t)},null,8,[`player`]),K(t).isBuffering?E(`v-if`,!0):(z(),T(qn,{key:0,player:K(t),class:`ppbtn ppbtn--sm`},null,8,[`player`]))]),A(gr,{player:K(t),class:`controls__time-display`},null,8,[`player`]),K(r).hasNext?(z(),D(`button`,{key:0,class:`controls__btn`,"aria-label":`Play next`,onClick:f[6]||=e=>K(r).playNext()},[A(K(Ln))])):E(`v-if`,!0),O(`button`,{class:`controls__btn`,"aria-label":`Volume`,onClick:g},[A(Zn,{"is-audible":K(t).isAudible},null,8,[`is-audible`])]),O(`button`,{class:F([`controls__btn controls__btn--more`,{"controls__btn--active":d.value}]),"aria-label":`More`,onClick:v},[A(K(pn))],2),A(lr,{player:K(t),class:`controls__btn controls__btn--pip`},null,8,[`player`]),O(`div`,zr,[K(t).isFullscreenPending?(z(),T(Jn,{key:0})):(z(),T(sr,{key:1,player:K(t),class:`controls__btn`},null,8,[`player`]))])])],64))],512)],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Vr={key:0,class:`overlay__spinner`},Hr={key:0,class:`overlay__error`};var Ur=Q(j({__name:`PlayerOverlay`,setup(e){let t=Z(St),{hudVisible:n,popupVisible:r}=Dt(t,Z(Ct));return(e,i)=>(z(),D(S,null,[A(C,{name:`fade`},{default:J(()=>[!K(t).isReady&&!K(t).isError?(z(),D(`div`,Vr,[A(Jn,{size:40,"border-width":3})])):E(`v-if`,!0)]),_:1}),A(C,{name:`fade`},{default:J(()=>[K(t).isError?(z(),D(`div`,Hr,[O(`p`,null,W(K(t).errorMessage||`This video could not be played.`),1),O(`button`,{class:`overlay__retry`,onClick:i[0]||=Y((...e)=>K(t).retry&&K(t).retry(...e),[`stop`])},`Retry`)])):E(`v-if`,!0)]),_:1}),O(`div`,{class:F([`overlay__hud`,{"overlay__hud--visible":K(n)}])},[A(rr)],2),A(C,{name:`popup`},{default:J(()=>[K(r)?(z(),D(`div`,{key:0,class:F([`overlay__popup`,{"overlay__popup--fs":K(t).isFullscreen}])},[A(Br)],2)):E(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-2fba5782`]]);const Wr={class:`ad-overlay`},Gr={class:`ad-overlay__bar`},Kr={class:`ad-overlay__badge`},qr={key:0,class:`ad-overlay__countdown`},Jr=[`aria-label`],Yr=[`aria-label`];var Xr=Q(j({__name:`AdOverlay`,setup(e){let t=Z(St),n=w(()=>t.adRemainingTime>0?t.fmt(t.adRemainingTime):``);return(e,r)=>(z(),D(`div`,Wr,[O(`div`,Gr,[O(`div`,Kr,[r[2]||=O(`span`,null,`Ad`,-1),n.value?(z(),D(`span`,qr,W(n.value),1)):E(`v-if`,!0)]),O(`button`,{class:`ad-overlay__btn`,"aria-label":K(t).isAdPaused?`Resume ad`:`Pause ad`,onClick:r[0]||=e=>K(t).togglePlay()},[K(t).isAdPaused?(z(),T(K(Tn),{key:0})):(z(),T(K(_n),{key:1}))],8,Jr),O(`button`,{class:`ad-overlay__btn`,"aria-label":K(t).isAdMuted?`Unmute ad`:`Mute ad`,onClick:r[1]||=e=>K(t).toggleAdMute()},[K(t).isAdMuted?(z(),T(K(Vn),{key:0})):(z(),T(K(Gn),{key:1}))],8,Yr)])]))}}),[[`__scopeId`,`data-v-23efcc8b`]]);const Zr=V(0),Qr=w(()=>Zr.value>0),$r=V(!1);function ei(){Zr.value++}function ti(){Zr.value--}function ni(e,t,n){let r=V(!1),i=w(()=>r.value&&$r.value),a=null;function o(){if(a?.(),a=null,!n.value||!e.value){r.value=!1;return}a=ze(e.value,e=>{e.intersectionRatio<.1?t.value&&(r.value=!0):r.value=!1})}return R(o),q(n,o),q(e,o),L(()=>a?.()),{isPinned:r,isTucked:i,unpin:()=>r.value=!1}}function ri(e,t,n){let r=V(null),i=V(null);q(n,n=>{let i=e.value?.offsetWidth??null;r.value=n&&t.value&&i?{height:t.value.offsetHeight,wrapperWidth:i}:null});let a=w(()=>{if(!r.value)return{};let{height:e,wrapperWidth:t}=r.value,n=i.value?i.value/t:1;return{height:`${Math.round(e*n)}px`}}),o=null;return q(e,e=>{o?.disconnect(),o=null,e&&(o=new ResizeObserver(([e])=>i.value=e.contentRect.width),o.observe(e))},{immediate:!0}),L(()=>o?.disconnect()),{wrapperStyle:a,clear:()=>r.value=null}}function ii(e){e?.scrollIntoView({behavior:`smooth`,block:`center`})}var ai=Q(j({__name:`PinnablePlayerShell`,props:{isPlaying:{type:Boolean,required:!0}},setup(e){let t=e,n=V(null),r=V(null),{isPinned:i,unpin:a}=ni(n,G(t,`isPlaying`),V(!0)),o=V(i.value);q(i,e=>{ar(r.value,()=>{o.value=e})});let s=w(()=>o.value&&$r.value),{wrapperStyle:c}=ri(n,r,o);function l(){ii(n.value)}function u(e){r.value=e}return(e,t)=>(z(),D(`div`,{ref_key:`wrapperEl`,ref:n,class:`player-wrapper`,style:I(K(c))},[U(e.$slots,`default`,{isPinned:o.value,isTucked:s.value,setBoxEl:u,unpin:K(a),scrollToPlayer:l},void 0,!0)],4))}}),[[`__scopeId`,`data-v-a2f8a547`]]);const oi={class:`player-wrapper`};var si=Q(j({__name:`PlainPlayerShell`,props:{isPlaying:{type:Boolean,required:!0}},setup(e){function t(){}return(e,n)=>(z(),D(`div`,oi,[U(e.$slots,`default`,{isPinned:!1,isTucked:!1,setBoxEl:t,unpin:t,scrollToPlayer:t},void 0,!0)]))}}),[[`__scopeId`,`data-v-9188c23a`]]),ci=Q(j({__name:`PinnedControls`,emits:[`scroll-to`,`dismiss`],setup(e){return(e,t)=>(z(),D(S,null,[O(`button`,{class:`pinned-controls__scroll-to`,"aria-label":`Scroll to player`,onClick:t[0]||=Y(t=>e.$emit(`scroll-to`),[`stop`])},[A(K(Xt))]),O(`button`,{class:`pinned-controls__dismiss`,"aria-label":`Close`,onClick:t[1]||=Y(t=>e.$emit(`dismiss`),[`stop`])},[A(K(Ht))])],64))}}),[[`__scopeId`,`data-v-690b416a`]]);function li(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}const ui={"data-mlv-player":``},di=[`poster`],fi=[`src`,`kind`,`srclang`,`label`,`default`],pi={key:3,class:`player__native-play`};var mi=Q(j({__name:`VideoPlayer`,props:{src:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:c},adTagUrl:{type:String,required:!1,default:``},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1,default:()=>[]},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1,default:!1},controls:{type:Boolean,required:!1,default:!0},playInView:{type:Boolean,required:!1,default:!1},pin:{type:String,required:!1},hasPlaylist:{type:Boolean,required:!1,default:!1},hasNext:{type:Boolean,required:!1,default:!1},hasPrevious:{type:Boolean,required:!1,default:!1},autoAdvance:{type:Boolean,required:!1,default:!1}},emits:[`state-change`,`play-next`,`play-previous`,`toggle-auto-advance`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=V(null),o=re(_t(a,r,i)),s=re(vt(G(o,`isPlaying`)));B(St,o),B(Ct,s),B(wt,G(r,`action`)),B(Et,re({hasPlaylist:w(()=>r.hasPlaylist),hasNext:w(()=>r.hasNext),hasPrevious:w(()=>r.hasPrevious),autoAdvance:w(()=>r.autoAdvance),playNext:()=>i(`play-next`),playPrevious:()=>i(`play-previous`),toggleAutoAdvance:()=>i(`toggle-auto-advance`)}));let c=w(()=>li(r.aspectRatio)),l=w(()=>c.value.isPortrait),u=w(()=>c.value.cssRatio),d=w(()=>!r.poster&&!o.isReady),f=w(()=>r.pin?ai:si);function p(e){o.isPlaying&&o.togglePlay(),e()}function m(){s.onVideoTap(),o.fire(`tap`)}let{playerRef:h,forwarded:g}=xt();return h.value=o,t(g),(t,n)=>(z(),T(ie(f.value),{"is-playing":o.isPlaying},{default:J(({isPinned:t,isTucked:i,setBoxEl:c,unpin:f,scrollToPlayer:h})=>[O(`div`,{ref:c,class:F([`player`,{"player--pinned":t,"player--tucked":i,[`player--pin-${e.pin}`]:t}])},[t?(z(),T(ci,{key:0,onScrollTo:h,onDismiss:e=>p(f)},null,8,[`onScrollTo`,`onDismiss`])):E(`v-if`,!0),O(`div`,{class:F([`player__shell`,{"player__shell--portrait":l.value}]),style:I({aspectRatio:u.value}),onMousemove:n[0]||=e=>s.onMouseMove(),onContextmenuCapture:n[1]||=Y(()=>{},[`prevent`]),onMouseleave:n[2]||=e=>s.onMouseLeave()},[O(`div`,ui,[O(`video`,{ref_key:`videoEl`,ref:a,class:F([`mlv-video`,{"mlv-video--hidden":d.value}]),poster:r.poster,playsinline:``},[(z(!0),D(S,null,H(r.tracks,(e,t)=>(z(),D(`track`,{key:`${e.src}-${t}`,src:e.src,kind:e.kind??`captions`,srclang:e.srclang,label:e.label,default:e.default},null,8,fi))),128))],10,di),!r.disableTapCapture&&!o.isNativeUi&&o.hasStarted&&!o.isAdPlaying?(z(),D(`div`,{key:0,class:`overlay__tap-capture`,onClick:m,onTouchend:Y(m,[`prevent`,`stop`])},null,32)):E(`v-if`,!0),o.isAdPlaying&&!o.isNativeUi?(z(),T(Xr,{key:1})):E(`v-if`,!0),r.controls&&!o.isNativeUi?(z(),T(Ur,{key:2})):E(`v-if`,!0),r.controls&&o.isNativeUi&&!o.hasStarted?(z(),D(`div`,pi,[A(qn,{player:o,class:`ppbtn ppbtn--lg`},null,8,[`player`])])):E(`v-if`,!0)])],38)],2)]),_:1},8,[`is-playing`]))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);function hi(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function gi(e,t){let n=e=>t(e.detail);R(()=>window.addEventListener(e,n)),L(()=>window.removeEventListener(e,n))}function _i(e,t){let n=w(()=>!e.value||!t.value?-1:e.value.findIndex(e=>e.src===t.value?.src)),r=w(()=>n.value===-1||!e.value?null:e.value[n.value+1]??null),i=w(()=>n.value<=0||!e.value?null:e.value[n.value-1]??null);return{hasNext:w(()=>r.value!==null),hasPrevious:w(()=>i.value!==null),nextEntry:r,previousEntry:i}}function vi(){return localStorage.getItem(i)===`true`}function yi(e){localStorage.setItem(i,String(e))}const bi=[`src`],xi={class:`stage__idle-body`},Si={class:`stage__idle-btn`},Ci={class:`stage__idle-title`},wi={key:1,class:`stage__idle-empty`};var Ti=Q(j({__name:`VideoStage`,props:{pin:{type:String,required:!1,default:`bottom-right`},playlist:{type:Array,required:!1}},emits:[`state-change`],setup(t,{expose:r,emit:i}){let a=t,o=i,s=V(vi());q(s,yi);let c=w(()=>!!a.playlist?.length),u=V(null),d=V(!1),f=V(!1);function p(e){o(`state-change`,{type:e,currentTime:0,duration:0,src:u.value?.src??``})}q(d,e=>p(e?`stageopen`:`stageclose`));let{playerRef:m,forwarded:h}=xt(()=>d.value),g=V(null),_=V(null),v=V(!1);B(Tt,v);let{hasNext:y,hasPrevious:ee,nextEntry:b,previousEntry:x}=_i(G(a,`playlist`),u),C=w(()=>v.value&&!!u.value&&d.value),te=w(()=>C.value&&$r.value),k=w(()=>li(u.value?.aspectRatio||`16:9`).cssRatio),{wrapperStyle:j,clear:M}=ri(g,_,C),P=null;function ne(){P?.disconnect(),g.value&&(P=new IntersectionObserver(([e])=>{let t=!e.isIntersecting;if(!u.value||!d.value){v.value=t;return}ar(_.value,()=>{v.value=t})},{threshold:.98}),P.observe(g.value))}q(g,ne);function re(){u.value&&(u.value={...u.value,autoplay:!0,muted:ot(u.value.muted)},d.value=!0)}function H(){re()}function U(){ii(g.value)}function ie(){u.value=null,d.value=!1,f.value=!1,M(),ae()}function ae(){hi(l,{currentSrc:u.value?.src??null,isPlaying:f.value})}function J(e){if(u.value?.src===e.src&&d.value){e.fromGesture&&m.value?.togglePlay();return}u.value=e,d.value=!1,f.value=!1,ae(),d.value=!0}function Y(e){if(!(!u.value||e.src!==u.value.src)){if(!d.value){re();return}m.value?.togglePlay()}}function X(e,t){e&&J({...e,fromGesture:t,autoplay:!0,muted:e.muted??m.value?.isMuted??ot(void 0,t),volume:e.volume??m.value?.vol})}function oe(e=!0){X(b.value,e)}function se(e=!0){X(x.value,e)}function ce(e){e.type===`play`&&(f.value=!0),(e.type===`pause`||e.type===`ended`)&&(f.value=!1),e.type===`ended`&&s.value&&oe(!1),ae(),o(`state-change`,e)}return gi(n,J),gi(e,Y),R(ei),L(()=>{ti(),P?.disconnect()}),r({playNext:oe,playPrevious:se,hasNext:y,hasPrevious:ee,...h}),(e,n)=>(z(),D(`div`,{ref_key:`wrapperEl`,ref:g,class:`stage-wrapper`,style:I(K(j))},[O(`div`,{ref_key:`stageEl`,ref:_,class:F([`stage`,{"stage--minified":C.value,"stage--tucked":te.value,[`stage--pin-${t.pin}`]:C.value}])},[C.value?(z(),T(ci,{key:0,onScrollTo:U,onDismiss:ie})):E(`v-if`,!0),u.value&&d.value?(z(),T(mi,N({ref_key:`playerRef`,ref:m,key:u.value.src},u.value,{"has-playlist":c.value,"has-next":K(y),"has-previous":K(ee),"auto-advance":s.value,onStateChange:ce,onPlayNext:oe,onPlayPrevious:se,onToggleAutoAdvance:n[0]||=e=>s.value=!s.value}),null,16,[`has-playlist`,`has-next`,`has-previous`,`auto-advance`])):(z(),D(`div`,{key:2,class:`stage__idle`,style:I({aspectRatio:k.value}),onClick:H},[u.value?.poster?(z(),D(`img`,{key:0,src:u.value.poster,class:`stage__idle-poster`},null,8,bi)):E(`v-if`,!0),n[1]||=O(`div`,{class:`stage__idle-scrim`},null,-1),O(`div`,xi,[u.value?(z(),D(S,{key:0},[O(`div`,Si,[A(K(Tn))]),O(`p`,Ci,W(u.value.title),1)],64)):(z(),D(`p`,wi,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]),Ei=j({__name:`PlayPauseIcon`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,required:!1,default:!1}},setup(e){return(t,n)=>e.isPlaying?(z(),T(K(_n),{key:0})):e.hasEnded?(z(),T(K(Nn),{key:1})):(z(),T(K(Tn),{key:2}))}});const Di={class:`placeholder`},Oi=[`src`,`alt`],ki={class:`placeholder__btn-wrap`},Ai=[`aria-label`],ji={key:1,class:`placeholder__footer`},Mi={class:`placeholder__title`};var Ni=Q(j({__name:`VideoPlaceholder`,props:{fromGesture:{type:Boolean,required:!1},src:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:c},adTagUrl:{type:String,required:!1,default:``},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1},controls:{type:Boolean,required:!1},playInView:{type:Boolean,required:!1},pin:{type:String,required:!1}},emits:[`enter-view`],setup(e,{emit:t}){let r=e,i=t,a=w(()=>li(r.aspectRatio)),o=w(()=>a.value.isPortrait),s=w(()=>a.value.cssRatio),c=V(null),u=null,d=V(!1),f=V(!1),p=w(()=>d.value&&f.value?`Pause`:`Play`);gi(l,e=>{d.value=e.currentSrc===r.src,f.value=d.value&&e.isPlaying});function m(e,t,i){hi(n,{...r,fromGesture:e,...t!==void 0&&{autoplay:t},...i!==void 0&&{muted:i}})}function h(){m(!0,!0,ot(r.muted))}return R(()=>{r.autoStage&&m(!1),r.playInView&&c.value&&(u=He(c.value,()=>i(`enter-view`)))}),L(()=>u?.()),(t,n)=>(z(),D(`div`,Di,[O(`div`,{ref_key:`shellEl`,ref:c,class:F([`placeholder__shell`,{"placeholder__shell--portrait":o.value,"placeholder__shell--active":d.value}]),style:I({aspectRatio:s.value}),onClick:h},[e.poster?(z(),D(`img`,{key:0,class:`placeholder__poster`,src:e.poster,alt:e.title},null,8,Oi)):E(`v-if`,!0),n[0]||=O(`div`,{class:`placeholder__scrim`},null,-1),O(`div`,ki,[O(`button`,{type:`button`,class:`ppbtn ppbtn--lg`,"aria-label":p.value,onClick:Y(h,[`stop`])},[A(Ei,{"is-playing":d.value&&f.value},null,8,[`is-playing`])],8,Ai)]),e.title?(z(),D(`div`,ji,[O(`p`,Mi,W(e.title),1)])):E(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),Pi=j({__name:`VideoCard`,props:{fromGesture:{type:Boolean,required:!1},src:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},adTagUrl:{type:String,required:!1},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1},controls:{type:Boolean,required:!1,default:void 0},playInView:{type:Boolean,required:!1},pin:{type:String,required:!1}},emits:[`state-change`],setup(e,{expose:t,emit:r}){let i=e,a=r,o=V(!1),s=V(!1);function c(){s.value=!0,o.value=!0}async function l(){o.value||(o.value=!0,await P())}let{playerRef:u,forwarded:d}=xt(async e=>Qr.value?(e===`togglePlay`&&hi(n,{...i,fromGesture:!0,autoplay:!0,muted:ot(i.muted)}),!1):(await l(),!0));return t(d),(e,t)=>K(Qr)?(z(),T(Ni,ne(N({key:0},i)),null,16)):(z(),D(S,{key:1},[i.lazy&&!o.value&&!i.autoplay?(z(),T(Ni,N({key:0},i,{onClickCapture:c,onEnterView:t[0]||=e=>o.value=!0}),null,16)):(z(),T(mi,N({key:1,ref_key:`playerRef`,ref:u},i,{autoplay:o.value||i.autoplay,muted:K(ot)(i.muted,s.value),onStateChange:t[1]||=e=>a(`state-change`,e)}),null,16,[`autoplay`,`muted`]))],64))}}),Fi=Q(j({__name:`HideMarker`,setup(e){let t=V(null),n=null;return R(()=>{t.value&&(n=new IntersectionObserver(([e])=>{$r.value=e.isIntersecting}),n.observe(t.value))}),L(()=>n?.disconnect()),(e,n)=>(z(),D(`div`,{ref_key:`el`,ref:t,class:`mlv-hide-marker`},null,512))}}),[[`__scopeId`,`data-v-bacb702a`]]);const Ii=[`aria-label`];var Li=Q(j({__name:`MuteButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>(z(),D(`button`,{type:`button`,class:`mlv-mute-button`,"aria-label":K(n)?.isMuted?`Unmute`:`Mute`,onClick:t[0]||=e=>K(n)?.toggleMute()},[U(e.$slots,`default`,{isMuted:K(n)?.isMuted??!1},()=>[A(Zn,{"is-audible":K(n)?.isAudible??!1},null,8,[`is-audible`])],!0)],8,Ii))}}),[[`__scopeId`,`data-v-1940b598`]]);const Ri=[`aria-pressed`];var zi=Q(j({__name:`LoopButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`));return(e,t)=>(z(),D(`button`,{type:`button`,class:F([`mlv-loop-button`,{"mlv-loop-button--active":K(n)?.isLooping}]),"aria-pressed":K(n)?.isLooping??!1,"aria-label":`Toggle loop`,onClick:t[0]||=e=>K(n)?.toggleLoop()},[U(e.$slots,`default`,{isLooping:K(n)?.isLooping??!1},()=>[A(K(ln))],!0)],10,Ri))}}),[[`__scopeId`,`data-v-e32eda25`]]);const Bi=[`aria-label`];var Vi=Q(j({__name:`CaptionsButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>n.value?Dr(n.value):null),i=w(()=>r.value?.currentCaptionLabel()??`Off`);function a(){r.value?.cycleCaptionTrack()}return(e,t)=>K(n)?.supportsCaptions?(z(),D(`button`,{key:0,type:`button`,class:F([`mlv-captions-button`,{"mlv-captions-button--active":K(n)?.activeCaptionIndex!==null}]),"aria-label":`Captions: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,tracks:K(n)?.captionTracks??[],activeIndex:K(n)?.activeCaptionIndex??null},()=>[A(K(Rt))],!0)],10,Bi)):E(`v-if`,!0)}}),[[`__scopeId`,`data-v-2572c4f2`]]);const Hi=[`aria-label`];var Ui=Q(j({__name:`QualityButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>n.value?Or(n.value):null),i=w(()=>r.value?.currentQualityLabel()??`Auto`);function a(){r.value?.cycleQuality()}return(e,t)=>K(n)?.supportsQuality?(z(),D(`button`,{key:0,type:`button`,class:F([`mlv-quality-button`,{"mlv-quality-button--active":!K(n)?.isAutoQuality}]),"aria-label":`Quality: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,levels:K(n)?.qualityLevels??[],currentIndex:K(n)?.currentQualityIndex??null,isAuto:K(n)?.isAutoQuality??!0},()=>[A(K(kn))],!0)],10,Hi)):E(`v-if`,!0)}}),[[`__scopeId`,`data-v-d1352878`]]);const Wi=[`aria-label`];var Gi=Q(j({__name:`PlaybackRateButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>n.value?Er(n.value):null),i=w(()=>r.value?r.value.fmtRate(n.value.currentPlaybackRate):`1×`);function a(){r.value?.cycleRate()}return(e,t)=>K(n)?.supportsPlaybackRate?(z(),D(`button`,{key:0,type:`button`,class:F([`mlv-playback-rate-button`,{"mlv-playback-rate-button--active":K(n)?.currentPlaybackRate!==1}]),"aria-label":`Playback speed: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,rate:K(n)?.currentPlaybackRate??1,rates:[...K(o)]},()=>[k(W(i.value),1)],!0)],10,Wi)):E(`v-if`,!0)}}),[[`__scopeId`,`data-v-646c9bc1`]]);const Ki=[`aria-current`,`onClick`],qi={class:`mlv-transcript__time`},Ji={class:`mlv-transcript__text`};var Yi=Q(j({__name:`Transcript`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1},cues:{type:[Array,String],required:!1}},setup(e){let t=e,n=$(G(t,`player`),G(t,`for`)),r=w(()=>{if(typeof t.cues!=`string`)return t.cues??[];try{return JSON.parse(t.cues)}catch{return[]}}),i=w(()=>{let e=n.value?.current??0,t=r.value;for(let n=t.length-1;n>=0;n--){let r=t[n];if(!(r.time>e))return r.end!==void 0&&e>=r.end?null:n}return null}),a=V(null),o=V(!1);function s(e){let t=n.value;t&&(t.total>0&&t.seek(e.time/t.total*100),t.isPlaying||t.togglePlay())}return q(i,async e=>{e===null||o.value||(await P(),a.value?.querySelector(`.mlv-transcript__cue--active`)?.scrollIntoView?.({block:`nearest`,behavior:`smooth`}))}),(e,t)=>(z(),D(`ol`,{ref_key:`listEl`,ref:a,class:`mlv-transcript`,onPointerenter:t[0]||=e=>o.value=!0,onPointerleave:t[1]||=e=>o.value=!1},[(z(!0),D(S,null,H(r.value,(t,n)=>(z(),D(`li`,{key:`${t.time}-${n}`,class:`mlv-transcript__item`},[O(`button`,{type:`button`,class:F([`mlv-transcript__cue`,{"mlv-transcript__cue--active":n===i.value}]),"aria-current":n===i.value?`true`:void 0,onClick:e=>s(t)},[U(e.$slots,`default`,{cue:t,index:n,isActive:n===i.value,formatTime:K(be)},()=>[O(`span`,qi,W(K(be)(t.time)),1),O(`span`,Ji,W(t.text),1)],!0)],10,Ki)]))),128))],544))}}),[[`__scopeId`,`data-v-c166a2c5`]]);function Xi(e,t){if(t)for(let n of Object.keys(t)){let r=t[n];typeof r==`function`?e[n]=r:Object.defineProperty(e,n,{get:()=>t[n],enumerable:!0,configurable:!0})}}const Zi={install(e){e.component(`VideoPlayer`,mi),e.component(`VideoStage`,Ti),e.component(`VideoPlaceholder`,Ni),e.component(`VideoCard`,Pi),e.component(`HideMarker`,Fi),e.component(`Scrubber`,pr),e.component(`PlayButton`,qn),e.component(`MuteButton`,Li),e.component(`FullscreenButton`,sr),e.component(`Buffering`,Xn),e.component(`LoopButton`,zi),e.component(`PipButton`,lr),e.component(`CaptionsButton`,Vi),e.component(`QualityButton`,Ui),e.component(`PlaybackRateButton`,Gi),e.component(`VolumeSlider`,br),e.component(`TimeDisplay`,gr),e.component(`Transcript`,Yi)}};export{Xn as Buffering,Vi as CaptionsButton,sr as FullscreenButton,Fi as HideMarker,zi as LoopButton,Li as MuteButton,lr as PipButton,qn as PlayButton,Gi as PlaybackRateButton,Ui as QualityButton,pr as Scrubber,gr as TimeDisplay,Yi as Transcript,Pi as VideoCard,Ni as VideoPlaceholder,mi as VideoPlayer,Zi as VideoPlayerPlugin,Zi as default,Ti as VideoStage,br as VolumeSlider,Xi as exposePlayerOnElement,se as getPlatform,de as registerEmbedAdapter,oe as registerMatcher,ve as registerPlatform,he as registerSourceResolver,Dr as useCaptions,xt as useForwardedPlayer,Er as usePlaybackRate,Or as useQuality,ur as useScrubber};
1
+ import{A as e,C as t,D as n,E as r,S as i,T as a,a as o,d as s,g as c,h as l,i as u,j as d,k as f,o as p,r as m,s as h,u as g,x as _}from"./chunks/constants-zR-UwEWY.mjs";import{n as v,r as y,t as b}from"./chunks/platform-Dg9JBh8M.mjs";import{c as ee,d as x,s as S}from"./chunks/embedShared-duyOYFQN.mjs";import{Fragment as C,Transition as w,computed as T,createBlock as E,createCommentVNode as D,createElementBlock as O,createElementVNode as k,createStaticVNode as A,createTextVNode as te,createVNode as j,defineComponent as M,inject as N,mergeProps as P,nextTick as ne,normalizeClass as F,normalizeProps as re,normalizeStyle as I,onBeforeUnmount as L,onMounted as R,openBlock as z,provide as ie,reactive as B,ref as V,renderList as H,renderSlot as U,resolveDynamicComponent as ae,shallowRef as oe,toDisplayString as W,toRef as G,unref as K,watch as q,withCtx as J,withModifiers as Y}from"vue";const se=[];function ce(e){se.push(e)}function le(e){return e?se.find(t=>t.test(e))?.key??`html5`:`html5`}function ue(e){if(!e)return{key:`html5`,embed:!1};let t=se.find(t=>t.test(e));return{key:t?.key??`html5`,embed:t?.embed??!1}}const de={},fe={};function pe(e,t){de[e]=t}async function me(e,t,n){let r=de[e];if(!r){let t=fe[e];if(!t)return null;r=await t(),de[e]=r}return r(t,n)}const he={},ge={};function _e(e,t){he[e]=t}function ve(e){if(/\.m3u8(\?|#|$)/.test(e))return p;if(/\.mpd(\?|#|$)/.test(e))return m;if(/\.mp4(\?|#|$)/.test(e))return s}async function ye(e,t){let n=he[e];if(!n){let t=ge[e];t&&(n=await t(),he[e]=n)}return n?n(t):{src:t,type:ve(t)}}function be(e){ce({test:e.test,key:e.key,embed:e.embed}),e.embed?pe(e.key,e.createAdapter):e.resolveSource&&_e(e.key,e.resolveSource)}function xe(e){ce({key:e.key,test:e.test,embed:e.embed}),e.embed?fe[e.key]=e.loadAdapter:ge[e.key]=e.loadResolver}xe({key:`youtube`,test:e=>/youtu\.be|youtube\.com/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/youtube-DbJ-IrvP.mjs`).then(e=>e.createYoutubeAdapter)}),xe({key:`vimeo`,test:e=>/vimeo\.com|player\.vimeo\.com/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/vimeo-WJYDJPA3.mjs`).then(e=>e.createVimeoAdapter)}),xe({key:`dailymotion`,test:e=>/dailymotion\.com|dai\.ly/.test(e),embed:!0,loadAdapter:()=>import(`./chunks/dailymotion-gEquA4h5.mjs`).then(e=>e.createDailymotionAdapter)}),xe({key:`jwplayer`,test:e=>/cdn\.jwplayer\.com/.test(e)||e.startsWith(`jwplayer://`),embed:!1,loadResolver:()=>import(`./chunks/jwplayer-WIkwoJTA.mjs`).then(e=>e.resolveSource)}),xe({key:`brightcove`,test:e=>/players\.brightcove\.net/.test(e),embed:!1,loadResolver:()=>import(`./chunks/brightcove-rNI-XRxB.mjs`).then(e=>e.resolveSource)});function Se(e,t=!1){if(!e||isNaN(e))return`0:00`;let n=t?Math.round(e):Math.floor(e);return`${Math.floor(n/60)}:${String(n%60).padStart(2,`0`)}`}const Ce=new Set;function we(e){return Ce.add(e),()=>Ce.delete(e)}function Te(e){Ce.forEach(t=>{if(t!==e)try{t()}catch{}})}function Ee(e){let t=new Set,n=null;function r(){t.forEach(e=>e())}return i=>(n||=e(r),t.add(i),()=>{t.delete(i),t.size===0&&(n?.(),n=null)})}const De=Ee(e=>(document.addEventListener(`fullscreenchange`,e),document.addEventListener(`webkitfullscreenchange`,e),()=>{document.removeEventListener(`fullscreenchange`,e),document.removeEventListener(`webkitfullscreenchange`,e)})),Oe=Ee(e=>(document.addEventListener(`visibilitychange`,e),window.addEventListener(`blur`,e),()=>{document.removeEventListener(`visibilitychange`,e),window.removeEventListener(`blur`,e)}));function ke(e){let t=V(!1),n=V(!1),r=null;function i(){let e=document;t.value=!!(document.fullscreenElement||e.webkitFullscreenElement),n.value=!1}function a(){let r=e();if(r){if(t.value){r.exitFullscreen();return}n.value=!0,r.enterFullscreen()}}function o(){n.value=!0}function s(e){e.on(l,()=>{n.value=!0}),e.on(c,()=>{n.value=!1}),e.on(`nativefullscreenenter`,()=>{t.value=!0,n.value=!1}),e.on(`nativefullscreenexit`,()=>{t.value=!1,n.value=!1})}return R(()=>{r=De(i)}),L(()=>{r?.()}),{isFullscreen:t,isFullscreenPending:n,toggleFullscreen:a,markFullscreenPending:o,attachPlayerEvents:s}}function Ae(e){let t=V(!1),n=null;function r(){clearTimeout(n??void 0),t.value&&e(`bufferend`),t.value=!1}function i(i){i.on(`waiting`,()=>{clearTimeout(n??void 0),n=setTimeout(()=>{t.value=!0,e(`bufferstart`)},500)}),i.on(`playing`,r),i.on(`canplay`,r)}return L(()=>clearTimeout(n??void 0)),{isBuffering:t,attachPlayerEvents:i,reset:r}}function je(e,t,n){let r=new Set;function a(){if(!t.value)return;let a=e.value/t.value;for(let[e,t]of i)!r.has(e)&&a>=e&&(r.add(e),n(t))}function o(){r.clear()}return{checkQuartiles:a,reset:o}}function Me(){try{return JSON.parse(localStorage.getItem(`player:positions`)??`[]`)}catch{return[]}}function Ne(e){localStorage.setItem(n,JSON.stringify(e))}function Pe(e,t){if(t<5)return;let n=Me().filter(t=>t.url!==e);n.unshift({url:e,time:t}),Ne(n.slice(0,5))}function Fe(e){return Me().find(t=>t.url===e)?.time??null}function Ie(e){Ne(Me().filter(t=>t.url!==e))}function Le(e,t,n){let r=!1;function i(t){if(r)return;let n=Fe(e);n&&t.setCurrentTime(n),r=!0}function a(t){t&&!n.value&&Pe(e,t.currentTime()??0)}function o(){Ie(e)}let s=Oe(()=>{document.visibilityState===`hidden`&&a(t())});return L(()=>{a(t()),s()}),{restoreOnce:i,save:a,clear:o}}const Re=new WeakMap,ze=[.1,.5];function Be(e){let t=Re.get(e);if(t)return t;let n=new Set,r=new IntersectionObserver(([e])=>n.forEach(t=>t(e)),{threshold:ze});r.observe(e);let i={observer:r,callbacks:n};return Re.set(e,i),i}function Ve(e,t){let n=Be(e);return n.callbacks.add(t),()=>{n.callbacks.delete(t),n.callbacks.size===0&&(n.observer.disconnect(),Re.delete(e))}}let He=null,Ue=null;function We(e,t){let n=Ve(e,n=>{n.intersectionRatio<.5||(Ue&&clearTimeout(Ue),He=e,Ue=setTimeout(()=>{He=null,Ue=null,t()},150))});return()=>{He===e&&Ue&&(clearTimeout(Ue),He=null,Ue=null),n()}}function Ge(e,t,n,r,i){let a=null;R(()=>{let o=e.value&&S(e.value);o&&(a=Ve(o,e=>{let a=t();e.intersectionRatio<.1&&a&&!a.paused()&&!n.value&&!r.value&&!i.value&&a.pause()}))}),L(()=>a?.())}function Ke(e){return e.kind===`captions`||e.kind===`subtitles`}function qe(e,t){e.textTracks.addEventListener(`addtrack`,t),e.textTracks.addEventListener(`removetrack`,t);function n(){let t=[];for(let n=0;n<e.textTracks.length;n++){let r=e.textTracks[n];Ke(r)&&t.push({index:n,label:r.label||r.language||`Track ${n+1}`,language:r.language})}return t}function r(t){for(let n=0;n<e.textTracks.length;n++){let r=e.textTracks[n];Ke(r)&&(r.mode=n===t?`showing`:`hidden`)}}function i(){for(let t=0;t<e.textTracks.length;t++){let n=e.textTracks[t];if(Ke(n)&&n.mode===`showing`)return t}return null}return{supportsCaptions:()=>n().length>0,getCaptionTracks:n,setCaptionTrack:r,getActiveCaptionTrack:i,dispose:()=>{e.textTracks.removeEventListener(`addtrack`,t),e.textTracks.removeEventListener(`removetrack`,t)}}}function Je(e){let t=new Map;for(let n of e){if(!n.height)continue;let e=t.get(n.height);(!e||n.bitrate>e.bitrate)&&t.set(n.height,n)}return[...t.values()].sort((e,t)=>e.height-t.height)}function Ye(e){function t(){return Je(e()?.levels()??[])}function n(){return e()?.isAuto()??!0}function r(){let t=e();return t?n()?null:t.currentIndex():null}function i(t){e()?.setIndex(t)}return{supportsQuality:()=>t().length>0,getQualityLevels:t,getCurrentQuality:r,isAutoQuality:n,setQuality:i}}function Xe(e,t,n){let r=[[`webkitbeginfullscreen`,t],[`webkitendfullscreen`,n]];for(let[t,n]of r)e.addEventListener(t,n);function i(){let t=e;if(typeof t.webkitEnterFullscreen==`function`){t.webkitEnterFullscreen();return}let n=S(e);n&&y(n)}function a(){let t=e;if(typeof t.webkitExitFullscreen==`function`){t.webkitExitFullscreen();return}b()}return{enterFullscreen:i,exitFullscreen:a,dispose:()=>{for(let[t,n]of r)e.removeEventListener(t,n)}}}function Ze(e,t){let n=[[`enterpictureinpicture`,t],[`leavepictureinpicture`,t]];for(let[t,r]of n)e.addEventListener(t,r);function r(){return typeof document<`u`&&!!document.pictureInPictureEnabled&&!e.disablePictureInPicture}function i(){return document.pictureInPictureElement===e}function a(){i()?document.exitPictureInPicture():r()&&e.requestPictureInPicture()}return{supportsPip:r,isPipActive:i,togglePip:a,dispose:()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}}const Qe=[`play`,`pause`,`ended`,`error`,`timeupdate`,`durationchange`,`progress`,`volumechange`,`ratechange`,`seeking`,`seeked`,`waiting`,`playing`,`canplay`];function $e(e){return{levels:()=>e.levels.map((e,t)=>({index:t,height:e.height,bitrate:e.bitrate,label:`${e.height}p`})),isAuto:()=>e.autoLevelEnabled,currentIndex:()=>e.manualLevel,setIndex:t=>{e.currentLevel=t??-1}}}function et(e){return{levels:()=>e.getBitrateInfoListFor(`video`).map(e=>({index:e.qualityIndex,height:e.height,bitrate:e.bitrate,label:`${e.height}p`})),isAuto:()=>e.getSettings().streaming?.abr?.autoSwitchBitrate?.video??!0,currentIndex:()=>e.getQualityFor(`video`),setIndex:t=>{if(t===null){e.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:!0}}}});return}e.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:!1}}}}),e.setQualityFor(`video`,t,!0)}}}function tt(e,t){let n=x(),r=null,i=null,a=!1,o=null,s=null;async function c(i){let{default:s}=await import(`hls.js`);if(a||o!==i)return;if(typeof s?.isSupported!=`function`||!s.isSupported()){e.src=i,t.autoplay&&e.play();return}r=new s({liveDurationInfinity:!0}),r.loadSource(i),r.attachMedia(e),t.autoplay&&e.play();let c=s.Events,l=s.ErrorTypes;r.on(c.MANIFEST_PARSED,f(`qualitychange`)),r.on(c.LEVEL_SWITCHED,f(`qualitychange`)),r.on(c.ERROR,(e,t)=>{if(t.fatal&&!a&&o===i)switch(t.type){case l.NETWORK_ERROR:r?.startLoad();break;case l.MEDIA_ERROR:r?.recoverMediaError();break;default:r?.destroy(),r=null,n.trigger(`error`)}})}async function l(r){let o=await import(`dashjs`);if(a||s!==r)return;let c=o.MediaPlayer().create();i=c,c.initialize(e,r,t.autoplay??!1);let l=o.MediaPlayer.events;c.on(l.QUALITY_CHANGE_RENDERED,f(`qualitychange`)),c.on(l.STREAM_INITIALIZED,f(`qualitychange`)),c.on(l.ERROR,()=>{a||s!==r||(c.destroy(),i=null,n.trigger(`error`))})}function u(){return/Apple/.test(navigator.vendor)&&!/CriOS|FxiOS|OPiOS|EdgiOS|Chrome|Chromium|Android/.test(navigator.userAgent)&&(e.canPlayType(`application/vnd.apple.mpegurl`)!==``||e.canPlayType(`application/x-mpegURL`)!==``)}function d(n,a){if(r?.destroy(),r=null,o=null,i?.destroy(),i=null,s=null,a===`application/dash+xml`){s=n,l(n);return}if(a===`application/x-mpegURL`&&!u()){o=n,c(n);return}e.src=n,t.autoplay&&e.play()}let f=e=>()=>n.trigger(e),p=Qe.map(e=>[e,f(e)]);for(let[t,n]of p)e.addEventListener(t,n);let m=qe(e,f(`captionschange`)),h=Ye(()=>r?$e(r):i?et(i):null),g=Xe(e,f(`nativefullscreenenter`),f(`nativefullscreenexit`)),_=Ze(e,f(`pipchange`)),{poster:v,muted:y,autoplay:b,volume:ee,playbackRate:S,src:C,type:w}=t;return e.poster=v??``,e.muted=y??b??!1,e.volume=ee??1,e.playbackRate=S??1,e.playsInline=!0,d(C,w),{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:d,supportsPlaybackRate:()=>!0,supportsCaptions:m.supportsCaptions,getCaptionTracks:m.getCaptionTracks,setCaptionTrack:m.setCaptionTrack,getActiveCaptionTrack:m.getActiveCaptionTrack,supportsQuality:h.supportsQuality,getQualityLevels:h.getQualityLevels,getCurrentQuality:h.getCurrentQuality,isAutoQuality:h.isAutoQuality,setQuality:h.setQuality,supportsPip:_.supportsPip,isPipActive:_.isPipActive,togglePip:_.togglePip,enterFullscreen:g.enterFullscreen,exitFullscreen:g.exitFullscreen,on:n.on,off:n.off,dispose:()=>{a=!0,r?.destroy(),i?.destroy();for(let[t,n]of p)e.removeEventListener(t,n);m.dispose(),g.dispose(),_.dispose(),n.dispose()}}}function nt(e,t){if(!t||!Object.keys(t).length)return e;let n=e;for(let[e,r]of Object.entries(t))r!=null&&r!==``&&(n=n.split(`{${e}}`).join(encodeURIComponent(r)));return n}function rt(){try{let e=localStorage.getItem(a);if(!e)return o;let t=JSON.parse(e);return{muted:typeof t.muted==`boolean`?t.muted:o.muted,volume:typeof t.volume==`number`?t.volume:o.volume}}catch{return o}}function it(e){localStorage.setItem(a,JSON.stringify(e))}let at=!1;function ot(){at=!0}function st(){return at}function ct(e){it(e),e.muted||ot()}function lt(e,t=!0){if(e!==void 0)return e;if(!t)return;let n=rt().muted;return n||ot(),n}function ut(e,t){return e===void 0?t&&!st()?!0:rt().muted:e}function dt(e){return e.volume??rt().volume}function ft(e){return{muted:ut(e.muted,!!(e.autoplay||e.playInView)),volume:dt(e)}}async function pt(e,t,n){if(!t.value)return{status:`aborted`};let r=await me(e,t.value,{src:n.src,poster:n.poster,autoplay:n.autoplay,...ft(n),nativeUi:n.nativeUi});return t.value?r?{status:`mounted`,mounted:{adapter:r,currentSrc:{src:n.src},nativeUi:!!n.nativeUi,needsReveal:!0}}:{status:`unsupported`}:{status:`aborted`}}async function mt(e,t,n,r,i){let a=await ye(e,n.src).catch(()=>({src:n.src}));if(!t.value)return{status:`aborted`};let o=tt(t.value,{src:a.src,type:a.type,poster:a.poster||n.poster||``,autoplay:n.autoplay,...ft(n),playbackRate:r.value}),s=nt(n.adTagUrl||a.adTagUrl||``,n.adMacroParams);return i.attach(t.value,o,s,n.headerBidding),{status:`mounted`,mounted:{adapter:o,currentSrc:{src:a.src,type:a.type},needsReveal:!1}}}function ht(e,t,n,r,i){return e.embed?pt(e.key,t,n):mt(e.key,t,n,r,i)}function gt(e,t,n,r,i){let a=null;R(()=>{let o=e.value&&S(e.value);o&&(a=We(o,()=>{let e=t();e&&e.paused()&&!n.value&&!r.value&&(e.setMuted(ut(i,!0)),e.play())}))}),L(()=>a?.())}function _t(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();if(!t)return;let n=!t.muted();t.setMuted(n),ct({muted:n,volume:t.volume()})}function l(t){let n=e();if(!n)return;let r=t===0;n.setVolume(t),n.setMuted(r),ct({muted:r,volume:t})}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 vt(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,supportsCaptions:h,captionTracks:g,activeCaptionIndex:_,supportsQuality:v,qualityLevels:y,currentQualityIndex:b,isAutoQuality:ee,supportsPip:x,isPipActive:S,hasStarted:C,isError:w,errorMessage:T}=e,{fire:E,pauseThisPlayer:D,positionMemory:O,quartiles:k,buffering:A,fullscreen:te}=t;function j(e){i.value=!0,m.value=e.supportsPlaybackRate();function t(){g.value=e.getCaptionTracks(),h.value=g.value.length>0;let t=e.getActiveCaptionTrack();t!==_.value&&(_.value=t,C.value&&E(`captionchange`,{captionIndex:t}))}t(),e.on(`captionschange`,t);function j(){y.value=e.getQualityLevels(),v.value=y.value.length>0;let t=e.getCurrentQuality(),n=e.isAutoQuality(),r=t!==b.value||n!==ee.value;b.value=t,ee.value=n,r&&C.value&&E(`qualitychange`,{qualityIndex:n?null:t})}j(),e.on(`qualitychange`,j);function M(){x.value=e.supportsPip();let t=e.isPipActive();t!==S.value&&(S.value=t,C.value&&E(`pipchange`,{isPipActive:t}))}M(),e.on(`pipchange`,M);let N=()=>{if(a.value)return;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`,()=>{Te(D),a.value=!0,E(`adstart`)}),e.on(`adend`,()=>{a.value=!1,E(`adend`)}),e.on(`play`,()=>{Te(D),C.value=!0,n.value=!0,r.value=!1,o.value||O.restoreOnce(e),E(`play`)}),e.on(`pause`,()=>{n.value=!1,o.value||O.save(e),E(`pause`)}),e.on(`ended`,()=>{if(n.value=!1,k.reset(),A.reset(),f.value){e.setCurrentTime(0),e.play();return}c.value&&(s.value=c.value),r.value=!0,O.clear(),E(`ended`)}),e.on(`seeked`,()=>{E(`seeked`)}),e.on(`error`,()=>{let t=e.error();T.value=t?.message||`This video could not be played.`,w.value=!0,i.value=!0,console.error(`Video playback error:`,T.value),E(`error`,{error:t})});let P=0;e.on(`timeupdate`,()=>{if(r.value||a.value)return;s.value=e.currentTime()??0,c.value||N(),m.value||=e.supportsPlaybackRate();let t=e.getActiveCaptionTrack();_.value!==t&&(_.value=t,C.value&&E(`captionchange`,{captionIndex:t})),o.value||k.checkQuartiles();let n=Date.now();C.value&&n-P>=250&&(P=n,E(`timeupdate`))}),e.on(`durationchange`,N),e.on(`progress`,()=>{if(a.value)return;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,C.value&&E(`volumechange`,{isMuted:t})}),e.on(`ratechange`,()=>{let t=e.playbackRate()??1;p.value=t,C.value&&E(`ratechange`,{playbackRate:t})}),A.attachPlayerEvents(e),te.attachPlayerEvents(e)}return{attachPlayerEvents:j}}function yt(e,t){let{isAdPlaying:n,isAdPaused:r,isAdMuted:i,adRemainingTime:a}=e,{fire:o,pauseThisPlayer:s}=t,c=null,l=null,u=!1;async function d(e,t,d,f){if(!(d||f)||!e.parentElement)return;let p=!1;t.on(`play`,()=>{c?c.requestAdsOnFirstPlay():p=!0});let m=null;f&&import(`./chunks/prebid-RHDT0DOX.mjs`).then(({resolveHeaderBiddingAdTagUrl:e})=>e(f,d).catch(()=>d)).then(e=>{c?c.setAdTagUrl(e):m=e});function h(){!v()&&t.isPipActive()&&document.exitPictureInPicture()}function g(){!v()&&(document.hidden||!document.hasFocus())&&c?.isAdPlaying()&&c.pauseAd()}let _=Oe(g),y=()=>{t.isPipActive()||g()};t.on(`pipchange`,y),l=()=>{_(),t.off(`pipchange`,y)};let{attachAds:b}=await import(`./chunks/ads-BV769SMr.mjs`);!u&&e.parentElement&&(c=b(e.parentElement,e,d,{onAdStart:()=>{n.value=!0,r.value=!1,o(`adstart`),h(),g()},onAdEnd:()=>{n.value=!1,r.value=!1,a.value=0,o(`adend`)},onAdPauseChange:e=>{r.value=e,e||Te(s)},onAdMuteChange:e=>{i.value=e},onAdProgress:e=>{a.value=e},onError:e=>{n.value=!1,r.value=!1,a.value=0,console.error(`Ad playback error:`,e)}}),m&&c.setAdTagUrl(m),p&&c.requestAdsOnFirstPlay())}return{attach:d,isAdPlaying:()=>c?.isAdPlaying()??!1,isAdPaused:()=>c?.isAdPaused()??!1,pauseAd:()=>c?.pauseAd(),resumeAd:()=>c?.resumeAd(),toggleAdMute:()=>c?.toggleAdMute(),dispose:()=>{u=!0,c?.dispose(),c=null,l?.(),l=null}}}function bt(e,t,n){let r=null,i=null,a=null,o=!1,s=V(!1),c=V(!1),l=V(!1),u=V(!1),d=V(0),f=V(0),p=V(0),m=V(dt(t)),h=V(!1),g=V(!1),_=V(!1),v=V(0),y=V(ut(t.muted,!!(t.autoplay||t.playInView))),b=V(!1),x=V(t.playbackRate??1),S=V(!1),C=V(!1),w=V([]),E=V(null),D=V(!1),O=V([]),k=V(null),A=V(!0),te=V(!1),j=V(!1),M=V(!1),N=V(!1),P=V(``),ne=V(!1),F=T(()=>f.value?d.value/f.value*100:0),re=T(()=>Math.max(p.value,F.value)),I=T(()=>!y.value&&m.value>0),z=()=>r,ie=T(()=>{if(typeof t.payload!=`string`)return t.payload??{};try{return JSON.parse(t.payload)}catch{return{}}});function B(e,r={}){n(`state-change`,{type:e,currentTime:d.value,duration:f.value,src:t.src,...r,payload:ie.value})}let H=ke(z),U=Ae(B),ae=Le(t.src,z,c),oe=je(d,f,B);function W(){r&&a&&(N.value=!1,P.value=``,r.setSrc(a.src,a.type))}function G(){if(J.isAdPlaying()){J.pauseAd();return}r?.pause()}function K(){if(J.isAdPlaying()){J.isAdPaused()?J.resumeAd():J.pauseAd();return}Y.togglePlay()}let J=yt({isAdPlaying:h,isAdPaused:g,isAdMuted:_,adRemainingTime:v},{fire:B,pauseThisPlayer:G}),Y=_t(z,l,f,b,x,s),{attachPlayerEvents:se}=vt({isPlaying:s,hasEnded:c,isReady:l,isAdPlaying:h,isLive:u,current:d,total:f,buffered:p,vol:m,isMuted:y,isLooping:b,playbackRate:x,supportsPlaybackRate:S,supportsCaptions:C,captionTracks:w,activeCaptionIndex:E,supportsQuality:D,qualityLevels:O,currentQualityIndex:k,isAutoQuality:A,supportsPip:te,isPipActive:j,hasStarted:M,isError:N,errorMessage:P},{fire:B,pauseThisPlayer:G,positionMemory:ae,quartiles:oe,buffering:U,fullscreen:H});function ce(e){r?.setCaptionTrack(e),E.value=e,M.value&&B(`captionchange`,{captionIndex:e})}function le(e){r?.setQuality(e),k.value=e,A.value=e===null,M.value&&B(`qualitychange`,{qualityIndex:e})}function de(){r?.togglePip()}function fe(){Y.toggleLoop(),M.value&&B(`loopchange`,{isLooping:b.value})}q(()=>t.muted,e=>{r&&e!==void 0&&r.setMuted(e)}),q(()=>t.playbackRate,e=>{r&&e!==void 0&&r.setPlaybackRate(e)}),Ge(e,z,H.isFullscreen,H.isFullscreenPending,T(()=>!!t.pin)),t.playInView&&gt(e,z,H.isFullscreen,H.isFullscreenPending,t.muted);function pe(e){r=e.adapter,a=e.currentSrc,o=e.needsReveal,e.nativeUi!==void 0&&(ne.value=e.nativeUi),i=we(G),se(e.adapter)}return q(M,t=>{t&&o&&e.value&&r&&ee(e.value,r.el)}),R(async()=>{let n=await ht(ue(t.src),e,t,x,J);if(n.status===`unsupported`){N.value=!0,l.value=!0,P.value=`This platform is not yet supported.`;return}n.status===`mounted`&&pe(n.mounted)}),L(()=>{i?.(),J.dispose(),r?.dispose(),r=null}),{isPlaying:s,hasEnded:c,isReady:l,isLive:u,isBuffering:U.isBuffering,current:d,total:f,progress:F,bufferedDisplay:re,hasStarted:M,isError:N,errorMessage:P,fmt:Se,fire:B,retry:W,togglePlay:K,seek:Y.seek,isAdPlaying:h,isAdPaused:g,isAdMuted:_,adRemainingTime:v,toggleAdMute:J.toggleAdMute,vol:m,isMuted:y,isAudible:I,toggleMute:Y.toggleMute,setVolume:Y.setVolume,isLooping:b,toggleLoop:fe,currentPlaybackRate:x,setPlaybackRate:Y.setPlaybackRate,supportsPlaybackRate:S,isFullscreen:H.isFullscreen,isFullscreenPending:H.isFullscreenPending,toggleFullscreen:H.toggleFullscreen,markFullscreenPending:H.markFullscreenPending,supportsCaptions:C,captionTracks:w,activeCaptionIndex:E,setCaptionTrack:ce,supportsQuality:D,qualityLevels:O,currentQualityIndex:k,isAutoQuality:A,setQuality:le,supportsPip:te,isPipActive:j,togglePip:de,isNativeUi:ne}}const xt=new Set([`ArrowLeft`,`ArrowRight`,`ArrowUp`,`ArrowDown`,`Home`,`End`]);function St(e,t){function n(e,t,n){return Math.min(n,Math.max(t,e))}function r(t){if(!e.total)return;let r=n(e.current+t,0,e.total);e.seek(r/e.total*100)}function i(t){e.setVolume(n(e.vol+t,0,1))}function a(){e.supportsCaptions&&e.setCaptionTrack(e.activeCaptionIndex===null?0:null)}function o(n){if(n.repeat||n.metaKey||n.ctrlKey||n.altKey)return;let o=n.target;if(!o.closest(`input:not([type="range"]), textarea, select, [contenteditable="true"]`)&&!(xt.has(n.key)&&o.closest(`input[type="range"]`))&&(n.key!==` `&&n.key!==`Enter`||!o.closest(`button, a[href]`))){switch(n.key){case` `:case`k`:n.preventDefault(),e.togglePlay();break;case`ArrowLeft`:n.preventDefault(),r(-5);break;case`ArrowRight`:n.preventDefault(),r(5);break;case`ArrowUp`:n.preventDefault(),i(g);break;case`ArrowDown`:n.preventDefault(),i(-g);break;case`m`:e.toggleMute();break;case`f`:e.toggleFullscreen();break;case`c`:a();break;case`Home`:n.preventDefault(),e.seek(0);break;case`End`:n.preventDefault(),e.seek(100);break;default:if(!/^[0-9]$/.test(n.key))return;e.seek(Number(n.key)*10)}t.onMouseMove()}}return{onKeydown:o}}function Ct(e,t){let n=V(!0),r=V(!1),i=null,a=0;function o(e=400){a=Date.now()+e}function s(e=h){clearTimeout(i??void 0),i=setTimeout(()=>{if(document.activeElement?.closest(`.overlay__hud, .overlay__popup`)){s(e);return}n.value=!1,r.value=!1},e)}function c(){clearTimeout(i??void 0)}function l(){r.value=!0,n.value=!0,s()}function u(i=!1){r.value=!1,(i||t.value)&&(n.value=!1),e.value&&s()}function d(){e.value&&s()}function f(){n.value=!0,e.value&&s()}function p(){n.value=!0,s()}function m(){Date.now()<a||e.value&&s(600)}return q(e,e=>{if(!e){clearTimeout(i??void 0),n.value=!0;return}s()}),L(()=>clearTimeout(i??void 0)),{showHUD:n,isOpen:r,scheduleHide:s,pauseHide:c,onVideoTap:f,onMouseMove:p,onMouseLeave:m,openControls:l,closeControls:u,keepOpen:d,suppressMouseLeave:o}}const wt=[`retry`,`togglePlay`,`seek`,`toggleMute`,`setVolume`,`toggleFullscreen`,`markFullscreenPending`,`toggleLoop`,`toggleAdMute`,`setPlaybackRate`,`setCaptionTrack`,`setQuality`,`togglePip`],Tt=`isPlaying.hasEnded.isReady.isAdPlaying.isAdPaused.isAdMuted.adRemainingTime.isLive.isBuffering.current.total.vol.isMuted.isAudible.isLooping.currentPlaybackRate.hasStarted.isError.errorMessage.progress.bufferedDisplay.isFullscreen.isFullscreenPending.supportsPlaybackRate.supportsCaptions.captionTracks.activeCaptionIndex.supportsQuality.qualityLevels.currentQualityIndex.isAutoQuality.supportsPip.isPipActive.isNativeUi`.split(`.`);function Et(e=()=>!0){let t=oe(null),n={};for(let r of wt)n[r]=async(...n)=>{await e(r)&&t.value?.[r]?.(...n)};for(let e of Tt)n[e]=T(()=>t.value?.[e]);return{playerRef:t,forwarded:n}}const Dt=Symbol(`player`),Ot=Symbol(`hud`),kt=Symbol(`action`),At=Symbol(`playlist`);function X(e){let t=N(e);if(t===void 0)throw Error(`[video-player] missing "${String(e.description)}" context — this component must be rendered inside <VideoPlayer>`);return t}function jt(e,t){let n=T(()=>e.isReady&&!e.isError);return{hudVisible:T(()=>n.value&&t.showHUD),popupVisible:T(()=>n.value?e.isFullscreen?t.showHUD:t.isOpen:!1)}}function Mt(e,t=250){let n=V(!1),r=null;return q(e,e=>{r?.disconnect(),r=null,e&&(r=new ResizeObserver(([e])=>{n.value=e.contentRect.width<t}),r.observe(e))},{immediate:!0}),L(()=>r?.disconnect()),n}const Nt={mute:{label:e=>e.isMuted?`Unmute`:`Mute`,active:e=>e.isMuted,onClick:e=>e.toggleMute()},loop:{label:e=>e.isLooping?`Disable loop`:`Loop`,active:e=>e.isLooping,onClick:e=>e.toggleLoop()},autoplay:{label:(e,t)=>t.autoAdvance?`Disable autoplay next`:`Autoplay next`,active:(e,t)=>t.autoAdvance,onClick:(e,t)=>t.toggleAutoAdvance()}};function Pt(e,t,n){let r=T(()=>e?.value??null),i=T(()=>!!r.value&&typeof r.value==`object`),a=T(()=>i.value?r.value:null),o=T(()=>i.value||!r.value?null:Nt[r.value]),s=T(()=>o.value?.label(t,n)??``),c=T(()=>o.value?.active(t,n)??!1);function l(){o.value?.onClick(t,n)}return{currentAction:r,isCustom:i,customAction:a,builtinLabel:s,builtinActive:c,onBuiltinClick:l}}var Z=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};const Ft={},It={viewBox:`0 0 24 24`,fill:`currentColor`};function Lt(e,t){return z(),O(`svg`,It,[...t[0]||=[k(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z`},null,-1)]])}var Rt=Z(Ft,[[`render`,Lt]]);const zt={},Bt={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Vt(e,t){return z(),O(`svg`,Bt,[...t[0]||=[k(`rect`,{x:`2`,y:`5`,width:`20`,height:`14`,rx:`2`},null,-1),k(`path`,{d:`M9.5 10.5a2 2 0 0 0-3.5 1.3v.4a2 2 0 0 0 3.5 1.3`},null,-1),k(`path`,{d:`M17.5 10.5a2 2 0 0 0-3.5 1.3v.4a2 2 0 0 0 3.5 1.3`},null,-1)]])}var Ht=Z(zt,[[`render`,Vt]]);const Ut={},Wt={viewBox:`0 0 24 24`,fill:`currentColor`};function Gt(e,t){return z(),O(`svg`,Wt,[...t[0]||=[k(`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 Kt=Z(Ut,[[`render`,Gt]]);const qt={},Jt={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Yt(e,t){return z(),O(`svg`,Jt,[...t[0]||=[A(`<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 Xt=Z(qt,[[`render`,Yt]]);const Zt={},Qt={viewBox:`0 0 24 24`,fill:`currentColor`};function $t(e,t){return z(),O(`svg`,Qt,[...t[0]||=[k(`path`,{d:`M4 12l1.41 1.41L11 7.83V20h2V7.83l5.59 5.58L20 12l-8-8-8 8z`},null,-1)]])}var en=Z(Zt,[[`render`,$t]]);const tn={},nn={viewBox:`0 0 24 24`,fill:`currentColor`};function rn(e,t){return z(),O(`svg`,nn,[...t[0]||=[k(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var an=Z(tn,[[`render`,rn]]);const on={},sn={viewBox:`0 0 24 24`,fill:`currentColor`};function cn(e,t){return z(),O(`svg`,sn,[...t[0]||=[k(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var ln=Z(on,[[`render`,cn]]);const un={},dn={viewBox:`0 0 24 24`,fill:`currentColor`};function fn(e,t){return z(),O(`svg`,dn,[...t[0]||=[k(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var pn=Z(un,[[`render`,fn]]);const mn={},hn={viewBox:`0 0 24 24`,fill:`currentColor`};function gn(e,t){return z(),O(`svg`,hn,[...t[0]||=[k(`circle`,{cx:`5`,cy:`12`,r:`2`},null,-1),k(`circle`,{cx:`12`,cy:`12`,r:`2`},null,-1),k(`circle`,{cx:`19`,cy:`12`,r:`2`},null,-1)]])}var _n=Z(mn,[[`render`,gn]]);const vn={},yn={viewBox:`0 0 24 24`,fill:`currentColor`};function bn(e,t){return z(),O(`svg`,yn,[...t[0]||=[k(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var xn=Z(vn,[[`render`,bn]]);const Sn={},Cn={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function wn(e,t){return z(),O(`svg`,Cn,[...t[0]||=[k(`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`},null,-1),k(`rect`,{x:`12`,y:`11`,width:`8`,height:`6`,rx:`1`,fill:`currentColor`,stroke:`none`},null,-1)]])}var Tn=Z(Sn,[[`render`,wn]]);const En={},Dn={viewBox:`0 0 24 24`,fill:`currentColor`};function On(e,t){return z(),O(`svg`,Dn,[...t[0]||=[k(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var kn=Z(En,[[`render`,On]]);const An={},jn={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Mn(e,t){return z(),O(`svg`,jn,[...t[0]||=[k(`rect`,{x:`2`,y:`6`,width:`20`,height:`12`,rx:`2`},null,-1),k(`path`,{d:`M7 14v-4M12 14V8M17 14v-2`},null,-1)]])}var Nn=Z(An,[[`render`,Mn]]);const Pn={},Fn={viewBox:`0 0 24 24`,fill:`currentColor`};function In(e,t){return z(),O(`svg`,Fn,[...t[0]||=[k(`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 Ln=Z(Pn,[[`render`,In]]);const Rn={},zn={viewBox:`0 0 24 24`,fill:`currentColor`};function Bn(e,t){return z(),O(`svg`,zn,[...t[0]||=[k(`path`,{d:`M6 18l8.5-6L6 6v12zM16 6v12h2V6h-2z`},null,-1)]])}var Vn=Z(Rn,[[`render`,Bn]]);const Hn={},Un={viewBox:`0 0 24 24`,fill:`currentColor`};function Wn(e,t){return z(),O(`svg`,Un,[...t[0]||=[k(`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 Gn=Z(Hn,[[`render`,Wn]]);const Kn={},qn={viewBox:`0 0 24 24`,fill:`currentColor`};function Jn(e,t){return z(),O(`svg`,qn,[...t[0]||=[k(`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 Yn=Z(Kn,[[`render`,Jn]]);function Q(e,t){return T(()=>e.value?e.value:t.value?document.getElementById(t.value)??null:null)}const Xn=[`aria-label`];var Zn=Z(M({__name:`PlayButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>n.value?.isError?`error`:n.value?.hasEnded?`ended`:n.value?.isPlaying?`playing`:`idle`),i=T(()=>{switch(r.value){case`error`:return`Retry`;case`ended`:return`Replay`;case`playing`:return`Pause`;default:return`Play`}});function a(){let e=n.value;e&&(e.isError?e.retry():e.togglePlay())}return(e,t)=>(z(),O(`button`,{type:`button`,class:`mlv-play-button`,"aria-label":i.value,onClick:a},[U(e.$slots,`default`,{isPlaying:K(n)?.isPlaying??!1,hasEnded:K(n)?.hasEnded??!1,isError:K(n)?.isError??!1},()=>[r.value===`error`||r.value===`ended`?(z(),E(K(Ln),{key:0})):r.value===`playing`?(z(),E(K(xn),{key:1})):(z(),E(K(kn),{key:2}))],!0)],8,Xn))}}),[[`__scopeId`,`data-v-218255bd`]]),Qn=Z(M({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(z(),O(`div`,{class:`spinner`,style:I({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const $n={key:0,class:`mlv-buffering`};var er=Z(M({__name:`Buffering`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>K(n)?.isBuffering?(z(),O(`div`,$n,[U(e.$slots,`default`,{},()=>[j(Qn)],!0)])):D(`v-if`,!0)}}),[[`__scopeId`,`data-v-454fec7f`]]),tr=M({__name:`VolumeIcon`,props:{isAudible:{type:Boolean,required:!0}},setup(e){return(t,n)=>e.isAudible?(z(),E(K(Yn),{key:0})):(z(),E(K(Gn),{key:1}))}});const nr={class:`hud`,"aria-hidden":`true`},rr=[`aria-label`],ir=[`aria-label`,`innerHTML`],ar={key:2,class:`hud__spacer`},or={class:`hud__play-wrap`};var sr=Z(M({__name:`HudButtons`,setup(e){let t=X(Dt),n=X(Ot),{currentAction:r,isCustom:i,customAction:a,builtinLabel:o,builtinActive:s,onBuiltinClick:c}=Pt(N(kt),t,X(At));return(e,l)=>(z(),O(C,null,[D(` tabindex="-1" + aria-hidden: this row's play/mute/custom/show-controls buttons are all redundant outside plain mouse hover - play/mute already have global hotkeys, everything else is duplicated in ControlsPopup, which PlayerOverlay's "Show player controls" skip link reaches directly for keyboard/AT users. `),k(`div`,nr,[!K(n).isOpen&&!K(t).isFullscreen?(z(),O(C,{key:0},[K(r)===`mute`||K(r)===`loop`||K(r)===`autoplay`?(z(),O(`button`,{key:0,class:F([`hud__btn`,{"hud__btn--active":K(s)}]),"aria-label":K(o),tabindex:`-1`,onClick:l[0]||=Y((...e)=>K(c)&&K(c)(...e),[`stop`])},[K(r)===`mute`?(z(),E(tr,{key:0,"is-audible":K(t).isAudible},null,8,[`is-audible`])):K(r)===`loop`?(z(),E(K(pn),{key:1})):(z(),E(K(Vn),{key:2}))],10,rr)):K(i)&&K(a)?(z(),O(`button`,{key:1,class:`hud__btn`,"aria-label":K(a).label,tabindex:`-1`,onClick:l[1]||=Y(e=>K(a).onClick(),[`stop`]),innerHTML:K(a).icon},null,8,ir)):(z(),O(`div`,ar))],64)):D(`v-if`,!0),k(`div`,or,[j(Zn,{player:K(t),class:`ppbtn ppbtn--lg`,tabindex:`-1`},null,8,[`player`]),j(er,{player:K(t),class:`hud__buf-spinner`},null,8,[`player`])]),!K(n).isOpen&&!K(t).isFullscreen?(z(),O(`button`,{key:1,class:`hud__btn`,"aria-label":`Show controls`,tabindex:`-1`,onClick:l[2]||=Y((...e)=>K(n).openControls&&K(n).openControls(...e),[`stop`])},[j(K(Xt))])):D(`v-if`,!0)])],2112))}}),[[`__scopeId`,`data-v-a6d118e7`]]);const cr=new WeakMap;async function lr(e,t){if(!e){t();return}cr.get(e)?.();let n=e.getBoundingClientRect();t(),await ne();let r=e.getBoundingClientRect(),i=n.left-r.left,a=n.top-r.top,o=n.width/r.width,s=n.height/r.height;if(!i&&!a&&o===1&&s===1)return;let c=getComputedStyle(e).position===`static`;c&&(e.style.position=`relative`),e.style.zIndex=`2147483647`,e.style.transition=`none`,e.style.transformOrigin=`top left`,e.style.transform=`translate(${i}px, ${a}px) scale(${o}, ${s})`,e.getBoundingClientRect(),await new Promise(t=>{let n=null,r=()=>{cancelAnimationFrame(i),n&&clearTimeout(n),e.style.transition=``,e.style.transform=``,e.style.transformOrigin=``,e.style.zIndex=``,c&&(e.style.position=``),cr.delete(e),t()};cr.set(e,r);let i=requestAnimationFrame(()=>{e.style.transition=`transform 220ms ease`,e.style.transform=``,n=setTimeout(r,220)})})}const ur=[`aria-label`];var dr=Z(M({__name:`FullscreenButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>(z(),O(`button`,{type:`button`,class:`mlv-fullscreen-button`,"aria-label":K(n)?.isFullscreen?`Exit fullscreen`:`Enter fullscreen`,onClick:t[0]||=e=>K(n)?.toggleFullscreen()},[U(e.$slots,`default`,{isFullscreen:K(n)?.isFullscreen??!1},()=>[K(n)?.isFullscreen?(z(),E(K(ln),{key:0})):(z(),E(K(an),{key:1}))],!0)],8,ur))}}),[[`__scopeId`,`data-v-b93a5017`]]);const fr=[`aria-pressed`];var pr=Z(M({__name:`PipButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>K(n)?.supportsPip?(z(),O(`button`,{key:0,type:`button`,class:F([`mlv-pip-button`,{"mlv-pip-button--active":K(n)?.isPipActive}]),"aria-pressed":K(n)?.isPipActive??!1,"aria-label":`Toggle Picture-in-Picture`,onClick:t[0]||=e=>K(n)?.togglePip()},[U(e.$slots,`default`,{isPipActive:K(n)?.isPipActive??!1},()=>[j(K(Tn))],!0)],10,fr)):D(`v-if`,!0)}}),[[`__scopeId`,`data-v-f654d93e`]]);function mr(e){let n=V(!1),r=V(null),i=!1,a=null,o=!1,s=T(()=>{let t=e.value;return t?.total?t.current/t.total*100:0}),c=T(()=>r.value??s.value),l=T(()=>r.value!==null),u=T(()=>{let t=e.value?.total??0;return c.value/100*t});function d(){a&&clearTimeout(a),a=null}function f(){d(),r.value=null}function p(t){let a=e.value;a?.total&&(n.value||=(i=a.isPlaying,a.isPlaying&&a.togglePlay(),!0),d(),r.value=Number(t.target.value))}function m(s){if(!n.value)return;n.value=!1,o=!0;let c=e.value;if(!c)return;let l=Number(s.target.value);r.value=l,c.seek(l),i&&c.togglePlay(),d(),a=setTimeout(f,t)}function h(s){if(n.value||o)return;o=!1;let c=e.value;if(!c?.total)return;let l=Number(s.target.value);r.value=l,c.seek(l),i&&c.togglePlay(),d(),a=setTimeout(f,t)}return q(()=>e.value?.current,()=>{let t=e.value;if(r.value===null||!t?.total)return;let n=r.value/100*t.total;Math.abs(t.current-n)<1&&f()}),L(f),{scrubbing:l,displayPercent:c,previewSeconds:u,onInput:p,onChange:m,onTouchEnd:h}}const hr={class:`mlv-scrubber-wrap`},gr=[`value`,`aria-valuetext`];var _r=Z(M({inheritAttrs:!1,__name:`Scrubber`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),{scrubbing:r,displayPercent:i,previewSeconds:a,onInput:o,onChange:s,onTouchEnd:c}=mr(n),l=e=>Se(e,!0);return(e,t)=>(z(),O(`div`,hr,[k(`input`,P({type:`range`,min:`0`,max:`100`,step:`0.5`,value:K(i),class:`mlv-scrubber`},e.$attrs,{style:{"--p":`${K(i)}%`,"--b":`${K(n)?.bufferedDisplay??0}%`},"aria-label":`Seek`,"aria-valuetext":`${l(K(a))} of ${l(K(n)?.total??0)}`,onInput:t[0]||=(...e)=>K(o)&&K(o)(...e),onChange:t[1]||=(...e)=>K(s)&&K(s)(...e),onTouchend:t[2]||=(...e)=>K(c)&&K(c)(...e)}),null,16,gr),U(e.$slots,`preview`,{scrubbing:K(r),percent:K(i),previewSeconds:K(a),formatTime:l},()=>[K(r)?(z(),O(`div`,{key:0,class:`mlv-scrubber__preview`,style:I({left:`${K(i)}%`})},W(l(K(a))),5)):D(`v-if`,!0)],!0)]))}}),[[`__scopeId`,`data-v-043f1bc8`]]);const vr={class:`mlv-time-display__time`},yr={class:`mlv-time-display__total`};var br=Z(M({__name:`TimeDisplay`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>(z(),O(`span`,{class:F([`mlv-time-display`,{"mlv-time-display--live":K(n)?.isLive}])},[U(e.$slots,`default`,{isLive:K(n)?.isLive??!1,current:K(n)?.current??0,total:K(n)?.total??0,formatTime:K(Se)},()=>[K(n)?.isLive?(z(),O(C,{key:0},[t[0]||=k(`span`,{class:`mlv-time-display__dot`},null,-1),t[1]||=te(`Live `,-1)],64)):(z(),O(C,{key:1},[k(`span`,vr,W(K(Se)(K(n)?.current??0)),1),k(`span`,yr,`/ `+W(K(Se)(K(n)?.total??0)),1)],64))],!0)],2))}}),[[`__scopeId`,`data-v-0285c811`]]);const xr={class:`mlv-volume-wrap`},Sr=[`value`],Cr={class:`mlv-volume-pct`};var wr=Z(M({inheritAttrs:!1,__name:`VolumeSlider`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>{let e=n.value;return e?e.isMuted?0:Math.round(e.vol*100):0});function i(e){n.value?.setVolume(Number(e.target.value)/100)}return(e,t)=>(z(),O(`div`,xr,[k(`input`,P({type:`range`,min:`0`,max:`100`,step:`1`,value:r.value,class:`mlv-volume-slider`},e.$attrs,{style:{"--v":`${r.value}%`},"aria-label":`Volume`,onInput:i}),null,16,Sr),U(e.$slots,`default`,{percent:r.value},()=>[k(`span`,Cr,W(r.value)+`%`,1)],!0)]))}}),[[`__scopeId`,`data-v-fbb2c86c`]]);const Tr={class:`controls__vol-header`},Er=[`aria-label`],Dr={class:`controls__vol-body`},Or={class:`controls__vol-pct`};var kr=Z(M({__name:`VolumePanel`,emits:[`back`],setup(e){let t=X(Dt),n=X(Ot);return(e,r)=>(z(),O(C,null,[k(`div`,Tr,[k(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:r[0]||=t=>e.$emit(`back`)},[j(K(Rt))]),r[6]||=k(`span`,{class:`controls__vol-label`},`Volume`,-1),k(`button`,{class:`controls__btn`,"aria-label":K(t).isMuted?`Unmute`:`Mute`,onClick:r[1]||=e=>K(t).toggleMute()},[j(tr,{"is-audible":K(t).isAudible},null,8,[`is-audible`])],8,Er)]),k(`div`,Dr,[j(wr,{player:K(t),class:`controls__vol-slider`,onMousedown:r[2]||=e=>K(n).pauseHide(),onMouseup:r[3]||=e=>K(n).scheduleHide(),onTouchstartPassive:r[4]||=e=>K(n).pauseHide(),onTouchend:r[5]||=e=>K(n).scheduleHide()},{default:J(({percent:e})=>[k(`span`,Or,W(e)+`%`,1)]),_:1},8,[`player`])])],64))}}),[[`__scopeId`,`data-v-10b0ae67`]]);function Ar(e){function t(){let t=_.indexOf(e.currentPlaybackRate);e.setPlaybackRate(_[(t+1)%_.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}function jr(e){function t(){let t=e.captionTracks;if(!t.length)return;let n=t[t.findIndex(t=>t.index===e.activeCaptionIndex)+1];e.setCaptionTrack(n?n.index:null)}function n(){return e.captionTracks.find(t=>t.index===e.activeCaptionIndex)?.label??`Off`}return{cycleCaptionTrack:t,currentCaptionLabel:n}}function Mr(e){function t(){let t=e.qualityLevels;if(!t.length)return;if(e.isAutoQuality){e.setQuality(t[t.length-1].index);return}let n=t.findIndex(t=>t.index===e.currentQualityIndex);e.setQuality(n<=0?null:t[n-1].index)}function n(){return e.isAutoQuality?`Auto`:e.qualityLevels.find(t=>t.index===e.currentQualityIndex)?.label??`Auto`}return{cycleQuality:t,currentQualityLabel:n}}const Nr=[`aria-label`],Pr={key:0,class:`controls__more-row-label`},Fr=[`innerHTML`],Ir={key:1},Lr={key:2,class:`controls__more-value`};var $=Z(M({__name:`MoreMenuRow`,props:{label:{type:String,required:!0},ariaLabel:{type:String,required:!1,default:``},icon:{type:null,required:!1},iconHtml:{type:String,required:!1},active:{type:Boolean,required:!1,default:!1},value:{type:String,required:!1}},emits:[`click`],setup(e){return(t,n)=>(z(),O(`button`,{class:F([`controls__more-row`,{"controls__more-row--active":e.active}]),"aria-label":e.ariaLabel||e.label,onClick:n[0]||=e=>t.$emit(`click`)},[e.icon||e.iconHtml?(z(),O(`span`,Pr,[e.icon?(z(),E(ae(e.icon),{key:0,class:`controls__more-row-icon`})):(z(),O(`span`,{key:1,class:`controls__more-row-icon`,innerHTML:e.iconHtml},null,8,Fr)),te(` `+W(e.label),1)])):(z(),O(`span`,Ir,W(e.label),1)),e.value===void 0?D(`v-if`,!0):(z(),O(`span`,Lr,W(e.value),1))],10,Nr))}}),[[`__scopeId`,`data-v-47ca5bfc`]]);const Rr={class:`controls__more-header`};var zr=Z(M({__name:`MoreMenu`,props:{isCustom:{type:Boolean,required:!0},customAction:{type:[Object,null],required:!0},compact:{type:Boolean,required:!0}},emits:[`back`],setup(e){let t=X(Dt),n=X(Ot),r=X(At),{cycleRate:i,fmtRate:a}=Ar(t),{cycleCaptionTrack:o,currentCaptionLabel:s}=jr(t),{cycleQuality:c,currentQualityLabel:l}=Mr(t);return(u,d)=>(z(),O(C,null,[k(`div`,Rr,[k(`button`,{class:`controls__btn`,"aria-label":`Back`,onClick:d[0]||=e=>u.$emit(`back`)},[j(K(Rt))]),d[8]||=k(`span`,{class:`controls__more-label`},`More`,-1)]),k(`div`,{class:`controls__more-body`,onTouchstartPassive:d[7]||=e=>K(n).keepOpen()},[K(t).supportsPlaybackRate?(z(),E($,{key:0,label:`Playback speed`,value:K(a)(K(t).currentPlaybackRate),onClick:K(i)},null,8,[`value`,`onClick`])):D(`v-if`,!0),j($,{label:`Loop`,"aria-label":`Toggle loop`,icon:K(pn),active:K(t).isLooping,value:K(t).isLooping?`On`:`Off`,onClick:d[1]||=e=>K(t).toggleLoop()},null,8,[`icon`,`active`,`value`]),K(t).supportsCaptions?(z(),E($,{key:1,label:`Captions`,icon:K(Ht),active:K(t).activeCaptionIndex!==null,value:K(s)(),onClick:K(o)},null,8,[`icon`,`active`,`value`,`onClick`])):D(`v-if`,!0),K(t).supportsQuality?(z(),E($,{key:2,label:`Quality`,icon:K(Nn),active:!K(t).isAutoQuality,value:K(l)(),onClick:K(c)},null,8,[`icon`,`active`,`value`,`onClick`])):D(`v-if`,!0),K(r).hasPlaylist?(z(),E($,{key:3,label:`Autoplay next`,"aria-label":`Toggle autoplay next`,icon:K(Vn),active:K(r).autoAdvance,value:K(r).autoAdvance?`On`:`Off`,onClick:d[2]||=e=>K(r).toggleAutoAdvance()},null,8,[`icon`,`active`,`value`])):D(`v-if`,!0),e.compact&&K(t).supportsPip?(z(),E($,{key:4,label:`Picture-in-picture`,"aria-label":`Toggle picture-in-picture`,icon:K(Tn),active:K(t).isPipActive,onClick:d[3]||=e=>K(t).togglePip()},null,8,[`icon`,`active`])):D(`v-if`,!0),e.compact&&K(r).hasNext?(z(),E($,{key:5,label:`Play next`,"aria-label":`Play next`,icon:K(Vn),onClick:d[4]||=e=>K(r).playNext()},null,8,[`icon`])):D(`v-if`,!0),e.compact?(z(),E($,{key:6,label:`Mute`,"aria-label":`Toggle mute`,icon:K(t).isAudible?K(Yn):K(Gn),active:!K(t).isAudible,onClick:d[5]||=e=>K(t).toggleMute()},null,8,[`icon`,`active`])):D(`v-if`,!0),e.isCustom&&e.customAction?(z(),E($,{key:7,label:e.customAction.label,"icon-html":e.customAction.icon,onClick:d[6]||=t=>e.customAction.onClick()},null,8,[`label`,`icon-html`])):D(`v-if`,!0)],32)],64))}}),[[`__scopeId`,`data-v-e89a8208`]]);const Br={class:`controls__row`},Vr={class:`controls__play-wrap`},Hr=[`aria-expanded`],Ur=[`aria-expanded`],Wr={class:`controls__fs-wrap`};var Gr=Z(M({__name:`ControlsPopup`,setup(e){let t=X(Dt),n=X(Ot),r=X(At),{isCustom:i,customAction:a}=Pt(N(kt),t,r),o=V(!1),s=V(!1),c=V(null),l=V(null),u=Mt(c),d=T(()=>t.isLooping||t.currentPlaybackRate!==1||r.autoAdvance);function f(e){return!c.value||c.value.contains(e)?!1:(n.closeControls(),!0)}function p(e){f(e.target)}function m(e){f(e.target)&&e.preventDefault()}R(()=>{t.fire(`controlsopen`,{element:c.value}),document.addEventListener(`click`,p,!0),document.addEventListener(`touchend`,m,!0)}),L(()=>{o.value=!1,s.value=!1,t.fire(`controlsclose`,{element:c.value}),document.removeEventListener(`click`,p,!0),document.removeEventListener(`touchend`,m,!0)});function h(e){n.suppressMouseLeave();let t=c.value,r=l.value;if(!t||!r){e();return}r.style.opacity=`0`,lr(t,e).then(()=>{r.style.transition=`opacity 130ms ease`,r.style.opacity=``,setTimeout(()=>{r.style.transition=``},130)})}function g(){if(v()){t.toggleMute();return}h(()=>{o.value=!0})}function _(){h(()=>{s.value=!0})}return(e,f)=>(z(),O(`div`,{ref_key:`popupEl`,ref:c,class:F([`controls`,{"controls--fs":K(t).isFullscreen,"controls--compact":K(u)}]),onMousemove:f[8]||=Y((...e)=>K(n).keepOpen&&K(n).keepOpen(...e),[`stop`])},[k(`div`,{class:`controls__inner`,ref_key:`contentEl`,ref:l},[o.value?(z(),E(kr,{key:0,onBack:f[0]||=e=>h(()=>o.value=!1)})):s.value?(z(),E(zr,{key:1,"is-custom":K(i),"custom-action":K(a),compact:K(u),onBack:f[1]||=e=>h(()=>s.value=!1)},null,8,[`is-custom`,`custom-action`,`compact`])):(z(),O(C,{key:2},[K(t).isLive?D(`v-if`,!0):(z(),E(_r,{key:0,player:K(t),class:`controls__seek`,onMousedown:f[2]||=e=>K(n).pauseHide(),onMouseup:f[3]||=e=>K(n).scheduleHide(),onTouchstartPassive:f[4]||=e=>K(n).pauseHide(),onTouchend:f[5]||=e=>K(n).scheduleHide()},null,8,[`player`])),k(`div`,Br,[k(`div`,Vr,[j(er,{player:K(t)},null,8,[`player`]),K(t).isBuffering?D(`v-if`,!0):(z(),E(Zn,{key:0,player:K(t),class:`ppbtn ppbtn--sm`},null,8,[`player`]))]),j(br,{player:K(t),class:`controls__time-display`},null,8,[`player`]),K(r).hasNext?(z(),O(`button`,{key:0,class:`controls__btn controls__btn--next`,"aria-label":`Play next`,onClick:f[6]||=e=>K(r).playNext()},[j(K(Vn))])):D(`v-if`,!0),k(`button`,{class:`controls__btn controls__btn--volume`,"aria-label":`Volume`,"aria-haspopup":`true`,"aria-expanded":o.value,onClick:g},[j(tr,{"is-audible":K(t).isAudible},null,8,[`is-audible`])],8,Hr),k(`button`,{class:F([`controls__btn controls__btn--more`,{"controls__btn--active":d.value}]),"aria-label":`More`,"aria-haspopup":`true`,"aria-expanded":s.value,onClick:_},[j(K(_n))],10,Ur),j(pr,{player:K(t),class:`controls__btn controls__btn--pip`},null,8,[`player`]),k(`div`,Wr,[K(t).isFullscreenPending?(z(),E(Qn,{key:0})):(z(),E(dr,{key:1,player:K(t),class:`controls__btn`},null,8,[`player`]))])])],64))],512),k(`button`,{type:`button`,class:`controls__close`,"aria-label":`Close player controls`,onClick:f[7]||=e=>K(n).closeControls(!0)},`Close player controls`)],34))}}),[[`__scopeId`,`data-v-5712aad4`]]);const Kr={key:0,class:`overlay__spinner`},qr={key:0,class:`overlay__error`},Jr=[`inert`];var Yr=Z(M({__name:`PlayerOverlay`,setup(e){let t=X(Dt),n=X(Ot),{hudVisible:r,popupVisible:i}=jt(t,n);return(e,a)=>(z(),O(C,null,[j(w,{name:`fade`},{default:J(()=>[!K(t).isReady&&!K(t).isError?(z(),O(`div`,Kr,[j(Qn,{size:40,"border-width":3})])):D(`v-if`,!0)]),_:1}),j(w,{name:`fade`},{default:J(()=>[K(t).isError?(z(),O(`div`,qr,[k(`p`,null,W(K(t).errorMessage||`This video could not be played.`),1),k(`button`,{class:`overlay__retry`,onClick:a[0]||=Y((...e)=>K(t).retry&&K(t).retry(...e),[`stop`])},`Retry`)])):D(`v-if`,!0)]),_:1}),k(`button`,{type:`button`,class:`overlay__reveal`,"aria-label":`Show player controls`,onClick:a[1]||=e=>K(n).openControls()},`Show player controls`),k(`div`,{class:F([`overlay__hud`,{"overlay__hud--visible":K(r)}]),inert:!K(r)},[j(sr)],10,Jr),j(w,{name:`popup`},{default:J(()=>[K(i)?(z(),O(`div`,{key:0,class:F([`overlay__popup`,{"overlay__popup--fs":K(t).isFullscreen}])},[j(Gr)],2)):D(`v-if`,!0)]),_:1})],64))}}),[[`__scopeId`,`data-v-2fba5782`]]);const Xr={class:`ad-overlay`},Zr={class:`ad-overlay__bar`},Qr={class:`ad-overlay__badge`},$r={key:0,class:`ad-overlay__countdown`},ei=[`aria-label`],ti=[`aria-label`];var ni=Z(M({__name:`AdOverlay`,setup(e){let t=X(Dt),n=T(()=>t.adRemainingTime>0?t.fmt(t.adRemainingTime):``);return(e,r)=>(z(),O(`div`,Xr,[k(`div`,Zr,[k(`div`,Qr,[r[2]||=k(`span`,null,`Ad`,-1),n.value?(z(),O(`span`,$r,W(n.value),1)):D(`v-if`,!0)]),k(`button`,{class:`ad-overlay__btn`,"aria-label":K(t).isAdPaused?`Resume ad`:`Pause ad`,onClick:r[0]||=e=>K(t).togglePlay()},[K(t).isAdPaused?(z(),E(K(kn),{key:0})):(z(),E(K(xn),{key:1}))],8,ei),k(`button`,{class:`ad-overlay__btn`,"aria-label":K(t).isAdMuted?`Unmute ad`:`Mute ad`,onClick:r[1]||=e=>K(t).toggleAdMute()},[K(t).isAdMuted?(z(),E(K(Gn),{key:0})):(z(),E(K(Yn),{key:1}))],8,ti)])]))}}),[[`__scopeId`,`data-v-23efcc8b`]]);const ri=V(0),ii=T(()=>ri.value>0),ai=V(!1);function oi(){ri.value++}function si(){ri.value--}function ci(e,t,n){let r=V(!1),i=T(()=>r.value&&ai.value),a=null;function o(){if(a?.(),a=null,!n.value||!e.value){r.value=!1;return}a=Ve(e.value,e=>{e.intersectionRatio<.1?t.value&&(r.value=!0):r.value=!1})}return R(o),q(n,o),q(e,o),L(()=>a?.()),{isPinned:r,isTucked:i,unpin:()=>r.value=!1}}function li(e,t,n){let r=V(null),i=V(null);q(n,n=>{let i=e.value?.offsetWidth??null;r.value=n&&t.value&&i?{height:t.value.offsetHeight,wrapperWidth:i}:null});let a=T(()=>{if(!r.value)return{};let{height:e,wrapperWidth:t}=r.value,n=i.value?i.value/t:1;return{height:`${Math.round(e*n)}px`}}),o=null;return q(e,e=>{o?.disconnect(),o=null,e&&(o=new ResizeObserver(([e])=>i.value=e.contentRect.width),o.observe(e))},{immediate:!0}),L(()=>o?.disconnect()),{wrapperStyle:a,clear:()=>r.value=null}}function ui(e){e?.scrollIntoView({behavior:`smooth`,block:`center`})}var di=Z(M({__name:`PinnablePlayerShell`,props:{isPlaying:{type:Boolean,required:!0}},setup(e){let t=e,n=V(null),r=V(null),{isPinned:i,unpin:a}=ci(n,G(t,`isPlaying`),V(!0)),o=V(i.value);q(i,e=>{lr(r.value,()=>{o.value=e})});let s=T(()=>o.value&&ai.value),{wrapperStyle:c}=li(n,r,o);function l(){ui(n.value)}function u(e){r.value=e}return(e,t)=>(z(),O(`div`,{ref_key:`wrapperEl`,ref:n,class:`player-wrapper`,style:I(K(c))},[U(e.$slots,`default`,{isPinned:o.value,isTucked:s.value,setBoxEl:u,unpin:K(a),scrollToPlayer:l},void 0,!0)],4))}}),[[`__scopeId`,`data-v-a2f8a547`]]);const fi={class:`player-wrapper`};var pi=Z(M({__name:`PlainPlayerShell`,props:{isPlaying:{type:Boolean,required:!0}},setup(e){function t(){}return(e,n)=>(z(),O(`div`,fi,[U(e.$slots,`default`,{isPinned:!1,isTucked:!1,setBoxEl:t,unpin:t,scrollToPlayer:t},void 0,!0)]))}}),[[`__scopeId`,`data-v-9188c23a`]]),mi=Z(M({__name:`PinnedControls`,emits:[`scroll-to`,`dismiss`],setup(e){return(e,t)=>(z(),O(C,null,[k(`button`,{class:`pinned-controls__scroll-to`,"aria-label":`Scroll to player`,onClick:t[0]||=Y(t=>e.$emit(`scroll-to`),[`stop`])},[j(K(en))]),k(`button`,{class:`pinned-controls__dismiss`,"aria-label":`Close`,onClick:t[1]||=Y(t=>e.$emit(`dismiss`),[`stop`])},[j(K(Kt))])],64))}}),[[`__scopeId`,`data-v-690b416a`]]);function hi(e){let[t,n]=e.split(`:`).map(Number);return{isPortrait:n>t,cssRatio:`${t}/${n}`}}const gi=[`aria-label`,`tabindex`],_i={"data-mlv-player":``},vi=[`poster`],yi=[`src`,`kind`,`srclang`,`label`,`default`],bi={key:3,class:`player__native-play`};var xi=Z(M({__name:`VideoPlayer`,props:{src:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:u},adTagUrl:{type:String,required:!1,default:``},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1,default:()=>[]},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1,default:!1},disableKeyboardShortcuts:{type:Boolean,required:!1,default:!1},controls:{type:Boolean,required:!1,default:!0},playInView:{type:Boolean,required:!1,default:!1},pin:{type:String,required:!1},hasPlaylist:{type:Boolean,required:!1,default:!1},hasNext:{type:Boolean,required:!1,default:!1},hasPrevious:{type:Boolean,required:!1,default:!1},autoAdvance:{type:Boolean,required:!1,default:!1}},emits:[`state-change`,`play-next`,`play-previous`,`toggle-auto-advance`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=V(null),o=B(bt(a,r,i)),s=B(Ct(G(o,`isPlaying`),G(o,`isFullscreen`))),{onKeydown:c}=St(o,s);function l(e){r.disableKeyboardShortcuts||c(e)}let u=V(null);q(()=>o.isFullscreen,e=>{e&&!r.disableKeyboardShortcuts&&ne(()=>u.value?.focus())});function d(e){if(r.disableKeyboardShortcuts)return;let t=e.relatedTarget;t&&u.value?.contains(t)||requestAnimationFrame(()=>{document.activeElement===document.body&&u.value?.focus()})}ie(Dt,o),ie(Ot,s),ie(kt,G(r,`action`)),ie(At,B({hasPlaylist:T(()=>r.hasPlaylist),hasNext:T(()=>r.hasNext),hasPrevious:T(()=>r.hasPrevious),autoAdvance:T(()=>r.autoAdvance),playNext:()=>i(`play-next`),playPrevious:()=>i(`play-previous`),toggleAutoAdvance:()=>i(`toggle-auto-advance`)}));let f=T(()=>hi(r.aspectRatio)),p=T(()=>f.value.isPortrait),m=T(()=>f.value.cssRatio),h=T(()=>!r.poster&&!o.isReady),g=T(()=>r.pin?di:pi);function _(e){o.isPlaying&&o.togglePlay(),e()}function v(){s.onVideoTap(),o.fire(`tap`)}let{playerRef:y,forwarded:b}=Et();return y.value=o,t(b),(t,n)=>(z(),E(ae(g.value),{"is-playing":o.isPlaying},{default:J(({isPinned:t,isTucked:i,setBoxEl:c,unpin:f,scrollToPlayer:g})=>[k(`div`,{ref:c,class:F([`player`,{"player--pinned":t,"player--tucked":i,[`player--pin-${e.pin}`]:t}])},[t?(z(),E(mi,{key:0,onScrollTo:g,onDismiss:e=>_(f)},null,8,[`onScrollTo`,`onDismiss`])):D(`v-if`,!0),k(`div`,{ref_key:`shellEl`,ref:u,class:F([`player__shell`,{"player__shell--portrait":p.value}]),style:I({aspectRatio:m.value}),role:`group`,"aria-label":e.title||`Video player`,tabindex:e.disableKeyboardShortcuts?void 0:0,onMousemove:n[0]||=e=>s.onMouseMove(),onContextmenuCapture:n[1]||=Y(()=>{},[`prevent`]),onMouseleave:n[2]||=e=>s.onMouseLeave(),onKeydown:l,onFocusout:d},[k(`div`,_i,[k(`video`,{ref_key:`videoEl`,ref:a,class:F([`mlv-video`,{"mlv-video--hidden":h.value}]),poster:r.poster,playsinline:``},[(z(!0),O(C,null,H(r.tracks,(e,t)=>(z(),O(`track`,{key:`${e.src}-${t}`,src:e.src,kind:e.kind??`captions`,srclang:e.srclang,label:e.label,default:e.default},null,8,yi))),128))],10,vi),!r.disableTapCapture&&!o.isNativeUi&&o.hasStarted&&!o.isAdPlaying?(z(),O(`div`,{key:0,class:`overlay__tap-capture`,onClick:v,onTouchend:Y(v,[`prevent`,`stop`])},null,32)):D(`v-if`,!0),o.isAdPlaying&&!o.isNativeUi?(z(),E(ni,{key:1})):D(`v-if`,!0),r.controls&&!o.isNativeUi?(z(),E(Yr,{key:2})):D(`v-if`,!0),r.controls&&o.isNativeUi&&!o.hasStarted?(z(),O(`div`,bi,[j(Zn,{player:o,class:`ppbtn ppbtn--lg`},null,8,[`player`])])):D(`v-if`,!0)])],46,gi)],2)]),_:1},8,[`is-playing`]))}}),[[`__scopeId`,`data-v-4ab3cf75`]]);function Si(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function Ci(e,t){let n=e=>t(e.detail);R(()=>window.addEventListener(e,n)),L(()=>window.removeEventListener(e,n))}function wi(e,t){let n=T(()=>!e.value||!t.value?-1:e.value.findIndex(e=>e.src===t.value?.src)),r=T(()=>n.value===-1||!e.value?null:e.value[n.value+1]??null),i=T(()=>n.value<=0||!e.value?null:e.value[n.value-1]??null);return{hasNext:T(()=>r.value!==null),hasPrevious:T(()=>i.value!==null),nextEntry:r,previousEntry:i}}function Ti(){return localStorage.getItem(r)===`true`}function Ei(e){localStorage.setItem(r,String(e))}const Di=[`src`],Oi={class:`stage__idle-body`},ki={class:`stage__idle-btn`},Ai={class:`stage__idle-title`},ji={key:1,class:`stage__idle-empty`};var Mi=Z(M({__name:`VideoStage`,props:{pin:{type:String,required:!1,default:`bottom-right`},playlist:{type:Array,required:!1}},emits:[`state-change`],setup(t,{expose:n,emit:r}){let i=t,a=r,o=V(Ti());q(o,Ei);let s=T(()=>!!i.playlist?.length),c=V(null),l=V(!1),u=V(!1);function p(e){a(`state-change`,{type:e,currentTime:0,duration:0,src:c.value?.src??``})}q(l,e=>p(e?`stageopen`:`stageclose`));let{playerRef:m,forwarded:h}=Et(()=>l.value),g=V(null),_=V(null),v=V(!1),{hasNext:y,hasPrevious:b,nextEntry:ee,previousEntry:x}=wi(G(i,`playlist`),c),S=T(()=>v.value&&!!c.value&&l.value),w=T(()=>S.value&&ai.value),A=T(()=>hi(c.value?.aspectRatio||`16:9`).cssRatio),{wrapperStyle:te,clear:M}=li(g,_,S),N=null;function ne(){N?.disconnect(),g.value&&(N=new IntersectionObserver(([e])=>{let t=!e.isIntersecting;if(!c.value||!l.value){v.value=t;return}lr(_.value,()=>{v.value=t})},{threshold:.98}),N.observe(g.value))}q(g,ne);function re(){c.value&&(c.value={...c.value,autoplay:!0,muted:lt(c.value.muted)},l.value=!0)}function ie(){re()}function B(){ui(g.value)}function H(){c.value=null,l.value=!1,u.value=!1,M(),U()}function U(){Si(e,{currentSrc:c.value?.src??null,isPlaying:u.value})}function ae(e){if(c.value?.src===e.src&&l.value){e.fromGesture&&m.value?.togglePlay();return}c.value=e,l.value=!1,u.value=!1,U(),l.value=!0}function oe(e){if(c.value&&e.src===c.value.src){if(!l.value){re();return}m.value?.togglePlay()}}function J(e,t){e&&ae({...e,fromGesture:t,autoplay:!0,muted:e.muted??m.value?.isMuted??lt(void 0,t),volume:e.volume??m.value?.vol})}function Y(e=!0){J(ee.value,e)}function se(e=!0){J(x.value,e)}function ce(e){e.type===`play`&&(u.value=!0),(e.type===`pause`||e.type===`ended`)&&(u.value=!1),e.type===`ended`&&o.value&&Y(!1),U(),a(`state-change`,e)}return Ci(f,ae),Ci(d,oe),R(oi),L(()=>{si(),N?.disconnect()}),n({playNext:Y,playPrevious:se,hasNext:y,hasPrevious:b,...h}),(e,n)=>(z(),O(`div`,{ref_key:`wrapperEl`,ref:g,class:`stage-wrapper`,style:I(K(te))},[k(`div`,{ref_key:`stageEl`,ref:_,class:F([`stage`,{"stage--minified":S.value,"stage--tucked":w.value,[`stage--pin-${t.pin}`]:S.value}])},[S.value?(z(),E(mi,{key:0,onScrollTo:B,onDismiss:H})):D(`v-if`,!0),c.value&&l.value?(z(),E(xi,P({ref_key:`playerRef`,ref:m,key:c.value.src},c.value,{"has-playlist":s.value,"has-next":K(y),"has-previous":K(b),"auto-advance":o.value,onStateChange:ce,onPlayNext:Y,onPlayPrevious:se,onToggleAutoAdvance:n[0]||=e=>o.value=!o.value}),null,16,[`has-playlist`,`has-next`,`has-previous`,`auto-advance`])):(z(),O(`div`,{key:2,class:`stage__idle`,style:I({aspectRatio:A.value}),onClick:ie},[c.value?.poster?(z(),O(`img`,{key:0,src:c.value.poster,class:`stage__idle-poster`},null,8,Di)):D(`v-if`,!0),n[1]||=k(`div`,{class:`stage__idle-scrim`},null,-1),k(`div`,Oi,[c.value?(z(),O(C,{key:0},[k(`div`,ki,[j(K(kn))]),k(`p`,Ai,W(c.value.title),1)],64)):(z(),O(`p`,ji,`Select a video to play`))])],4))],2)],4))}}),[[`__scopeId`,`data-v-fb8c86cf`]]),Ni=M({__name:`PlayPauseIcon`,props:{isPlaying:{type:Boolean,required:!0},hasEnded:{type:Boolean,required:!1,default:!1}},setup(e){return(t,n)=>e.isPlaying?(z(),E(K(xn),{key:0})):e.hasEnded?(z(),E(K(Ln),{key:1})):(z(),E(K(kn),{key:2}))}});const Pi={class:`placeholder`},Fi=[`src`,`alt`],Ii={class:`placeholder__btn-wrap`},Li=[`aria-label`],Ri={key:1,class:`placeholder__footer`},zi={class:`placeholder__title`};var Bi=Z(M({__name:`VideoPlaceholder`,props:{fromGesture:{type:Boolean,required:!1},src:{type:String,required:!0},title:{type:String,required:!1,default:``},poster:{type:String,required:!1,default:``},aspectRatio:{type:String,required:!1,default:u},adTagUrl:{type:String,required:!1,default:``},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1},autoplay:{type:Boolean,required:!1,default:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1,default:()=>({})},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1},disableKeyboardShortcuts:{type:Boolean,required:!1},controls:{type:Boolean,required:!1},playInView:{type:Boolean,required:!1},pin:{type:String,required:!1}},emits:[`enter-view`],setup(t,{emit:n}){let r=t,i=n,a=T(()=>hi(r.aspectRatio)),o=T(()=>a.value.isPortrait),s=T(()=>a.value.cssRatio),c=V(null),l=null,u=V(!1),d=V(!1),p=T(()=>u.value&&d.value?`Pause`:`Play`);Ci(e,e=>{u.value=e.currentSrc===r.src,d.value=u.value&&e.isPlaying});function m(e,t,n){Si(f,{...r,fromGesture:e,...t!==void 0&&{autoplay:t},...n!==void 0&&{muted:n}})}function h(){m(!0,!0,lt(r.muted))}return R(()=>{r.autoStage&&m(!1),r.playInView&&c.value&&(l=We(c.value,()=>i(`enter-view`)))}),L(()=>l?.()),(e,n)=>(z(),O(`div`,Pi,[k(`div`,{ref_key:`shellEl`,ref:c,class:F([`placeholder__shell`,{"placeholder__shell--portrait":o.value,"placeholder__shell--active":u.value}]),style:I({aspectRatio:s.value}),onClick:h},[t.poster?(z(),O(`img`,{key:0,class:`placeholder__poster`,src:t.poster,alt:t.title},null,8,Fi)):D(`v-if`,!0),n[0]||=k(`div`,{class:`placeholder__scrim`},null,-1),k(`div`,Ii,[k(`button`,{type:`button`,class:`ppbtn ppbtn--lg`,"aria-label":p.value,onClick:Y(h,[`stop`])},[j(Ni,{"is-playing":u.value&&d.value},null,8,[`is-playing`])],8,Li)]),t.title?(z(),O(`div`,Ri,[k(`p`,zi,W(t.title),1)])):D(`v-if`,!0)],6)]))}}),[[`__scopeId`,`data-v-dbcb4f82`]]),Vi=M({__name:`VideoCard`,props:{fromGesture:{type:Boolean,required:!1},src:{type:String,required:!0},title:{type:String,required:!1},poster:{type:String,required:!1},aspectRatio:{type:String,required:!1},adTagUrl:{type:String,required:!1},adMacroParams:{type:Object,required:!1},headerBidding:{type:Object,required:!1},tracks:{type:Array,required:!1},autoplay:{type:Boolean,required:!1},muted:{type:Boolean,required:!1,default:void 0},volume:{type:Number,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,String],required:!1},action:{type:[String,Object,null],required:!1,default:null},disableTapCapture:{type:Boolean,required:!1},disableKeyboardShortcuts:{type:Boolean,required:!1},controls:{type:Boolean,required:!1,default:void 0},playInView:{type:Boolean,required:!1},pin:{type:String,required:!1}},emits:[`state-change`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=V(!1),o=V(!1);function s(){o.value=!0,a.value=!0}async function c(){a.value||(a.value=!0,await ne())}let{playerRef:l,forwarded:u}=Et(async e=>ii.value?(e===`togglePlay`&&Si(f,{...r,fromGesture:!0,autoplay:!0,muted:lt(r.muted)}),!1):(await c(),!0));return t(u),(e,t)=>K(ii)?(z(),E(Bi,re(P({key:0},r)),null,16)):(z(),O(C,{key:1},[r.lazy&&!a.value&&!r.autoplay?(z(),E(Bi,P({key:0},r,{onClickCapture:s,onEnterView:t[0]||=e=>a.value=!0}),null,16)):(z(),E(xi,P({key:1,ref_key:`playerRef`,ref:l},r,{autoplay:a.value||r.autoplay,muted:K(lt)(r.muted,o.value),onStateChange:t[1]||=e=>i(`state-change`,e)}),null,16,[`autoplay`,`muted`]))],64))}}),Hi=Z(M({__name:`HideMarker`,setup(e){let t=V(null),n=null;return R(()=>{t.value&&(n=new IntersectionObserver(([e])=>{ai.value=e.isIntersecting}),n.observe(t.value))}),L(()=>{n?.disconnect(),ai.value=!1}),(e,n)=>(z(),O(`div`,{ref_key:`el`,ref:t,class:`mlv-hide-marker`},null,512))}}),[[`__scopeId`,`data-v-bacb702a`]]);const Ui=[`aria-label`];var Wi=Z(M({__name:`MuteButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>(z(),O(`button`,{type:`button`,class:`mlv-mute-button`,"aria-label":K(n)?.isMuted?`Unmute`:`Mute`,onClick:t[0]||=e=>K(n)?.toggleMute()},[U(e.$slots,`default`,{isMuted:K(n)?.isMuted??!1},()=>[j(tr,{"is-audible":K(n)?.isAudible??!1},null,8,[`is-audible`])],!0)],8,Ui))}}),[[`__scopeId`,`data-v-1940b598`]]);const Gi=[`aria-pressed`];var Ki=Z(M({__name:`LoopButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`));return(e,t)=>(z(),O(`button`,{type:`button`,class:F([`mlv-loop-button`,{"mlv-loop-button--active":K(n)?.isLooping}]),"aria-pressed":K(n)?.isLooping??!1,"aria-label":`Toggle loop`,onClick:t[0]||=e=>K(n)?.toggleLoop()},[U(e.$slots,`default`,{isLooping:K(n)?.isLooping??!1},()=>[j(K(pn))],!0)],10,Gi))}}),[[`__scopeId`,`data-v-e32eda25`]]);const qi=[`aria-label`];var Ji=Z(M({__name:`CaptionsButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>n.value?jr(n.value):null),i=T(()=>r.value?.currentCaptionLabel()??`Off`);function a(){r.value?.cycleCaptionTrack()}return(e,t)=>K(n)?.supportsCaptions?(z(),O(`button`,{key:0,type:`button`,class:F([`mlv-captions-button`,{"mlv-captions-button--active":K(n)?.activeCaptionIndex!==null}]),"aria-label":`Captions: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,tracks:K(n)?.captionTracks??[],activeIndex:K(n)?.activeCaptionIndex??null},()=>[j(K(Ht))],!0)],10,qi)):D(`v-if`,!0)}}),[[`__scopeId`,`data-v-2572c4f2`]]);const Yi=[`aria-label`];var Xi=Z(M({__name:`QualityButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>n.value?Mr(n.value):null),i=T(()=>r.value?.currentQualityLabel()??`Auto`);function a(){r.value?.cycleQuality()}return(e,t)=>K(n)?.supportsQuality?(z(),O(`button`,{key:0,type:`button`,class:F([`mlv-quality-button`,{"mlv-quality-button--active":!K(n)?.isAutoQuality}]),"aria-label":`Quality: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,levels:K(n)?.qualityLevels??[],currentIndex:K(n)?.currentQualityIndex??null,isAuto:K(n)?.isAutoQuality??!0},()=>[j(K(Nn))],!0)],10,Yi)):D(`v-if`,!0)}}),[[`__scopeId`,`data-v-d1352878`]]);const Zi=[`aria-label`];var Qi=Z(M({__name:`PlaybackRateButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>n.value?Ar(n.value):null),i=T(()=>r.value?r.value.fmtRate(n.value.currentPlaybackRate):`1×`);function a(){r.value?.cycleRate()}return(e,t)=>K(n)?.supportsPlaybackRate?(z(),O(`button`,{key:0,type:`button`,class:F([`mlv-playback-rate-button`,{"mlv-playback-rate-button--active":K(n)?.currentPlaybackRate!==1}]),"aria-label":`Playback speed: ${i.value}`,onClick:a},[U(e.$slots,`default`,{currentLabel:i.value,rate:K(n)?.currentPlaybackRate??1,rates:[...K(_)]},()=>[te(W(i.value),1)],!0)],10,Zi)):D(`v-if`,!0)}}),[[`__scopeId`,`data-v-646c9bc1`]]);const $i=[`aria-label`,`aria-pressed`],ea=[`aria-current`,`onClick`],ta={class:`mlv-transcript__time`},na={class:`mlv-transcript__text`};var ra=Z(M({__name:`Transcript`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1},cues:{type:[Array,String],required:!1}},setup(e){let t=e,n=Q(G(t,`player`),G(t,`for`)),r=T(()=>{if(typeof t.cues!=`string`)return t.cues??[];try{return JSON.parse(t.cues)}catch{return[]}}),i=T(()=>{let e=n.value?.current??0,t=r.value;for(let n=t.length-1;n>=0;n--){let r=t[n];if(!(r.time>e))return r.end!==void 0&&e>=r.end?null:n}return null}),a=V(null),o=V(!1);function s(e){let t=n.value;t&&(t.total>0&&t.seek(e.time/t.total*100),t.isPlaying||t.togglePlay())}q(i,async e=>{e===null||o.value||(await ne(),a.value?.querySelector(`.mlv-transcript__cue--active`)?.scrollIntoView?.({block:`nearest`,behavior:`smooth`}))});let c=typeof window<`u`&&`speechSynthesis`in window,l=V(!1),u=V(!1);function d(){if(c){if(l.value=!l.value,l.value){n.value&&!n.value.isMuted&&(n.value.toggleMute(),u.value=!0);return}window.speechSynthesis.cancel(),u.value&&n.value?.isMuted&&n.value.toggleMute(),u.value=!1}}return q(i,e=>{if(!c||!l.value||e===null)return;let t=r.value[e];if(!t)return;window.speechSynthesis.cancel();let n=new SpeechSynthesisUtterance(t.text);n.pitch=2,n.rate=1.5,window.speechSynthesis.speak(n)}),q(()=>n.value?.isMuted,e=>{c&&l.value&&e===!1&&(window.speechSynthesis.cancel(),l.value=!1,u.value=!1)}),L(()=>{c&&window.speechSynthesis.cancel(),u.value&&n.value?.isMuted&&n.value.toggleMute()}),(e,t)=>(z(),O(C,null,[K(c)?(z(),O(`button`,{key:0,type:`button`,class:`mlv-transcript__speech-toggle`,"aria-label":l.value?`Mute transcript readout`:`Unmute transcript readout`,"aria-pressed":l.value,onClick:d},[l.value?(z(),E(Yn,{key:0})):(z(),E(Gn,{key:1}))],8,$i)):D(`v-if`,!0),k(`ol`,{ref_key:`listEl`,ref:a,class:`mlv-transcript`,onPointerenter:t[0]||=e=>o.value=!0,onPointerleave:t[1]||=e=>o.value=!1},[(z(!0),O(C,null,H(r.value,(t,n)=>(z(),O(`li`,{key:`${t.time}-${n}`,class:`mlv-transcript__item`},[k(`button`,{type:`button`,class:F([`mlv-transcript__cue`,{"mlv-transcript__cue--active":n===i.value}]),"aria-current":n===i.value?`true`:void 0,onClick:e=>s(t)},[U(e.$slots,`default`,{cue:t,index:n,isActive:n===i.value,formatTime:K(Se)},()=>[k(`span`,ta,W(K(Se)(t.time)),1),k(`span`,na,W(t.text),1)],!0)],10,ea)]))),128))],544)],64))}}),[[`__scopeId`,`data-v-c166a2c5`]]);function ia(e,t){if(t)for(let n of Object.keys(t)){let r=t[n];typeof r==`function`?e[n]=r:Object.defineProperty(e,n,{get:()=>t[n],enumerable:!0,configurable:!0})}}const aa={install(e){e.component(`VideoPlayer`,xi),e.component(`VideoStage`,Mi),e.component(`VideoPlaceholder`,Bi),e.component(`VideoCard`,Vi),e.component(`HideMarker`,Hi),e.component(`Scrubber`,_r),e.component(`PlayButton`,Zn),e.component(`MuteButton`,Wi),e.component(`FullscreenButton`,dr),e.component(`Buffering`,er),e.component(`LoopButton`,Ki),e.component(`PipButton`,pr),e.component(`CaptionsButton`,Ji),e.component(`QualityButton`,Xi),e.component(`PlaybackRateButton`,Qi),e.component(`VolumeSlider`,wr),e.component(`TimeDisplay`,br),e.component(`Transcript`,ra)}};export{er as Buffering,Ji as CaptionsButton,dr as FullscreenButton,Hi as HideMarker,Ki as LoopButton,Wi as MuteButton,pr as PipButton,Zn as PlayButton,Qi as PlaybackRateButton,Xi as QualityButton,_r as Scrubber,br as TimeDisplay,ra as Transcript,Vi as VideoCard,Bi as VideoPlaceholder,xi as VideoPlayer,aa as VideoPlayerPlugin,aa as default,Mi as VideoStage,wr as VolumeSlider,ia as exposePlayerOnElement,le as getPlatform,pe as registerEmbedAdapter,ce as registerMatcher,be as registerPlatform,_e as registerSourceResolver,jr as useCaptions,Et as useForwardedPlayer,Ar as usePlaybackRate,Mr as useQuality,mr as useScrubber};
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- :where(.mlv-play-button[data-v-218255bd]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-play-button svg[data-v-218255bd]){width:1em;height:1em}@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}:where(.mlv-buffering[data-v-454fec7f]){justify-content:center;align-items:center;display:inline-flex}.ppbtn{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:hover{background:#fff3;transform:scale(1.08)}.ppbtn--lg{background:var(--mlv-btn-bg,#ffffff1a);width:clamp(48px,20cqw,64px);height:clamp(48px,20cqw,64px);color:var(--mlv-btn-color,#fff)}.ppbtn--lg svg{width:clamp(20px,9cqw,28px);height:clamp(20px,9cqw,28px)}.ppbtn--lg:hover{background:var(--mlv-btn-bg,#fff3);filter:brightness(1.12)}.ppbtn--sm{color:#ffffffbf;background:0 0;border:none;border-radius:8px;width:30px;height:30px}.ppbtn--sm svg{width:16px;height:16px}.ppbtn--sm:hover{color:#fff;background:#ffffff1a;transform:none}.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(--mlv-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px);color:var(--mlv-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(--mlv-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.hud__btn--active[data-v-a6d118e7]{border-color:var(--mlv-accent,#3b82f6);background:color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, var(--mlv-btn-bg,#ffffff1a));color:var(--mlv-btn-color,#fff)}.hud__btn--active[data-v-a6d118e7]:hover{background:color-mix(in srgb, var(--mlv-accent,#3b82f6) 45%, var(--mlv-btn-bg,#fff3))}:where(.mlv-fullscreen-button[data-v-b93a5017]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-fullscreen-button svg[data-v-b93a5017]){width:1em;height:1em}:where(.mlv-pip-button[data-v-f654d93e]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-pip-button--active[data-v-f654d93e]){opacity:1}:where(.mlv-pip-button svg[data-v-f654d93e]){width:1em;height:1em}.mlv-scrubber-wrap[data-v-043f1bc8]{width:100%;position:relative}:where(.mlv-scrubber[data-v-043f1bc8]){cursor:pointer;accent-color:currentColor;width:100%}.mlv-scrubber__preview[data-v-043f1bc8]{font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap;margin-bottom:.4rem;font-size:.75rem;position:absolute;bottom:100%;transform:translate(-50%)}:where(.mlv-time-display[data-v-0285c811]){font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:inline-flex}:where(.mlv-time-display__dot[data-v-0285c811]){background:currentColor;border-radius:50%;width:6px;height:6px}.mlv-volume-wrap[data-v-fbb2c86c]{align-items:center;gap:.75rem;width:100%;display:flex}:where(.mlv-volume-slider[data-v-fbb2c86c]){cursor:pointer;accent-color:currentColor;flex:1}:where(.mlv-volume-pct[data-v-fbb2c86c]){font-variant-numeric:tabular-nums;text-align:right;min-width:2rem}.controls__vol-slider{-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:hover{height:7px}.controls__vol-slider::-webkit-slider-runnable-track{background:0 0;height:5px}.controls__vol-slider::-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:hover::-webkit-slider-thumb{transform:scale(1.2)}.controls__vol-slider::-moz-range-track{background:#ffffff26;height:5px}.controls__vol-slider::-moz-range-progress{background:#fff;height:5px}.controls__vol-slider::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 3px #fff3}.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__more-row[data-v-47ca5bfc]{color:#ffffffd9;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:8px 4px;font-size:.8rem;font-weight:500;transition:background .15s;display:flex}.controls__more-row[data-v-47ca5bfc]:hover{background:#ffffff14}.controls__more-row-label[data-v-47ca5bfc]{align-items:center;gap:8px;display:flex}.controls__more-row-icon[data-v-47ca5bfc]{flex-shrink:0;width:16px;height:16px}.controls__more-value[data-v-47ca5bfc]{font-variant-numeric:tabular-nums;color:#ffffff80;font-size:.7rem;font-weight:600}.controls__more-row--active .controls__more-value[data-v-47ca5bfc]{color:var(--mlv-accent,#3b82f6)}.controls__more-header[data-v-e89a8208]{flex-shrink:0;align-items:center;gap:4px;display:flex}.controls__more-label[data-v-e89a8208]{color:#ffffffe6;flex:1;padding:0 4px;font-size:.8rem;font-weight:600}.controls__more-body[data-v-e89a8208]{flex-direction:column;min-height:0;padding:2px 0;display:flex;overflow-y:auto}.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--compact .controls__seek,.controls--compact .mlv-scrubber-wrap,.controls--compact .controls__btn--more,.controls--compact .controls__btn--pip,.controls--compact .controls__fs-wrap{display:none}@container player-shell (width<=250px){.controls__seek,.mlv-scrubber-wrap,.controls__btn--more,.controls__btn--pip,.controls__fs-wrap{display:none}}.controls__seek{-webkit-appearance:none;appearance:none;cursor:pointer;box-sizing:border-box;background:padding-box content-box;background-image:linear-gradient(to right, var(--mlv-accent,#3b82f6) 0%, var(--mlv-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::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mlv-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, transparent);cursor:pointer;border-radius:50%;margin-top:-5px;transition:transform .15s}.controls__seek:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek::-moz-range-progress{background:var(--mlv-accent,#3b82f6);height:4px}.controls__seek::-moz-range-thumb{background:var(--mlv-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, transparent);cursor:pointer;border:none;border-radius:50%}.controls[data-v-5712aad4]{width:var(--mlv-controls-width,min(450px, calc(100% - 32px)));-webkit-backdrop-filter:blur(20px);background:#0a0a0e;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;max-height:100%;padding:14px 16px 12px;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000080}.controls--fs[data-v-5712aad4]{width:100%}.controls__row[data-v-5712aad4]{align-items:center;gap:4px;display:flex}.controls__time-display[data-v-5712aad4]{color:#fff9;letter-spacing:.02em;flex:1;padding:0 4px;font-size:.7rem;font-weight:500}.controls__time-display.mlv-time-display--live[data-v-5712aad4]{letter-spacing:.04em;text-transform:uppercase;color:#f87171;font-weight:700}.controls__play-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.controls__btn--active[data-v-5712aad4],.controls__btn--pip.mlv-pip-button--active[data-v-5712aad4]{color:var(--mlv-accent,#3b82f6)}.controls__btn--active[data-v-5712aad4]:hover,.controls__btn--pip.mlv-pip-button--active[data-v-5712aad4]:hover{color:var(--mlv-accent,#60a5fa)}.controls__fs-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.overlay__spinner[data-v-2fba5782]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fade-enter-active[data-v-2fba5782],.fade-leave-active[data-v-2fba5782]{transition:opacity .25s}.fade-enter-from[data-v-2fba5782],.fade-leave-to[data-v-2fba5782]{opacity:0}.overlay__error[data-v-2fba5782]{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-2fba5782]{color:#ffffffb3;text-align:center;max-width:260px;font-size:.875rem;line-height:1.5}.overlay__retry[data-v-2fba5782]{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-2fba5782]:hover{background:#fff3}.overlay__hud[data-v-2fba5782]{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-2fba5782]{opacity:1;pointer-events:all}.overlay__popup[data-v-2fba5782]{z-index:5;align-items:var(--mlv-popup-align,center);pointer-events:none;justify-content:center;padding:16px;display:flex;position:absolute;inset:0}.overlay__popup[data-v-2fba5782] .controls{pointer-events:auto}.overlay__popup--fs[data-v-2fba5782]{align-items:flex-end}.popup-enter-active[data-v-2fba5782],.popup-leave-active[data-v-2fba5782]{transition:opacity .2s,transform .2s}.popup-enter-from[data-v-2fba5782],.popup-leave-to[data-v-2fba5782]{opacity:0;transform:scale(.95)}.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__btn[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__btn[data-v-23efcc8b]:hover{background:#000c}.ad-overlay__btn svg[data-v-23efcc8b]{width:11px;height:11px}.player-wrapper[data-v-a2f8a547]{display:block}.player-wrapper[data-v-9188c23a]{display:contents}.pinned-controls__dismiss[data-v-690b416a],.pinned-controls__scroll-to[data-v-690b416a]{z-index:25;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}.pinned-controls__dismiss[data-v-690b416a]:hover,.pinned-controls__scroll-to[data-v-690b416a]:hover{background:#000000d9}.pinned-controls__dismiss svg[data-v-690b416a],.pinned-controls__scroll-to svg[data-v-690b416a]{width:14px;height:14px}.pinned-controls__dismiss[data-v-690b416a]{right:.4rem}.pinned-controls__scroll-to[data-v-690b416a]{left:.4rem}.stage--pin-bottom-right,.stage--pin-bottom-left,.stage--pin-top-right,.stage--pin-top-left,.player--pin-bottom-right,.player--pin-bottom-left,.player--pin-top-right,.player--pin-top-left{border-radius:var(--mlv-radius,12px);transition:transform .18s}.stage--pin-bottom-right,.player--pin-bottom-right{bottom:1.25rem;right:1.25rem}.stage--pin-bottom-left,.player--pin-bottom-left{bottom:1.25rem;left:1.25rem}.stage--pin-top-right,.player--pin-top-right{top:1.25rem;right:1.25rem}.stage--pin-top-left,.player--pin-top-left{top:1.25rem;left:1.25rem}.stage--pin-bottom-right.stage--tucked,.stage--pin-top-right.stage--tucked,.player--pin-bottom-right.player--tucked,.player--pin-top-right.player--tucked{transform:translateX(calc(100% - var(--mlv-stage-tuck,32px)))}.stage--pin-bottom-left.stage--tucked,.stage--pin-top-left.stage--tucked,.player--pin-bottom-left.player--tucked,.player--pin-top-left.player--tucked{transform:translateX(calc(-100% + var(--mlv-stage-tuck,32px)))}.player[data-v-4ab3cf75]{user-select:none;-webkit-tap-highlight-color:transparent;width:100%;max-width:800px;margin:0 auto;position:relative}.player--pinned[data-v-4ab3cf75]{z-index:100;width:70dvw;max-width:360px;margin:0;transition:transform .18s;position:fixed;box-shadow:0 8px 32px #0009}@media (width<=740px){.player--pinned[data-v-4ab3cf75]{max-width:300px}}[data-mlv-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{border-radius:var(--mlv-radius,12px);cursor:pointer;background:#000;position:relative;overflow:hidden;container:player-shell/inline-size}.mlv-video--hidden[data-v-4ab3cf75]{opacity:0}.overlay__tap-capture[data-v-4ab3cf75]{z-index:2;position:absolute;inset:0}.mlv-youtube .overlay__tap-capture[data-v-4ab3cf75]{clip-path:polygon(0 0,100% 0,100% 100%,64px 100%,64px calc(100% - 64px),0 calc(100% - 64px))}.mlv-dailymotion .overlay__tap-capture[data-v-4ab3cf75]{clip-path:polygon(0 64px,0 100%,100% 100%,100% 0,64px 0,64px 64px)}.player__shell--portrait[data-v-4ab3cf75]{width:auto;max-width:100%;max-height:75dvh;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:100dvh}.player__shell:fullscreen .mlv-video[data-v-4ab3cf75],.player__shell:fullscreen [data-mlv-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.mlv-video{border-radius:var(--mlv-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mlv-dailymotion .mlv-tech>*,.mlv-dailymotion .dailymotion-player-root,.mlv-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.mlv-vimeo .mlv-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.mlv-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}[data-mlv-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}.mlv-ad-playing .ima-ad-container{pointer-events:auto}.mlv-ad-playing .overlay__hud,.mlv-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--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]{width:70dvw;max-width:360px;@media (width<=740px){max-width:300px}}.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(--mlv-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(--mlv-radius,12px);cursor:pointer;background:#111;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height:75dvh;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}.mlv-hide-marker[data-v-bacb702a]{width:100%;min-height:1px}:where(.mlv-mute-button[data-v-1940b598]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-mute-button svg[data-v-1940b598]){width:1em;height:1em}:where(.mlv-loop-button[data-v-e32eda25]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-loop-button--active[data-v-e32eda25]){opacity:1}:where(.mlv-loop-button svg[data-v-e32eda25]){width:1em;height:1em}:where(.mlv-captions-button[data-v-2572c4f2]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-captions-button--active[data-v-2572c4f2]){opacity:1}:where(.mlv-captions-button svg[data-v-2572c4f2]){width:1em;height:1em}:where(.mlv-quality-button[data-v-d1352878]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-quality-button--active[data-v-d1352878]){opacity:1}:where(.mlv-quality-button svg[data-v-d1352878]){width:1em;height:1em}:where(.mlv-playback-rate-button[data-v-646c9bc1]){all:unset;cursor:pointer;font-variant-numeric:tabular-nums;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-playback-rate-button--active[data-v-646c9bc1]){opacity:1}:where(.mlv-transcript[data-v-c166a2c5]){margin:0;padding:0;list-style:none;overflow-y:auto}:where(.mlv-transcript__cue[data-v-c166a2c5]){all:unset;cursor:pointer;box-sizing:border-box;border-radius:4px;align-items:baseline;gap:.5rem;width:100%;padding:.35rem .5rem;display:flex}:where(.mlv-transcript__cue[data-v-c166a2c5]:hover){background:#7f7f7f26}:where(.mlv-transcript__cue--active[data-v-c166a2c5]){background:#7f7f7f40;font-weight:600}:where(.mlv-transcript__time[data-v-c166a2c5]){font-variant-numeric:tabular-nums;opacity:.7;flex-shrink:0}
1
+ :where(.mlv-play-button[data-v-218255bd]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-play-button[data-v-218255bd]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-play-button svg[data-v-218255bd]){width:1em;height:1em}@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}:where(.mlv-buffering[data-v-454fec7f]){justify-content:center;align-items:center;display:inline-flex}.ppbtn{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:hover{background:#fff3;transform:scale(1.08)}.ppbtn--lg{background:var(--mlv-btn-bg,#ffffff1a);width:clamp(48px,20cqw,64px);height:clamp(48px,20cqw,64px);color:var(--mlv-btn-color,#fff)}.ppbtn--lg svg{width:clamp(20px,9cqw,28px);height:clamp(20px,9cqw,28px)}.ppbtn--lg:hover{background:var(--mlv-btn-bg,#fff3);filter:brightness(1.12)}.ppbtn--sm{color:#ffffffbf;background:0 0;border:none;border-radius:8px;width:30px;height:30px}.ppbtn--sm svg{width:16px;height:16px}.ppbtn--sm:hover{color:#fff;background:#ffffff1a;transform:none}.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(--mlv-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px);color:var(--mlv-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(--mlv-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.hud__btn--active[data-v-a6d118e7]{border-color:var(--mlv-accent,#3b82f6);background:color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, var(--mlv-btn-bg,#ffffff1a));color:var(--mlv-btn-color,#fff)}.hud__btn--active[data-v-a6d118e7]:hover{background:color-mix(in srgb, var(--mlv-accent,#3b82f6) 45%, var(--mlv-btn-bg,#fff3))}:where(.mlv-fullscreen-button[data-v-b93a5017]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-fullscreen-button[data-v-b93a5017]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-fullscreen-button svg[data-v-b93a5017]){width:1em;height:1em}:where(.mlv-pip-button[data-v-f654d93e]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-pip-button[data-v-f654d93e]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-pip-button--active[data-v-f654d93e]){opacity:1}:where(.mlv-pip-button svg[data-v-f654d93e]){width:1em;height:1em}.mlv-scrubber-wrap[data-v-043f1bc8]{width:100%;position:relative}:where(.mlv-scrubber[data-v-043f1bc8]){cursor:pointer;accent-color:currentColor;width:100%}:where(.mlv-scrubber[data-v-043f1bc8]):focus-visible{outline-offset:0!important;outline:2px solid #fff!important}.mlv-scrubber__preview[data-v-043f1bc8]{font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap;margin-bottom:.4rem;font-size:.75rem;position:absolute;bottom:100%;transform:translate(-50%)}:where(.mlv-time-display[data-v-0285c811]){font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:inline-flex}:where(.mlv-time-display__dot[data-v-0285c811]){background:currentColor;border-radius:50%;width:6px;height:6px}.mlv-volume-wrap[data-v-fbb2c86c]{align-items:center;gap:.75rem;width:100%;display:flex}:where(.mlv-volume-slider[data-v-fbb2c86c]){cursor:pointer;accent-color:currentColor;flex:1}:where(.mlv-volume-slider[data-v-fbb2c86c]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-volume-pct[data-v-fbb2c86c]){font-variant-numeric:tabular-nums;text-align:right;min-width:2rem}.controls__vol-slider{-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:hover{height:7px}.controls__vol-slider:focus-visible{outline-offset:2px;outline:2px solid #fff}.controls__vol-slider::-webkit-slider-runnable-track{background:0 0;height:5px}.controls__vol-slider::-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:hover::-webkit-slider-thumb{transform:scale(1.2)}.controls__vol-slider::-moz-range-track{background:#ffffff26;height:5px}.controls__vol-slider::-moz-range-progress{background:#fff;height:5px}.controls__vol-slider::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 3px #fff3}.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__more-row[data-v-47ca5bfc]{color:#ffffffd9;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:8px 4px;font-size:.8rem;font-weight:500;transition:background .15s;display:flex}.controls__more-row[data-v-47ca5bfc]:hover{background:#ffffff14}.controls__more-row-label[data-v-47ca5bfc]{align-items:center;gap:8px;display:flex}.controls__more-row-icon[data-v-47ca5bfc]{flex-shrink:0;width:16px;height:16px}.controls__more-value[data-v-47ca5bfc]{font-variant-numeric:tabular-nums;color:#ffffff80;font-size:.7rem;font-weight:600}.controls__more-row--active .controls__more-value[data-v-47ca5bfc]{color:var(--mlv-accent,#3b82f6)}.controls__more-header[data-v-e89a8208]{flex-shrink:0;align-items:center;gap:4px;display:flex}.controls__more-label[data-v-e89a8208]{color:#ffffffe6;flex:1;padding:0 4px;font-size:.8rem;font-weight:600}.controls__more-body[data-v-e89a8208]{flex-direction:column;min-height:0;padding:2px 0;display:flex;overflow-y:auto}.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__inner:has(.controls__more-body){flex-direction:column;max-width:100%;height:100%;display:flex;overflow:auto}.controls__btn svg{width:16px;height:16px}.controls__btn:hover{color:#fff;background:#ffffff1a}.controls--compact .controls__seek,.controls--compact .mlv-scrubber-wrap,.controls--compact .mlv-time-display__total,.controls--compact .controls__btn--pip,.controls--compact .controls__btn--next,.controls--compact .controls__btn--volume{display:none}.controls__seek{-webkit-appearance:none;appearance:none;cursor:pointer;box-sizing:border-box;background:padding-box content-box;background-image:linear-gradient(to right, var(--mlv-accent,#3b82f6) 0%, var(--mlv-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::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mlv-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, transparent);cursor:pointer;border-radius:50%;margin-top:-5px;transition:transform .15s}.controls__seek:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek::-moz-range-progress{background:var(--mlv-accent,#3b82f6);height:4px}.controls__seek::-moz-range-thumb{background:var(--mlv-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, transparent);cursor:pointer;border:none;border-radius:50%}.controls[data-v-5712aad4]{width:var(--mlv-controls-width,min(450px, calc(100% - 32px)));-webkit-backdrop-filter:blur(20px);background:#0a0a0e;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;max-height:100%;padding:14px 16px 12px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000080}.controls--fs[data-v-5712aad4]{width:100%}.controls__close[data-v-5712aad4]{clip:rect(0, 0, 0, 0);white-space:nowrap;color:#fff;cursor:pointer;background:0 0;border:0;width:1px;height:1px;padding:0;font-size:.75rem;position:absolute;bottom:4px;left:50%;overflow:hidden;transform:translate(-50%)}.controls__close[data-v-5712aad4]:focus{clip:auto;white-space:normal;outline-offset:2px;background:#ffffff1a;border-radius:6px;outline:2px solid #fff;width:auto;height:auto;padding:6px 10px;overflow:visible}.controls__row[data-v-5712aad4]{align-items:center;gap:4px;display:flex}.controls__time-display[data-v-5712aad4]{color:#fff9;letter-spacing:.02em;flex:1;padding:0 4px;font-size:.7rem;font-weight:500}.controls__time-display.mlv-time-display--live[data-v-5712aad4]{letter-spacing:.04em;text-transform:uppercase;color:#f87171;font-weight:700}.controls__play-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.controls__btn--active[data-v-5712aad4],.controls__btn--pip.mlv-pip-button--active[data-v-5712aad4]{color:var(--mlv-accent,#3b82f6)}.controls__btn--active[data-v-5712aad4]:hover,.controls__btn--pip.mlv-pip-button--active[data-v-5712aad4]:hover{color:var(--mlv-accent,#60a5fa)}.controls__fs-wrap[data-v-5712aad4]{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.overlay__spinner[data-v-2fba5782]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fade-enter-active[data-v-2fba5782],.fade-leave-active[data-v-2fba5782]{transition:opacity .25s}.fade-enter-from[data-v-2fba5782],.fade-leave-to[data-v-2fba5782]{opacity:0}.overlay__error[data-v-2fba5782]{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-2fba5782]{color:#ffffffb3;text-align:center;max-width:260px;font-size:.875rem;line-height:1.5}.overlay__retry[data-v-2fba5782]{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-2fba5782]:hover{background:#fff3}.overlay__reveal[data-v-2fba5782]{z-index:10;clip:rect(0, 0, 0, 0);white-space:nowrap;color:#fff;cursor:pointer;background:#000000d9;border:0;border-radius:6px;width:1px;height:1px;margin:-1px;padding:0;font-size:.8rem;position:absolute;top:8px;left:8px;overflow:hidden}.overlay__reveal[data-v-2fba5782]:focus{clip:auto;white-space:normal;outline-offset:2px;outline:2px solid #fff;width:auto;height:auto;margin:0;padding:.4rem .75rem;overflow:visible}.overlay__hud[data-v-2fba5782]{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-2fba5782]{opacity:1;pointer-events:all}.overlay__hud[data-v-2fba5782]:has(~.overlay__popup){opacity:0!important;pointer-events:none!important}.overlay__popup[data-v-2fba5782]{z-index:5;align-items:var(--mlv-popup-align,center);pointer-events:none;justify-content:center;padding:16px;display:flex;position:absolute;inset:0}.overlay__popup[data-v-2fba5782] .controls{pointer-events:auto}.overlay__popup--fs[data-v-2fba5782]{align-items:flex-end}.popup-enter-active[data-v-2fba5782],.popup-leave-active[data-v-2fba5782]{transition:opacity .2s,transform .2s}.popup-enter-from[data-v-2fba5782],.popup-leave-to[data-v-2fba5782]{opacity:0;transform:scale(.95)}.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__btn[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__btn[data-v-23efcc8b]:hover{background:#000c}.ad-overlay__btn svg[data-v-23efcc8b]{width:11px;height:11px}.player-wrapper[data-v-a2f8a547]{display:block}.player-wrapper[data-v-9188c23a]{display:contents}.pinned-controls__dismiss[data-v-690b416a],.pinned-controls__scroll-to[data-v-690b416a]{z-index:25;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}.pinned-controls__dismiss[data-v-690b416a]:hover,.pinned-controls__scroll-to[data-v-690b416a]:hover{background:#000000d9}.pinned-controls__dismiss svg[data-v-690b416a],.pinned-controls__scroll-to svg[data-v-690b416a]{width:14px;height:14px}.pinned-controls__dismiss[data-v-690b416a]{right:.4rem}.pinned-controls__scroll-to[data-v-690b416a]{left:.4rem}.stage--pin-bottom-right,.stage--pin-bottom-left,.stage--pin-top-right,.stage--pin-top-left,.player--pin-bottom-right,.player--pin-bottom-left,.player--pin-top-right,.player--pin-top-left{border-radius:var(--mlv-radius,12px);transition:transform .18s}.stage--pin-bottom-right,.player--pin-bottom-right{bottom:1.25rem;right:1.25rem}.stage--pin-bottom-left,.player--pin-bottom-left{bottom:1.25rem;left:1.25rem}.stage--pin-top-right,.player--pin-top-right{top:1.25rem;right:1.25rem}.stage--pin-top-left,.player--pin-top-left{top:1.25rem;left:1.25rem}.stage--pin-bottom-right.stage--tucked,.stage--pin-top-right.stage--tucked,.player--pin-bottom-right.player--tucked,.player--pin-top-right.player--tucked{transform:translateX(calc(100% - var(--mlv-stage-tuck,32px)))}.stage--pin-bottom-left.stage--tucked,.stage--pin-top-left.stage--tucked,.player--pin-bottom-left.player--tucked,.player--pin-top-left.player--tucked{transform:translateX(calc(-100% + var(--mlv-stage-tuck,32px)))}.player[data-v-4ab3cf75]{width:100%;max-width:var(--mlv-max-width,800px);user-select:none;-webkit-tap-highlight-color:transparent;margin:0 auto;position:relative}.player--pinned[data-v-4ab3cf75]{z-index:100;width:70dvw;max-width:360px;margin:0;transition:transform .18s;position:fixed;box-shadow:0 8px 32px #0009}@media (width<=740px){.player--pinned[data-v-4ab3cf75]{max-width:300px}}[data-mlv-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{border-radius:var(--mlv-radius,12px);cursor:pointer;background:#000;position:relative;overflow:hidden;container:player-shell/inline-size}.mlv-video--hidden[data-v-4ab3cf75]{opacity:0}.overlay__tap-capture[data-v-4ab3cf75]{z-index:2;position:absolute;inset:0}.mlv-youtube .overlay__tap-capture[data-v-4ab3cf75]{clip-path:polygon(0 0,100% 0,100% 100%,64px 100%,64px calc(100% - 64px),0 calc(100% - 64px))}.mlv-dailymotion .overlay__tap-capture[data-v-4ab3cf75]{clip-path:polygon(0 64px,0 100%,100% 100%,100% 0,64px 0,64px 64px)}.player__shell--portrait[data-v-4ab3cf75]{width:auto;max-width:100%;max-height:75dvh;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:100dvh}.player__shell:fullscreen .mlv-video[data-v-4ab3cf75],.player__shell:fullscreen [data-mlv-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.mlv-video{border-radius:var(--mlv-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mlv-dailymotion .mlv-tech>*,.mlv-dailymotion .dailymotion-player-root,.mlv-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.mlv-vimeo .mlv-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.mlv-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}[data-mlv-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}.mlv-ad-playing .ima-ad-container{pointer-events:auto}.mlv-ad-playing .overlay__hud,.mlv-ad-playing .overlay__spinner{display:none!important}.stage-wrapper[data-v-fb8c86cf]{width:100%;max-width:var(--mlv-max-width,800px);margin:0 auto}.stage[data-v-fb8c86cf]{width:100%}.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]{width:70dvw;max-width:360px;@media (width<=740px){max-width:300px}}.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(--mlv-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%;max-width:var(--mlv-max-width,800px);margin:0 auto}.placeholder__shell[data-v-dbcb4f82]{border-radius:var(--mlv-radius,12px);cursor:pointer;background:#111;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height:75dvh;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}.mlv-hide-marker[data-v-bacb702a]{width:100%;min-height:1px}:where(.mlv-mute-button[data-v-1940b598]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-mute-button[data-v-1940b598]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-mute-button svg[data-v-1940b598]){width:1em;height:1em}:where(.mlv-loop-button[data-v-e32eda25]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-loop-button[data-v-e32eda25]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-loop-button--active[data-v-e32eda25]){opacity:1}:where(.mlv-loop-button svg[data-v-e32eda25]){width:1em;height:1em}:where(.mlv-captions-button[data-v-2572c4f2]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-captions-button[data-v-2572c4f2]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-captions-button--active[data-v-2572c4f2]){opacity:1}:where(.mlv-captions-button svg[data-v-2572c4f2]){width:1em;height:1em}:where(.mlv-quality-button[data-v-d1352878]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-quality-button[data-v-d1352878]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-quality-button--active[data-v-d1352878]){opacity:1}:where(.mlv-quality-button svg[data-v-d1352878]){width:1em;height:1em}:where(.mlv-playback-rate-button[data-v-646c9bc1]){all:unset;cursor:pointer;font-variant-numeric:tabular-nums;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mlv-playback-rate-button[data-v-646c9bc1]):focus-visible{outline-offset:2px;outline:2px solid #fff}:where(.mlv-playback-rate-button--active[data-v-646c9bc1]){opacity:1}:where(.mlv-transcript[data-v-c166a2c5]){margin:0;padding:0;list-style:none;overflow-y:auto}:where(.mlv-transcript__cue[data-v-c166a2c5]){all:unset;cursor:pointer;box-sizing:border-box;border-radius:4px;align-items:baseline;gap:.5rem;width:100%;padding:.35rem .5rem;display:flex}:where(.mlv-transcript__cue[data-v-c166a2c5]):focus-visible{outline-offset:-2px;outline:2px solid}:where(.mlv-transcript__cue[data-v-c166a2c5]:hover){background:#7f7f7f26}:where(.mlv-transcript__cue--active[data-v-c166a2c5]){background:#7f7f7f40;font-weight:600}:where(.mlv-transcript__speech-toggle[data-v-c166a2c5]){all:unset;cursor:pointer;background:var(--mlv-btn-bg,#7f7f7f1a);width:2rem;height:2rem;color:var(--mlv-btn-color,inherit);border:1px solid #7f7f7f4d;border-radius:50%;justify-content:center;align-items:center;margin-bottom:.5rem;transition:background .2s,transform .15s;display:inline-flex}:where(.mlv-transcript__speech-toggle[data-v-c166a2c5]):focus-visible{outline-offset:2px;outline:2px solid}:where(.mlv-transcript__speech-toggle[data-v-c166a2c5]:hover){background:var(--mlv-btn-bg,#7f7f7f33);transform:scale(1.08)}:where(.mlv-transcript__speech-toggle[aria-pressed=true][data-v-c166a2c5]){border-color:var(--mlv-accent,#3b82f6);background:color-mix(in srgb, var(--mlv-accent,#3b82f6) 30%, var(--mlv-btn-bg,#7f7f7f1a));color:var(--mlv-btn-color,inherit)}:where(.mlv-transcript__speech-toggle svg[data-v-c166a2c5]){width:1.1em;height:1.1em}:where(.mlv-transcript__time[data-v-c166a2c5]){font-variant-numeric:tabular-nums;opacity:.7;flex-shrink:0}
package/package.json CHANGED
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "@munsonlabs/video-player",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "dist"
7
7
  ],
8
8
  "type": "module",
9
- "sideEffects": false,
9
+ "sideEffects": [
10
+ "./dist/elements/**",
11
+ "./dist/**/*.css"
12
+ ],
10
13
  "module": "./dist/index.mjs",
11
14
  "types": "./dist/index.d.mts",
12
15
  "exports": {
@@ -47,7 +50,6 @@
47
50
  "access": "public"
48
51
  },
49
52
  "scripts": {
50
- "build": "vp pack",
51
53
  "dev": "AUTO_ENTRIES=1 vp pack --watch",
52
54
  "clean": "rm -rf dist",
53
55
  "lint": "vp lint",
@@ -58,7 +60,7 @@
58
60
  "test:watch": "vp test --watch"
59
61
  },
60
62
  "devDependencies": {
61
- "@pugpigbolt/shipkit": "*",
63
+ "@munsonlabs/shipkit": "*",
62
64
  "dashjs": "^4.7.4",
63
65
  "hls.js": "^1.6.16",
64
66
  "vue": "3.5.33"
@@ -1 +0,0 @@
1
- const e=`video-select`,t=`video-toggle`,n=`video-state`,r=`fullscreen-pending`,i=`fullscreen-pending-done`,a=`player:positions`,o=`player:autoAdvance`,s=`player:audio`,c={muted:!1,volume:1},l=`mlv-tech`,u=`mlv-youtube`,d=`mlv-vimeo`,f=`mlv-dailymotion`,p=`mlv-ad-playing`,m=`mlv-ad-paused`,h=`16:9`,g=`application/x-mpegURL`,_=`application/dash+xml`,v=`video/mp4`,y=[g,v],b=[.5,.75,1,1.25,1.5,2],x=3500,S=.1,C=3e3,w=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]],T=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,E=`https://player.vimeo.com/api/player.js`,D=`https://cdn.jwplayer.com/v2/media`,O=`https://edge.api.brightcove.com/playback/v1/accounts`,k=`https://players.brightcove.net`;export{t as A,y as C,E as D,a as E,e as O,C as S,o as T,d as _,c as a,b,T as c,m as d,p as f,l as g,i as h,h as i,n as k,D as l,r as m,k as n,g as o,f as p,_ as r,x as s,O as t,v as u,u as v,s as w,w as x,S as y};
@@ -1 +0,0 @@
1
- import{p as e}from"./constants-BUQXC_ZT.mjs";import{r as t}from"./embedShared-DgFZ58OV.mjs";import{t as n}from"./loadScript-Du6JsTc2.mjs";function r(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 i(i,a){let o=null;return t(i,a,{cssClass:e,connect:async({techId:e,emitter:t,state:i,isDisposed:s,consumeQueuedPlay:c})=>{let l=r(a.src);if(!l){i.errorState={code:4,message:`Could not parse video ID from source URL`},t.trigger(`error`);return}let u=!1;try{let r=typeof a.customVars?.playerId==`string`?a.customVars.playerId:void 0,d=await n(r?`https://geo.dailymotion.com/libs/player/${r}.js`:`https://geo.dailymotion.com/libs/player.js`,r||`dailymotion-sdk`).then(()=>window.dailymotion);if(!d||s())return;let f=await d.createPlayer(e,{...r&&{player:r},video:l,params:{autoplay:!!a.autoplay,mute:!!a.muted}});o=f,a.volume!==void 0&&f.setVolume(a.volume);let p=d.events;c(()=>o?.play()),f.on(p.PLAYER_CRITICALPATHREADY,e=>{let n=e.videoThumbnails;if(!n)return;let r=Object.keys(n).map(Number).sort((e,t)=>t-e)[0],i=r===void 0?void 0:n[r];i&&t.trigger(`posterchange`,i)}),f.on(p.VIDEO_PLAY,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`playing`),!a.autoplay&&!u&&(u=!0,f.pause())}),f.on(p.VIDEO_PLAYING,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`playing`)}),f.on(p.VIDEO_PAUSE,()=>{i.paused=!0,t.trigger(`pause`)}),p.VIDEO_BUFFERING&&f.on(p.VIDEO_BUFFERING,()=>t.trigger(`waiting`)),f.on(p.VIDEO_END,()=>{i.paused=!0,t.trigger(`ended`)}),f.on(p.VIDEO_TIMECHANGE,e=>{i.currentTime=e.videoTime??i.currentTime,i.duration=e.videoDuration??i.duration,t.trigger(`timeupdate`)}),f.on(p.VIDEO_DURATIONCHANGE,e=>{i.duration=e.videoDuration??i.duration,t.trigger(`durationchange`)}),f.on(p.VIDEO_SEEKSTART,()=>t.trigger(`seeking`)),f.on(p.VIDEO_SEEKEND,e=>{i.currentTime=e.videoTime??i.currentTime,t.trigger(`seeked`)}),f.on(p.PLAYER_VOLUMECHANGE,e=>{i.volume=e.playerVolume??i.volume,i.muted=e.playerIsMuted??i.muted,t.trigger(`volumechange`)}),f.on(p.PLAYER_ERROR,()=>t.trigger(`error`)),p.AD_START&&f.on(p.AD_START,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`adstart`)}),p.AD_END&&f.on(p.AD_END,()=>t.trigger(`adend`))}catch(e){i.errorState={code:4,message:e instanceof Error?e.message:`This video could not be played.`},t.trigger(`error`)}},hasPlayer:()=>!!o,play:()=>o?.play(),pause:()=>o?.pause(),seekToSdk:e=>o?.seek(e),volumeToSdk:e=>o?.setVolume(e),muteToSdk:(e,t)=>o?.setMute(t),sdkFullscreenEnter:()=>o?.setFullscreen(!0),sdkFullscreenExit:()=>o?.setFullscreen(!1),destroyPlayer:()=>{let e=o;o=null,e?.destroy?.()}})}export{i as createDailymotionAdapter};
@@ -1 +0,0 @@
1
- import{g as e,h as t,m as n}from"./constants-BUQXC_ZT.mjs";import{n as r,r as i,t as a}from"./platform-Dg9JBh8M.mjs";function o(){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 s={supportsCaptions:()=>!1,getCaptionTracks:()=>[],setCaptionTrack:()=>{},getActiveCaptionTrack:()=>null,supportsQuality:()=>!1,getQualityLevels:()=>[],getCurrentQuality:()=>null,isAutoQuality:()=>!0,setQuality:()=>{},supportsPip:()=>!1,isPipActive:()=>!1,togglePip:()=>{}};let c=0;function l(t,n){t.parentElement?.classList.add(n);let r=`${n}-${++c}`,i=document.createElement(`div`);i.id=r,i.className=e,i.style.cssText=`width:100%;height:100%;top:0;left:0;position:absolute`;let a=document.createElement(`div`);return a.style.cssText=`width:100%;height:100%;position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity 0.2s`,a.appendChild(i),t.parentElement?.insertBefore(a,t),{techId:r,wrapper:a,innerDiv:i}}function u(e,t){e.style.display=`none`,t.style.opacity=`1`,t.style.pointerEvents=``}function d(e,t,n){t.remove(),e.parentElement?.classList.remove(n),e.style.display=``}function f(e){return e.closest(`.player__shell`)}function p(e,t){if(r()&&t()!==!1)return;let n=f(e);n&&i(n)}function m(){a()}function h(){let e=new Set;return{schedule(t,n=0){let r=setTimeout(()=>{e.delete(r),t()},n);e.add(r)},clearAll(){e.forEach(clearTimeout),e.clear()}}}function g(e){e.trigger(n);let r=document.createElement(`div`);r.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(r);let i=!1;function a(){i||e.trigger(t)}function o(n){i||(i=!0,e.trigger(t),r.remove(),n?.())}return{overlay:r,reveal:a,finish:o}}function _(e,t,n){let i=o(),{techId:c,wrapper:u}=l(e,n.cssClass),{schedule:f,clearAll:m}=h(),g={currentTime:0,duration:0,volume:t.volume??1,muted:!1,paused:!0,playQueued:!1,errorState:null},_=!1,v={techId:c,wrapper:u,emitter:i,state:g,schedule:f,isDisposed:()=>_,consumeQueuedPlay(e){g.playQueued&&(g.playQueued=!1,e())}};n.connect(v);function y(){p(e,()=>{if(!n.sdkFullscreenEnter)return!1;n.sdkFullscreenEnter()})}function b(){if(r()&&n.sdkFullscreenExit){n.sdkFullscreenExit();return}a()}return{el:u,play:()=>{n.hasPlayer()?n.play():g.playQueued=!0},pause:()=>n.pause(),paused:()=>g.paused,currentTime:()=>g.currentTime,setCurrentTime:e=>{if(n.setCurrentTime){n.setCurrentTime(v,e);return}g.currentTime=e,n.seekToSdk?.(e),i.trigger(`seeking`)},duration:()=>g.duration,volume:()=>g.volume,setVolume:e=>{g.volume=e,n.volumeToSdk(e)},muted:()=>g.muted,setMuted:e=>{g.muted=e,n.muteToSdk(v,e)},...n.rate?n.rate(v):{playbackRate:()=>1,setPlaybackRate:()=>{}},bufferedEnd:()=>g.currentTime,error:()=>g.errorState,setSrc:()=>{},supportsPlaybackRate:()=>!1,...s,enterFullscreen:y,exitFullscreen:b,on:i.on,off:i.off,dispose:()=>{_=!0,m(),n.destroyPlayer(),d(e,u,n.cssClass),i.dispose()}}}export{p as a,u as c,o as d,h as i,g as l,l as n,m as o,_ as r,f as s,s as t,d as u};
@@ -1 +0,0 @@
1
- import{l as e,o as t,u as n}from"./constants-BUQXC_ZT.mjs";import{n as r,t as i}from"./sourceHelpers-CAGxjbbu.mjs";function a(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function o(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const s=i(async t=>{let n=await fetch(`${e}/${t}`);if(!n.ok)throw Error(`JW Platform API error: ${n.status}`);let i=(await n.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:o(i)}});async function c(e){let r=a(e);if(!r)throw Error(`JW Platform: unrecognised source URL: ${e}`);let i=await s(r);if(e.startsWith(`jwplayer://`))return i;let o=/\.mp4(\?|#|$)/.test(e)?n:t;return{...i,src:e,type:o}}export{c as resolveSource};
@@ -1 +0,0 @@
1
- import{v as e}from"./constants-BUQXC_ZT.mjs";import{a as t,d as n,i as r,l as i,n as a,o,t as s,u as c}from"./embedShared-DgFZ58OV.mjs";import{t as l}from"./loadScript-Du6JsTc2.mjs";function u(e,t){return t===e.PlayerState.PLAYING||t===e.PlayerState.BUFFERING}function d(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 f=!1,p=!1;const m=[];function h(){p||(p=!0,l(`https://www.youtube.com/iframe_api`).then(()=>{window.YT?.ready(()=>{f=!0,m.forEach(e=>e()),m.length=0})}))}function g(l,p){h();let g=n(),{techId:_,wrapper:v}=a(l,e),y=d(p.src),b=null,x=y.videoId,S=!1,C=!1,w=!1,T=null,E=!1,D=null,O=!1,{schedule:k,clearAll:A}=r(),j=null,M={active:!1,wasPaused:!1,timeBefore:0,catchUpInterval:null};function N(){try{let e=b?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}function P(e){b?.loadVideoById({videoId:e})}function F(e){b?.cueVideoById({videoId:e})}function I(){y.videoId&&(M.wasPaused=!1,S?x===y.videoId?b?.playVideo():(P(y.videoId),x=y.videoId):(g.trigger(`waiting`),C=!0))}function L(){M.catchUpInterval&&clearInterval(M.catchUpInterval),M.active=!1,M.wasPaused&&b?.pauseVideo(),g.trigger(`seeked`)}function R(){O=(b?.getAvailablePlaybackRates()??[]).length>1,S=!0,p.muted&&b?.mute(),p.volume!==void 0&&b?.setVolume(p.volume*100),C?I():w&&y.videoId&&(F(y.videoId),x=y.videoId)}function z(e){if(e===T||D!==null)return;T=e;let t=N();t!==E&&(E=t,g.trigger(t?`adstart`:`adend`));let n=window.YT;if(n){switch(e){case-1:g.trigger(`loadstart`),g.trigger(`loadedmetadata`),g.trigger(`durationchange`),g.trigger(`ratechange`);break;case n.PlayerState.ENDED:g.trigger(`ended`);break;case n.PlayerState.PLAYING:g.trigger(`timeupdate`),g.trigger(`durationchange`),g.trigger(`playing`),g.trigger(`play`),M.active&&L();break;case n.PlayerState.PAUSED:g.trigger(`canplay`),M.active||g.trigger(`pause`);break;case n.PlayerState.BUFFERING:g.trigger(`waiting`);break;case n.PlayerState.CUED:g.trigger(`canplay`);break}j&&=(clearInterval(j),null),e===n.PlayerState.PLAYING&&(j=setInterval(()=>g.trigger(`timeupdate`),250))}}function B(){let e={controls:+!!p.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!p.muted,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,autoplay:0,playsinline:1,...p.customVars};x=y.videoId,b=new window.YT.Player(_,{videoId:x??void 0,playerVars:e,events:{onReady:R,onStateChange:e=>z(e.data),onPlaybackRateChange:()=>g.trigger(`ratechange`),onVolumeChange:()=>g.trigger(`volumechange`),onError:e=>{D=e.data,g.trigger(`error`),k(()=>{D=null})}}})}f?B():m.push(B),p.autoplay?S?I():C=!0:y.videoId&&(w=!0);function V(){if(!b)return;let e=b.getCurrentTime(),{video_id:t}=b.getVideoData();b.pauseVideo();let{overlay:n,reveal:r,finish:a}=i(g),o=document.createElement(`div`);o.id=`yt-fs-${Math.random().toString(36).slice(2)}`,n.appendChild(o);let s=null,c=()=>{document.removeEventListener(`pointerdown`,l,!0),a(()=>{let t=s?.getCurrentTime()??e;try{s?.destroy()}catch{}b?.seekTo(t,!0),g.trigger(`timeupdate`)})};function l(){c()}s=new window.YT.Player(o.id,{videoId:t,playerVars:{playsinline:0,autoplay:0,controls:1,modestbranding:1,rel:0,start:Math.floor(e)},events:{onReady:t=>{r(),t.target.seekTo(e,!0),t.target.playVideo()},onStateChange:e=>{let t=window.YT;t&&(e.data===t.PlayerState.ENDED?c():e.data===t.PlayerState.PAUSED?(document.removeEventListener(`pointerdown`,l,!0),document.addEventListener(`pointerdown`,l,{capture:!0,once:!0})):(document.removeEventListener(`pointerdown`,l,!0),r()))}}})}function H(){t(l,()=>{if(!b)return!1;V()})}return{el:v,play:I,pause:()=>b?.pauseVideo(),paused:()=>{if(!b)return!0;let e=window.YT;return!e||!u(e,T)},currentTime:()=>b?.getCurrentTime()??0,setCurrentTime:e=>{if(!b)return;let t=window.YT;t&&T===t.PlayerState.PAUSED&&(M.timeBefore=b.getCurrentTime()),M.active||(M.wasPaused=!t||!u(t,T)),b.seekTo(e,!0),g.trigger(`timeupdate`),g.trigger(`seeking`),M.active=!0,t&&T===t.PlayerState.PAUSED&&M.timeBefore!==e&&(M.catchUpInterval&&clearInterval(M.catchUpInterval),M.catchUpInterval=setInterval(()=>{T!==t.PlayerState.PAUSED||!M.active?M.catchUpInterval&&clearInterval(M.catchUpInterval):b&&b.getCurrentTime()!==M.timeBefore&&(g.trigger(`timeupdate`),L())},250))},duration:()=>b?.getDuration()??0,volume:()=>b?b.getVolume()/100:1,setVolume:e=>b?.setVolume(e*100),muted:()=>b?.isMuted()??!1,setMuted:e=>{b&&(e?b.mute():b.unMute(),k(()=>g.trigger(`volumechange`),50))},playbackRate:()=>b?.getPlaybackRate()??1,setPlaybackRate:e=>b?.setPlaybackRate(e),bufferedEnd:()=>b?.getVideoLoadedFraction?b.getVideoLoadedFraction()*b.getDuration():0,error:()=>D===null?null:{code:D,message:`This video could not be played.`},setSrc:e=>{let t=d(e);y.videoId=t.videoId,y.listId=t.listId,y.videoId&&(S?(P(y.videoId),x=y.videoId):w=!0)},supportsPlaybackRate:()=>O,...s,enterFullscreen:H,exitFullscreen:o,on:g.on,off:g.off,dispose:()=>{if(A(),j&&clearInterval(j),M.catchUpInterval&&clearInterval(M.catchUpInterval),b)try{b.stopVideo(),b.destroy()}catch{}else{let e=m.indexOf(B);e!==-1&&m.splice(e,1)}b=null,c(l,v,e),g.dispose()}}}export{g as createYoutubeAdapter};
@@ -1 +0,0 @@
1
- const e=`video-select`,t=`video-toggle`,n=`video-state`,r=`fullscreen-pending`,i=`fullscreen-pending-done`,a=`player:positions`,o=`player:autoAdvance`,s=`player:audio`,c={muted:!1,volume:1},l=`mlv-tech`,u=`mlv-youtube`,d=`mlv-vimeo`,f=`mlv-dailymotion`,p=`mlv-ad-playing`,m=`mlv-ad-paused`,h=`16:9`,g=`application/x-mpegURL`,_=`application/dash+xml`,v=`video/mp4`,y=[g,v],b=[.5,.75,1,1.25,1.5,2],x=3500,S=.1,C=3e3,w=[[.25,`firstQuartile`],[.5,`midpoint`],[.75,`thirdQuartile`]],T=`https://imasdk.googleapis.com/js/sdkloader/ima3.js`,E=`https://player.vimeo.com/api/player.js`,D=`https://cdn.jwplayer.com/v2/media`,O=`https://edge.api.brightcove.com/playback/v1/accounts`,k=`https://players.brightcove.net`;export{t as A,y as C,E as D,a as E,e as O,C as S,o as T,d as _,c as a,b,T as c,m as d,p as f,l as g,i as h,h as i,n as k,D as l,r as m,k as n,g as o,f as p,_ as r,x as s,O as t,v as u,u as v,s as w,w as x,S as y};
@@ -1 +0,0 @@
1
- import{p as e}from"./constants-BUQXC_ZT.mjs";import{r as t}from"./embedShared-DgFZ58OV.mjs";import{t as n}from"./loadScript-Du6JsTc2.mjs";function r(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 i(i,a){let o=null;return t(i,a,{cssClass:e,connect:async({techId:e,emitter:t,state:i,isDisposed:s,consumeQueuedPlay:c})=>{let l=r(a.src);if(!l){i.errorState={code:4,message:`Could not parse video ID from source URL`},t.trigger(`error`);return}let u=!1;try{let r=typeof a.customVars?.playerId==`string`?a.customVars.playerId:void 0,d=await n(r?`https://geo.dailymotion.com/libs/player/${r}.js`:`https://geo.dailymotion.com/libs/player.js`,r||`dailymotion-sdk`).then(()=>window.dailymotion);if(!d||s())return;let f=await d.createPlayer(e,{...r&&{player:r},video:l,params:{autoplay:!!a.autoplay,mute:!!a.muted}});o=f,a.volume!==void 0&&f.setVolume(a.volume);let p=d.events;c(()=>o?.play()),f.on(p.PLAYER_CRITICALPATHREADY,e=>{let n=e.videoThumbnails;if(!n)return;let r=Object.keys(n).map(Number).sort((e,t)=>t-e)[0],i=r===void 0?void 0:n[r];i&&t.trigger(`posterchange`,i)}),f.on(p.VIDEO_PLAY,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`playing`),!a.autoplay&&!u&&(u=!0,f.pause())}),f.on(p.VIDEO_PLAYING,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`playing`)}),f.on(p.VIDEO_PAUSE,()=>{i.paused=!0,t.trigger(`pause`)}),p.VIDEO_BUFFERING&&f.on(p.VIDEO_BUFFERING,()=>t.trigger(`waiting`)),f.on(p.VIDEO_END,()=>{i.paused=!0,t.trigger(`ended`)}),f.on(p.VIDEO_TIMECHANGE,e=>{i.currentTime=e.videoTime??i.currentTime,i.duration=e.videoDuration??i.duration,t.trigger(`timeupdate`)}),f.on(p.VIDEO_DURATIONCHANGE,e=>{i.duration=e.videoDuration??i.duration,t.trigger(`durationchange`)}),f.on(p.VIDEO_SEEKSTART,()=>t.trigger(`seeking`)),f.on(p.VIDEO_SEEKEND,e=>{i.currentTime=e.videoTime??i.currentTime,t.trigger(`seeked`)}),f.on(p.PLAYER_VOLUMECHANGE,e=>{i.volume=e.playerVolume??i.volume,i.muted=e.playerIsMuted??i.muted,t.trigger(`volumechange`)}),f.on(p.PLAYER_ERROR,()=>t.trigger(`error`)),p.AD_START&&f.on(p.AD_START,()=>{i.paused=!1,t.trigger(`play`),t.trigger(`adstart`)}),p.AD_END&&f.on(p.AD_END,()=>t.trigger(`adend`))}catch(e){i.errorState={code:4,message:e instanceof Error?e.message:`This video could not be played.`},t.trigger(`error`)}},hasPlayer:()=>!!o,play:()=>o?.play(),pause:()=>o?.pause(),seekToSdk:e=>o?.seek(e),volumeToSdk:e=>o?.setVolume(e),muteToSdk:(e,t)=>o?.setMute(t),sdkFullscreenEnter:()=>o?.setFullscreen(!0),sdkFullscreenExit:()=>o?.setFullscreen(!1),destroyPlayer:()=>{let e=o;o=null,e?.destroy?.()}})}export{i as createDailymotionAdapter};
@@ -1 +0,0 @@
1
- import{g as e,h as t,m as n}from"./constants-BUQXC_ZT.mjs";import{n as r,r as i,t as a}from"./platform-Dg9JBh8M.mjs";function o(){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 s={supportsCaptions:()=>!1,getCaptionTracks:()=>[],setCaptionTrack:()=>{},getActiveCaptionTrack:()=>null,supportsQuality:()=>!1,getQualityLevels:()=>[],getCurrentQuality:()=>null,isAutoQuality:()=>!0,setQuality:()=>{},supportsPip:()=>!1,isPipActive:()=>!1,togglePip:()=>{}};let c=0;function l(t,n){t.parentElement?.classList.add(n);let r=`${n}-${++c}`,i=document.createElement(`div`);i.id=r,i.className=e,i.style.cssText=`width:100%;height:100%;top:0;left:0;position:absolute`;let a=document.createElement(`div`);return a.style.cssText=`width:100%;height:100%;position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity 0.2s`,a.appendChild(i),t.parentElement?.insertBefore(a,t),{techId:r,wrapper:a,innerDiv:i}}function u(e,t){e.style.display=`none`,t.style.opacity=`1`,t.style.pointerEvents=``}function d(e,t,n){t.remove(),e.parentElement?.classList.remove(n),e.style.display=``}function f(e){return e.closest(`.player__shell`)}function p(e,t){if(r()&&t()!==!1)return;let n=f(e);n&&i(n)}function m(){a()}function h(){let e=new Set;return{schedule(t,n=0){let r=setTimeout(()=>{e.delete(r),t()},n);e.add(r)},clearAll(){e.forEach(clearTimeout),e.clear()}}}function g(e){e.trigger(n);let r=document.createElement(`div`);r.style.cssText=`position:fixed;inset:0;z-index:99999;opacity:0;pointer-events:none`,document.body.appendChild(r);let i=!1;function a(){i||e.trigger(t)}function o(n){i||(i=!0,e.trigger(t),r.remove(),n?.())}return{overlay:r,reveal:a,finish:o}}function _(e,t,n){let i=o(),{techId:c,wrapper:u}=l(e,n.cssClass),{schedule:f,clearAll:m}=h(),g={currentTime:0,duration:0,volume:t.volume??1,muted:!1,paused:!0,playQueued:!1,errorState:null},_=!1,v={techId:c,wrapper:u,emitter:i,state:g,schedule:f,isDisposed:()=>_,consumeQueuedPlay(e){g.playQueued&&(g.playQueued=!1,e())}};n.connect(v);function y(){p(e,()=>{if(!n.sdkFullscreenEnter)return!1;n.sdkFullscreenEnter()})}function b(){if(r()&&n.sdkFullscreenExit){n.sdkFullscreenExit();return}a()}return{el:u,play:()=>{n.hasPlayer()?n.play():g.playQueued=!0},pause:()=>n.pause(),paused:()=>g.paused,currentTime:()=>g.currentTime,setCurrentTime:e=>{if(n.setCurrentTime){n.setCurrentTime(v,e);return}g.currentTime=e,n.seekToSdk?.(e),i.trigger(`seeking`)},duration:()=>g.duration,volume:()=>g.volume,setVolume:e=>{g.volume=e,n.volumeToSdk(e)},muted:()=>g.muted,setMuted:e=>{g.muted=e,n.muteToSdk(v,e)},...n.rate?n.rate(v):{playbackRate:()=>1,setPlaybackRate:()=>{}},bufferedEnd:()=>g.currentTime,error:()=>g.errorState,setSrc:()=>{},supportsPlaybackRate:()=>!1,...s,enterFullscreen:y,exitFullscreen:b,on:i.on,off:i.off,dispose:()=>{_=!0,m(),n.destroyPlayer(),d(e,u,n.cssClass),i.dispose()}}}export{p as a,u as c,o as d,h as i,g as l,l as n,m as o,_ as r,f as s,s as t,d as u};
@@ -1 +0,0 @@
1
- import{l as e,o as t,u as n}from"./constants-BUQXC_ZT.mjs";import{n as r,t as i}from"./sourceHelpers-CAGxjbbu.mjs";function a(e){return e.match(/cdn\.jwplayer\.com\/videos\/([^-]+)/)?.[1]??e.match(/cdn\.jwplayer\.com\/manifests\/([^.]+)/)?.[1]??e.match(/^jwplayer:\/\/([^/]+)$/)?.[1]??null}function o(e){let t=e?.advertising?.schedule;return Array.isArray(t)&&t.length?t[0].tag??null:e?.advertising?.tag??null}const s=i(async t=>{let n=await fetch(`${e}/${t}`);if(!n.ok)throw Error(`JW Platform API error: ${n.status}`);let i=(await n.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:o(i)}});async function c(e){let r=a(e);if(!r)throw Error(`JW Platform: unrecognised source URL: ${e}`);let i=await s(r);if(e.startsWith(`jwplayer://`))return i;let o=/\.mp4(\?|#|$)/.test(e)?n:t;return{...i,src:e,type:o}}export{c as resolveSource};
@@ -1 +0,0 @@
1
- import{v as e}from"./constants-BUQXC_ZT.mjs";import{a as t,d as n,i as r,l as i,n as a,o,t as s,u as c}from"./embedShared-DgFZ58OV.mjs";import{t as l}from"./loadScript-Du6JsTc2.mjs";function u(e,t){return t===e.PlayerState.PLAYING||t===e.PlayerState.BUFFERING}function d(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 f=!1,p=!1;const m=[];function h(){p||(p=!0,l(`https://www.youtube.com/iframe_api`).then(()=>{window.YT?.ready(()=>{f=!0,m.forEach(e=>e()),m.length=0})}))}function g(l,p){h();let g=n(),{techId:_,wrapper:v}=a(l,e),y=d(p.src),b=null,x=y.videoId,S=!1,C=!1,w=!1,T=null,E=!1,D=null,O=!1,{schedule:k,clearAll:A}=r(),j=null,M={active:!1,wasPaused:!1,timeBefore:0,catchUpInterval:null};function N(){try{let e=b?.getPlayerResponse()?.adPlacements;return Array.isArray(e)&&e.length>0}catch{return!1}}function P(e){b?.loadVideoById({videoId:e})}function F(e){b?.cueVideoById({videoId:e})}function I(){y.videoId&&(M.wasPaused=!1,S?x===y.videoId?b?.playVideo():(P(y.videoId),x=y.videoId):(g.trigger(`waiting`),C=!0))}function L(){M.catchUpInterval&&clearInterval(M.catchUpInterval),M.active=!1,M.wasPaused&&b?.pauseVideo(),g.trigger(`seeked`)}function R(){O=(b?.getAvailablePlaybackRates()??[]).length>1,S=!0,p.muted&&b?.mute(),p.volume!==void 0&&b?.setVolume(p.volume*100),C?I():w&&y.videoId&&(F(y.videoId),x=y.videoId)}function z(e){if(e===T||D!==null)return;T=e;let t=N();t!==E&&(E=t,g.trigger(t?`adstart`:`adend`));let n=window.YT;if(n){switch(e){case-1:g.trigger(`loadstart`),g.trigger(`loadedmetadata`),g.trigger(`durationchange`),g.trigger(`ratechange`);break;case n.PlayerState.ENDED:g.trigger(`ended`);break;case n.PlayerState.PLAYING:g.trigger(`timeupdate`),g.trigger(`durationchange`),g.trigger(`playing`),g.trigger(`play`),M.active&&L();break;case n.PlayerState.PAUSED:g.trigger(`canplay`),M.active||g.trigger(`pause`);break;case n.PlayerState.BUFFERING:g.trigger(`waiting`);break;case n.PlayerState.CUED:g.trigger(`canplay`);break}j&&=(clearInterval(j),null),e===n.PlayerState.PLAYING&&(j=setInterval(()=>g.trigger(`timeupdate`),250))}}function B(){let e={controls:+!!p.nativeUi,modestbranding:1,rel:0,showinfo:0,mute:+!!p.muted,origin:window.location.origin,allowfullscreen:1,fullscreen:1,fs:1,autoplay:0,playsinline:1,...p.customVars};x=y.videoId,b=new window.YT.Player(_,{videoId:x??void 0,playerVars:e,events:{onReady:R,onStateChange:e=>z(e.data),onPlaybackRateChange:()=>g.trigger(`ratechange`),onVolumeChange:()=>g.trigger(`volumechange`),onError:e=>{D=e.data,g.trigger(`error`),k(()=>{D=null})}}})}f?B():m.push(B),p.autoplay?S?I():C=!0:y.videoId&&(w=!0);function V(){if(!b)return;let e=b.getCurrentTime(),{video_id:t}=b.getVideoData();b.pauseVideo();let{overlay:n,reveal:r,finish:a}=i(g),o=document.createElement(`div`);o.id=`yt-fs-${Math.random().toString(36).slice(2)}`,n.appendChild(o);let s=null,c=()=>{document.removeEventListener(`pointerdown`,l,!0),a(()=>{let t=s?.getCurrentTime()??e;try{s?.destroy()}catch{}b?.seekTo(t,!0),g.trigger(`timeupdate`)})};function l(){c()}s=new window.YT.Player(o.id,{videoId:t,playerVars:{playsinline:0,autoplay:0,controls:1,modestbranding:1,rel:0,start:Math.floor(e)},events:{onReady:t=>{r(),t.target.seekTo(e,!0),t.target.playVideo()},onStateChange:e=>{let t=window.YT;t&&(e.data===t.PlayerState.ENDED?c():e.data===t.PlayerState.PAUSED?(document.removeEventListener(`pointerdown`,l,!0),document.addEventListener(`pointerdown`,l,{capture:!0,once:!0})):(document.removeEventListener(`pointerdown`,l,!0),r()))}}})}function H(){t(l,()=>{if(!b)return!1;V()})}return{el:v,play:I,pause:()=>b?.pauseVideo(),paused:()=>{if(!b)return!0;let e=window.YT;return!e||!u(e,T)},currentTime:()=>b?.getCurrentTime()??0,setCurrentTime:e=>{if(!b)return;let t=window.YT;t&&T===t.PlayerState.PAUSED&&(M.timeBefore=b.getCurrentTime()),M.active||(M.wasPaused=!t||!u(t,T)),b.seekTo(e,!0),g.trigger(`timeupdate`),g.trigger(`seeking`),M.active=!0,t&&T===t.PlayerState.PAUSED&&M.timeBefore!==e&&(M.catchUpInterval&&clearInterval(M.catchUpInterval),M.catchUpInterval=setInterval(()=>{T!==t.PlayerState.PAUSED||!M.active?M.catchUpInterval&&clearInterval(M.catchUpInterval):b&&b.getCurrentTime()!==M.timeBefore&&(g.trigger(`timeupdate`),L())},250))},duration:()=>b?.getDuration()??0,volume:()=>b?b.getVolume()/100:1,setVolume:e=>b?.setVolume(e*100),muted:()=>b?.isMuted()??!1,setMuted:e=>{b&&(e?b.mute():b.unMute(),k(()=>g.trigger(`volumechange`),50))},playbackRate:()=>b?.getPlaybackRate()??1,setPlaybackRate:e=>b?.setPlaybackRate(e),bufferedEnd:()=>b?.getVideoLoadedFraction?b.getVideoLoadedFraction()*b.getDuration():0,error:()=>D===null?null:{code:D,message:`This video could not be played.`},setSrc:e=>{let t=d(e);y.videoId=t.videoId,y.listId=t.listId,y.videoId&&(S?(P(y.videoId),x=y.videoId):w=!0)},supportsPlaybackRate:()=>O,...s,enterFullscreen:H,exitFullscreen:o,on:g.on,off:g.off,dispose:()=>{if(A(),j&&clearInterval(j),M.catchUpInterval&&clearInterval(M.catchUpInterval),b)try{b.stopVideo(),b.destroy()}catch{}else{let e=m.indexOf(B);e!==-1&&m.splice(e,1)}b=null,c(l,v,e),g.dispose()}}}export{g as createYoutubeAdapter};