@munsonlabs/video-player 0.1.6 → 0.2.0

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 (36) hide show
  1. package/README.md +160 -21
  2. package/dist/chunks/ads-msms49DK.mjs +1 -0
  3. package/dist/chunks/brightcove-CIqE1989.mjs +1 -0
  4. package/dist/chunks/constants-DRD0PsRw.mjs +1 -0
  5. package/dist/chunks/dailymotion-wD02TK0C.mjs +1 -0
  6. package/dist/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  7. package/dist/chunks/jwplayer-Dv826deA.mjs +1 -0
  8. package/dist/chunks/loadScript-Du6JsTc2.mjs +1 -0
  9. package/dist/chunks/prebid-RHDT0DOX.mjs +1 -0
  10. package/dist/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  11. package/dist/chunks/vimeo-SrHhodcx.mjs +1 -0
  12. package/dist/chunks/youtube-Boz9Goek.mjs +1 -0
  13. package/dist/elements/chunks/ads-msms49DK.mjs +1 -0
  14. package/dist/elements/chunks/brightcove-CIqE1989.mjs +1 -0
  15. package/dist/elements/chunks/constants-DRD0PsRw.mjs +1 -0
  16. package/dist/elements/chunks/dailymotion-wD02TK0C.mjs +1 -0
  17. package/dist/elements/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  18. package/dist/elements/chunks/jwplayer-Dv826deA.mjs +1 -0
  19. package/dist/elements/chunks/loadScript-Du6JsTc2.mjs +1 -0
  20. package/dist/elements/chunks/prebid-RHDT0DOX.mjs +1 -0
  21. package/dist/elements/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  22. package/dist/elements/chunks/vimeo-SrHhodcx.mjs +1 -0
  23. package/dist/elements/chunks/youtube-Boz9Goek.mjs +1 -0
  24. package/dist/elements/controls.css +1 -1
  25. package/dist/elements/controls.d.mts +28 -49
  26. package/dist/elements/controls.mjs +1 -1
  27. package/dist/elements/core.css +1 -1
  28. package/dist/elements/core.d.mts +105 -5
  29. package/dist/elements/core.mjs +1 -1
  30. package/dist/elements/index.d.mts +118 -52
  31. package/dist/elements/index.mjs +1 -1
  32. package/dist/elements/style.css +1 -1
  33. package/dist/index.d.mts +298 -286
  34. package/dist/index.mjs +1 -1
  35. package/dist/style.css +1 -1
  36. package/package.json +3 -2
@@ -1 +1 @@
1
- import{Fragment as e,computed as t,createBlock as n,createCommentVNode as r,createElementBlock as i,createElementVNode as a,createTextVNode as o,createVNode as s,defineComponent as c,defineCustomElement as l,mergeProps as u,normalizeClass as d,normalizeStyle as f,onBeforeUnmount as p,openBlock as m,ref as h,renderSlot as g,toDisplayString as _,toRef as v,unref as y,watch as ee}from"vue";const b=[.5,.75,1,1.25,1.5,2];function te(e){let n=h(!1),r=h(null),i=!1,a=null,o=t(()=>{let t=e.value;return t?.total?t.current/t.total*100:0}),s=t(()=>r.value??o.value),c=t(()=>r.value!==null),l=t(()=>{let t=e.value?.total??0;return s.value/100*t});function u(){a&&clearTimeout(a),a=null,r.value=null}function d(t){let o=e.value;o?.total&&(n.value||=(i=o.isPlaying,o.isPlaying&&o.togglePlay(),!0),a&&clearTimeout(a),a=null,r.value=Number(t.target.value))}function f(t){if(!n.value)return;n.value=!1;let o=e.value;if(!o)return;let s=Number(t.target.value);r.value=s,o.seek(s),i&&o.togglePlay(),a&&clearTimeout(a),a=setTimeout(u,3e3)}return ee(()=>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&&u()}),p(u),{scrubbing:c,displayPercent:s,previewSeconds:l,onInput:d,onChange:f}}function x(e,n){return t(()=>e.value?e.value:n.value?document.getElementById(n.value)??null:null)}function S(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 ne={class:`mvp-scrubber-wrap`},re=[`value`];var ie=c({inheritAttrs:!1,__name:`Scrubber`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=x(v(t,`player`),v(t,`for`)),{scrubbing:o,displayPercent:s,previewSeconds:c,onInput:l,onChange:d}=te(n),p=e=>S(e,!0);return(e,t)=>(m(),i(`div`,ne,[a(`input`,u({type:`range`,min:`0`,max:`100`,step:`0.1`,value:y(s),class:`mvp-scrubber`},e.$attrs,{style:{"--p":`${y(s)}%`,"--b":`${y(n)?.bufferedDisplay??0}%`},onInput:t[0]||=(...e)=>y(l)&&y(l)(...e),onChange:t[1]||=(...e)=>y(d)&&y(d)(...e)}),null,16,re),g(e.$slots,`preview`,{scrubbing:y(o),percent:y(s),previewSeconds:y(c),formatTime:p},()=>[y(o)?(m(),i(`div`,{key:0,class:`mvp-scrubber__preview`,style:f({left:`${y(s)}%`})},_(p(y(c))),5)):r(`v-if`,!0)],!0)]))}}),C=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},ae=C(ie,[[`__scopeId`,`data-v-043f1bc8`]]);const oe={},se={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function ce(e,t){return m(),i(`svg`,se,[...t[0]||=[a(`rect`,{x:`2`,y:`5`,width:`20`,height:`14`,rx:`2`},null,-1),a(`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),a(`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 le=C(oe,[[`render`,ce]]);const ue={},de={viewBox:`0 0 24 24`,fill:`currentColor`};function fe(e,t){return m(),i(`svg`,de,[...t[0]||=[a(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var pe=C(ue,[[`render`,fe]]);const w={},T={viewBox:`0 0 24 24`,fill:`currentColor`};function E(e,t){return m(),i(`svg`,T,[...t[0]||=[a(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var D=C(w,[[`render`,E]]);const O={},k={viewBox:`0 0 24 24`,fill:`currentColor`};function A(e,t){return m(),i(`svg`,k,[...t[0]||=[a(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var j=C(O,[[`render`,A]]);const M={},N={viewBox:`0 0 24 24`,fill:`currentColor`};function P(e,t){return m(),i(`svg`,N,[...t[0]||=[a(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var F=C(M,[[`render`,P]]);const I={},L={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function R(e,t){return m(),i(`svg`,L,[...t[0]||=[a(`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`},null,-1),a(`rect`,{x:`12`,y:`11`,width:`8`,height:`6`,rx:`1`,fill:`currentColor`,stroke:`none`},null,-1)]])}var z=C(I,[[`render`,R]]);const B={},me={viewBox:`0 0 24 24`,fill:`currentColor`};function he(e,t){return m(),i(`svg`,me,[...t[0]||=[a(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var ge=C(B,[[`render`,he]]);const _e={},ve={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function ye(e,t){return m(),i(`svg`,ve,[...t[0]||=[a(`rect`,{x:`2`,y:`6`,width:`20`,height:`12`,rx:`2`},null,-1),a(`path`,{d:`M7 14v-4M12 14V8M17 14v-2`},null,-1)]])}var be=C(_e,[[`render`,ye]]);const xe={},Se={viewBox:`0 0 24 24`,fill:`currentColor`};function Ce(e,t){return m(),i(`svg`,Se,[...t[0]||=[a(`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 we=C(xe,[[`render`,Ce]]);const Te={},Ee={viewBox:`0 0 24 24`,fill:`currentColor`};function De(e,t){return m(),i(`svg`,Ee,[...t[0]||=[a(`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 Oe=C(Te,[[`render`,De]]);const ke={},Ae={viewBox:`0 0 24 24`,fill:`currentColor`};function V(e,t){return m(),i(`svg`,Ae,[...t[0]||=[a(`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 je=C(ke,[[`render`,V]]);const Me=[`aria-label`];var Ne=C(c({__name:`PlayButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let r=e,a=x(v(r,`player`),v(r,`for`)),o=t(()=>a.value?.isError?`error`:a.value?.hasEnded?`ended`:a.value?.isPlaying?`playing`:`idle`),s=t(()=>{switch(o.value){case`error`:return`Retry`;case`ended`:return`Replay`;case`playing`:return`Pause`;default:return`Play`}});function c(){let e=a.value;e&&(e.isError?e.retry():e.togglePlay())}return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-play-button`,"aria-label":s.value,onClick:c},[g(e.$slots,`default`,{isPlaying:y(a)?.isPlaying??!1,hasEnded:y(a)?.hasEnded??!1,isError:y(a)?.isError??!1},()=>[o.value===`error`||o.value===`ended`?(m(),n(y(we),{key:0})):o.value===`playing`?(m(),n(y(F),{key:1})):(m(),n(y(ge),{key:2}))],!0)],8,Me))}}),[[`__scopeId`,`data-v-218255bd`]]),Pe=c({__name:`VolumeIcon`,props:{isAudible:{type:Boolean,required:!0}},setup(e){return(t,r)=>e.isAudible?(m(),n(y(je),{key:0})):(m(),n(y(Oe),{key:1}))}});const Fe=[`aria-label`];var Ie=C(c({__name:`MuteButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=x(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-mute-button`,"aria-label":y(n)?.isMuted?`Unmute`:`Mute`,onClick:t[0]||=e=>y(n)?.toggleMute()},[g(e.$slots,`default`,{isMuted:y(n)?.isMuted??!1},()=>[s(Pe,{"is-audible":y(n)?.isAudible??!1},null,8,[`is-audible`])],!0)],8,Fe))}}),[[`__scopeId`,`data-v-1940b598`]]);const Le=[`aria-label`];var Re=C(c({__name:`FullscreenButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,r=x(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-fullscreen-button`,"aria-label":y(r)?.isFullscreen?`Exit fullscreen`:`Enter fullscreen`,onClick:t[0]||=e=>y(r)?.toggleFullscreen()},[g(e.$slots,`default`,{isFullscreen:y(r)?.isFullscreen??!1},()=>[y(r)?.isFullscreen?(m(),n(y(D),{key:0})):(m(),n(y(pe),{key:1}))],!0)],8,Le))}}),[[`__scopeId`,`data-v-b93a5017`]]),ze=C(c({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(m(),i(`div`,{class:`spinner`,style:f({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Be={key:0,class:`mvp-buffering`};var Ve=C(c({__name:`Buffering`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=x(v(t,`player`),v(t,`for`));return(e,t)=>y(n)?.isBuffering?(m(),i(`div`,Be,[g(e.$slots,`default`,{},()=>[s(ze)],!0)])):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-454fec7f`]]);const He=[`aria-pressed`];var Ue=C(c({__name:`LoopButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=x(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:d([`mvp-loop-button`,{"mvp-loop-button--active":y(n)?.isLooping}]),"aria-pressed":y(n)?.isLooping??!1,"aria-label":`Toggle loop`,onClick:t[0]||=e=>y(n)?.toggleLoop()},[g(e.$slots,`default`,{isLooping:y(n)?.isLooping??!1},()=>[s(y(j))],!0)],10,He))}}),[[`__scopeId`,`data-v-e32eda25`]]);const We=[`aria-pressed`];var Ge=C(c({__name:`PipButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=x(v(t,`player`),v(t,`for`));return(e,t)=>y(n)?.supportsPip?(m(),i(`button`,{key:0,type:`button`,class:d([`mvp-pip-button`,{"mvp-pip-button--active":y(n)?.isPipActive}]),"aria-pressed":y(n)?.isPipActive??!1,"aria-label":`Toggle Picture-in-Picture`,onClick:t[0]||=e=>y(n)?.togglePip()},[g(e.$slots,`default`,{isPipActive:y(n)?.isPipActive??!1},()=>[s(y(z))],!0)],10,We)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-f654d93e`]]);function Ke(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}}const qe=[`aria-label`];var Je=C(c({__name:`CaptionsButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=x(v(n,`player`),v(n,`for`)),o=t(()=>a.value?Ke(a.value):null),c=t(()=>o.value?.currentCaptionLabel()??`Off`);function l(){o.value?.cycleCaptionTrack()}return(e,t)=>y(a)?.supportsCaptions?(m(),i(`button`,{key:0,type:`button`,class:d([`mvp-captions-button`,{"mvp-captions-button--active":y(a)?.activeCaptionIndex!==null}]),"aria-label":`Captions: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,tracks:y(a)?.captionTracks??[],activeIndex:y(a)?.activeCaptionIndex??null},()=>[s(y(le))],!0)],10,qe)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-2572c4f2`]]);function Ye(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 Xe=[`aria-label`];var Ze=C(c({__name:`QualityButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=x(v(n,`player`),v(n,`for`)),o=t(()=>a.value?Ye(a.value):null),c=t(()=>o.value?.currentQualityLabel()??`Auto`);function l(){o.value?.cycleQuality()}return(e,t)=>y(a)?.supportsQuality?(m(),i(`button`,{key:0,type:`button`,class:d([`mvp-quality-button`,{"mvp-quality-button--active":!y(a)?.isAutoQuality}]),"aria-label":`Quality: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,levels:y(a)?.qualityLevels??[],currentIndex:y(a)?.currentQualityIndex??null,isAuto:y(a)?.isAutoQuality??!0},()=>[s(y(be))],!0)],10,Xe)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-d1352878`]]);function Qe(e){function t(){let t=b.indexOf(e.playbackRate);e.setPlaybackRate(b[(t+1)%b.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}const $e=[`aria-label`];var et=C(c({__name:`PlaybackRateButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=x(v(n,`player`),v(n,`for`)),s=t(()=>a.value?Qe(a.value):null),c=t(()=>s.value?s.value.fmtRate(a.value.playbackRate):`1×`);function l(){s.value?.cycleRate()}return(e,t)=>y(a)?.supportsPlaybackRate?(m(),i(`button`,{key:0,type:`button`,class:d([`mvp-playback-rate-button`,{"mvp-playback-rate-button--active":y(a)?.playbackRate!==1}]),"aria-label":`Playback speed: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,rate:y(a)?.playbackRate??1,rates:[...y(b)]},()=>[o(_(c.value),1)],!0)],10,$e)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-646c9bc1`]]);const tt={class:`mvp-volume-wrap`},nt=[`value`],rt={class:`mvp-volume-pct`};var it=C(c({inheritAttrs:!1,__name:`VolumeSlider`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,r=x(v(n,`player`),v(n,`for`)),o=t(()=>{let e=r.value;return e?e.isMuted?0:Math.round(e.vol*100):0});function s(e){r.value?.setVolume(Number(e.target.value)/100)}return(e,t)=>(m(),i(`div`,tt,[a(`input`,u({type:`range`,min:`0`,max:`100`,step:`1`,value:o.value,class:`mvp-volume-slider`},e.$attrs,{style:{"--v":`${o.value}%`},"aria-label":`Volume`,onInput:s}),null,16,nt),g(e.$slots,`default`,{percent:o.value},()=>[a(`span`,rt,_(o.value)+`%`,1)],!0)]))}}),[[`__scopeId`,`data-v-fbb2c86c`]]),at=C(c({__name:`TimeDisplay`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(t){let n=t,r=x(v(n,`player`),v(n,`for`));return(t,n)=>(m(),i(`span`,{class:d([`mvp-time-display`,{"mvp-time-display--live":y(r)?.isLive}])},[g(t.$slots,`default`,{isLive:y(r)?.isLive??!1,current:y(r)?.current??0,total:y(r)?.total??0,formatTime:y(S)},()=>[y(r)?.isLive?(m(),i(e,{key:0},[n[0]||=a(`span`,{class:`mvp-time-display__dot`},null,-1),n[1]||=o(`Live `,-1)],64)):(m(),i(e,{key:1},[o(_(y(S)(y(r)?.current??0))+` / `+_(y(S)(y(r)?.total??0)),1)],64))],!0)],2))}}),[[`__scopeId`,`data-v-0285c811`]]);const H=l(ae,{shadowRoot:!1}),U=l(Ne,{shadowRoot:!1}),W=l(Ie,{shadowRoot:!1}),G=l(Re,{shadowRoot:!1}),K=l(Ve,{shadowRoot:!1}),q=l(Ue,{shadowRoot:!1}),J=l(Ge,{shadowRoot:!1}),Y=l(Je,{shadowRoot:!1}),X=l(Ze,{shadowRoot:!1}),Z=l(et,{shadowRoot:!1}),Q=l(it,{shadowRoot:!1}),$=l(at,{shadowRoot:!1});customElements.define(`muns-controls-scrubber`,H),customElements.define(`muns-controls-play-button`,U),customElements.define(`muns-controls-mute-button`,W),customElements.define(`muns-controls-fullscreen-button`,G),customElements.define(`muns-controls-buffering`,K),customElements.define(`muns-controls-loop-button`,q),customElements.define(`muns-controls-pip-button`,J),customElements.define(`muns-controls-captions-button`,Y),customElements.define(`muns-controls-quality-button`,X),customElements.define(`muns-controls-playback-rate-button`,Z),customElements.define(`muns-controls-volume-slider`,Q),customElements.define(`muns-controls-time-display`,$);export{K as BufferingElement,Y as CaptionsButtonElement,G as FullscreenButtonElement,q as LoopButtonElement,W as MuteButtonElement,J as PipButtonElement,U as PlayButtonElement,Z as PlaybackRateButtonElement,X as QualityButtonElement,H as ScrubberElement,$ as TimeDisplayElement,Q as VolumeSliderElement};
1
+ import{Fragment as e,computed as t,createBlock as n,createCommentVNode as r,createElementBlock as i,createElementVNode as a,createTextVNode as o,createVNode as s,defineComponent as c,defineCustomElement as l,mergeProps as u,nextTick as d,normalizeClass as f,normalizeStyle as p,onBeforeUnmount as ee,openBlock as m,ref as h,renderList as te,renderSlot as g,toDisplayString as _,toRef as v,unref as y,watch as b}from"vue";const x=[.5,.75,1,1.25,1.5,2];function ne(e){let n=h(!1),r=h(null),i=!1,a=null,o=t(()=>{let t=e.value;return t?.total?t.current/t.total*100:0}),s=t(()=>r.value??o.value),c=t(()=>r.value!==null),l=t(()=>{let t=e.value?.total??0;return s.value/100*t});function u(){a&&clearTimeout(a),a=null}function d(){u(),r.value=null}function f(t){let a=e.value;a?.total&&(n.value||=(i=a.isPlaying,a.isPlaying&&a.togglePlay(),!0),u(),r.value=Number(t.target.value))}function p(t){if(!n.value)return;n.value=!1;let o=e.value;if(!o)return;let s=Number(t.target.value);r.value=s,o.seek(s),i&&o.togglePlay(),u(),a=setTimeout(d,3e3)}return b(()=>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&&d()}),ee(d),{scrubbing:c,displayPercent:s,previewSeconds:l,onInput:f,onChange:p}}function S(e,n){return t(()=>e.value?e.value:n.value?document.getElementById(n.value)??null:null)}function C(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 re={class:`mvp-scrubber-wrap`},ie=[`value`];var ae=c({inheritAttrs:!1,__name:`Scrubber`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=S(v(t,`player`),v(t,`for`)),{scrubbing:o,displayPercent:s,previewSeconds:c,onInput:l,onChange:d}=ne(n),f=e=>C(e,!0);return(e,t)=>(m(),i(`div`,re,[a(`input`,u({type:`range`,min:`0`,max:`100`,step:`0.1`,value:y(s),class:`mvp-scrubber`},e.$attrs,{style:{"--p":`${y(s)}%`,"--b":`${y(n)?.bufferedDisplay??0}%`},onInput:t[0]||=(...e)=>y(l)&&y(l)(...e),onChange:t[1]||=(...e)=>y(d)&&y(d)(...e)}),null,16,ie),g(e.$slots,`preview`,{scrubbing:y(o),percent:y(s),previewSeconds:y(c),formatTime:f},()=>[y(o)?(m(),i(`div`,{key:0,class:`mvp-scrubber__preview`,style:p({left:`${y(s)}%`})},_(f(y(c))),5)):r(`v-if`,!0)],!0)]))}}),w=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},oe=w(ae,[[`__scopeId`,`data-v-043f1bc8`]]);const se={},ce={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function le(e,t){return m(),i(`svg`,ce,[...t[0]||=[a(`rect`,{x:`2`,y:`5`,width:`20`,height:`14`,rx:`2`},null,-1),a(`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),a(`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 ue=w(se,[[`render`,le]]);const de={},fe={viewBox:`0 0 24 24`,fill:`currentColor`};function pe(e,t){return m(),i(`svg`,fe,[...t[0]||=[a(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`},null,-1)]])}var me=w(de,[[`render`,pe]]);const T={},E={viewBox:`0 0 24 24`,fill:`currentColor`};function D(e,t){return m(),i(`svg`,E,[...t[0]||=[a(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`},null,-1)]])}var O=w(T,[[`render`,D]]);const k={},A={viewBox:`0 0 24 24`,fill:`currentColor`};function j(e,t){return m(),i(`svg`,A,[...t[0]||=[a(`path`,{d:`M7 7h10v3l4-4-4-4v3H5v6h2V7zm10 10H7v-3l-4 4 4 4v-3h12v-6h-2v4z`},null,-1)]])}var M=w(k,[[`render`,j]]);const N={},P={viewBox:`0 0 24 24`,fill:`currentColor`};function F(e,t){return m(),i(`svg`,P,[...t[0]||=[a(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`},null,-1)]])}var I=w(N,[[`render`,F]]);const L={},R={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function z(e,t){return m(),i(`svg`,R,[...t[0]||=[a(`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`},null,-1),a(`rect`,{x:`12`,y:`11`,width:`8`,height:`6`,rx:`1`,fill:`currentColor`,stroke:`none`},null,-1)]])}var he=w(L,[[`render`,z]]);const ge={},_e={viewBox:`0 0 24 24`,fill:`currentColor`};function ve(e,t){return m(),i(`svg`,_e,[...t[0]||=[a(`path`,{d:`M8 5v14l11-7z`},null,-1)]])}var ye=w(ge,[[`render`,ve]]);const be={},xe={viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Se(e,t){return m(),i(`svg`,xe,[...t[0]||=[a(`rect`,{x:`2`,y:`6`,width:`20`,height:`12`,rx:`2`},null,-1),a(`path`,{d:`M7 14v-4M12 14V8M17 14v-2`},null,-1)]])}var Ce=w(be,[[`render`,Se]]);const we={},Te={viewBox:`0 0 24 24`,fill:`currentColor`};function Ee(e,t){return m(),i(`svg`,Te,[...t[0]||=[a(`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 De=w(we,[[`render`,Ee]]);const Oe={},ke={viewBox:`0 0 24 24`,fill:`currentColor`};function Ae(e,t){return m(),i(`svg`,ke,[...t[0]||=[a(`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 je=w(Oe,[[`render`,Ae]]);const Me={},Ne={viewBox:`0 0 24 24`,fill:`currentColor`};function Pe(e,t){return m(),i(`svg`,Ne,[...t[0]||=[a(`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 Fe=w(Me,[[`render`,Pe]]);const Ie=[`aria-label`];var B=w(c({__name:`PlayButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let r=e,a=S(v(r,`player`),v(r,`for`)),o=t(()=>a.value?.isError?`error`:a.value?.hasEnded?`ended`:a.value?.isPlaying?`playing`:`idle`),s=t(()=>{switch(o.value){case`error`:return`Retry`;case`ended`:return`Replay`;case`playing`:return`Pause`;default:return`Play`}});function c(){let e=a.value;e&&(e.isError?e.retry():e.togglePlay())}return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-play-button`,"aria-label":s.value,onClick:c},[g(e.$slots,`default`,{isPlaying:y(a)?.isPlaying??!1,hasEnded:y(a)?.hasEnded??!1,isError:y(a)?.isError??!1},()=>[o.value===`error`||o.value===`ended`?(m(),n(y(De),{key:0})):o.value===`playing`?(m(),n(y(I),{key:1})):(m(),n(y(ye),{key:2}))],!0)],8,Ie))}}),[[`__scopeId`,`data-v-218255bd`]]),Le=c({__name:`VolumeIcon`,props:{isAudible:{type:Boolean,required:!0}},setup(e){return(t,r)=>e.isAudible?(m(),n(y(Fe),{key:0})):(m(),n(y(je),{key:1}))}});const Re=[`aria-label`];var ze=w(c({__name:`MuteButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=S(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-mute-button`,"aria-label":y(n)?.isMuted?`Unmute`:`Mute`,onClick:t[0]||=e=>y(n)?.toggleMute()},[g(e.$slots,`default`,{isMuted:y(n)?.isMuted??!1},()=>[s(Le,{"is-audible":y(n)?.isAudible??!1},null,8,[`is-audible`])],!0)],8,Re))}}),[[`__scopeId`,`data-v-1940b598`]]);const Be=[`aria-label`];var Ve=w(c({__name:`FullscreenButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,r=S(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:`mvp-fullscreen-button`,"aria-label":y(r)?.isFullscreen?`Exit fullscreen`:`Enter fullscreen`,onClick:t[0]||=e=>y(r)?.toggleFullscreen()},[g(e.$slots,`default`,{isFullscreen:y(r)?.isFullscreen??!1},()=>[y(r)?.isFullscreen?(m(),n(y(O),{key:0})):(m(),n(y(me),{key:1}))],!0)],8,Be))}}),[[`__scopeId`,`data-v-b93a5017`]]),He=w(c({__name:`Spinner`,props:{size:{type:Number,required:!1,default:14},borderWidth:{type:Number,required:!1,default:2}},setup(e){return(t,n)=>(m(),i(`div`,{class:`spinner`,style:p({width:`${e.size}px`,height:`${e.size}px`,borderWidth:`${e.borderWidth}px`})},null,4))}}),[[`__scopeId`,`data-v-259be2b2`]]);const Ue={key:0,class:`mvp-buffering`};var We=w(c({__name:`Buffering`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=S(v(t,`player`),v(t,`for`));return(e,t)=>y(n)?.isBuffering?(m(),i(`div`,Ue,[g(e.$slots,`default`,{},()=>[s(He)],!0)])):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-454fec7f`]]);const Ge=[`aria-pressed`];var Ke=w(c({__name:`LoopButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=S(v(t,`player`),v(t,`for`));return(e,t)=>(m(),i(`button`,{type:`button`,class:f([`mvp-loop-button`,{"mvp-loop-button--active":y(n)?.isLooping}]),"aria-pressed":y(n)?.isLooping??!1,"aria-label":`Toggle loop`,onClick:t[0]||=e=>y(n)?.toggleLoop()},[g(e.$slots,`default`,{isLooping:y(n)?.isLooping??!1},()=>[s(y(M))],!0)],10,Ge))}}),[[`__scopeId`,`data-v-e32eda25`]]);const qe=[`aria-pressed`];var Je=w(c({__name:`PipButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let t=e,n=S(v(t,`player`),v(t,`for`));return(e,t)=>y(n)?.supportsPip?(m(),i(`button`,{key:0,type:`button`,class:f([`mvp-pip-button`,{"mvp-pip-button--active":y(n)?.isPipActive}]),"aria-pressed":y(n)?.isPipActive??!1,"aria-label":`Toggle Picture-in-Picture`,onClick:t[0]||=e=>y(n)?.togglePip()},[g(e.$slots,`default`,{isPipActive:y(n)?.isPipActive??!1},()=>[s(y(he))],!0)],10,qe)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-f654d93e`]]);function Ye(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}}const Xe=[`aria-label`];var Ze=w(c({__name:`CaptionsButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=S(v(n,`player`),v(n,`for`)),o=t(()=>a.value?Ye(a.value):null),c=t(()=>o.value?.currentCaptionLabel()??`Off`);function l(){o.value?.cycleCaptionTrack()}return(e,t)=>y(a)?.supportsCaptions?(m(),i(`button`,{key:0,type:`button`,class:f([`mvp-captions-button`,{"mvp-captions-button--active":y(a)?.activeCaptionIndex!==null}]),"aria-label":`Captions: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,tracks:y(a)?.captionTracks??[],activeIndex:y(a)?.activeCaptionIndex??null},()=>[s(y(ue))],!0)],10,Xe)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-2572c4f2`]]);function Qe(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 $e=[`aria-label`];var et=w(c({__name:`QualityButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=S(v(n,`player`),v(n,`for`)),o=t(()=>a.value?Qe(a.value):null),c=t(()=>o.value?.currentQualityLabel()??`Auto`);function l(){o.value?.cycleQuality()}return(e,t)=>y(a)?.supportsQuality?(m(),i(`button`,{key:0,type:`button`,class:f([`mvp-quality-button`,{"mvp-quality-button--active":!y(a)?.isAutoQuality}]),"aria-label":`Quality: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,levels:y(a)?.qualityLevels??[],currentIndex:y(a)?.currentQualityIndex??null,isAuto:y(a)?.isAutoQuality??!0},()=>[s(y(Ce))],!0)],10,$e)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-d1352878`]]);function tt(e){function t(){let t=x.indexOf(e.currentPlaybackRate);e.setPlaybackRate(x[(t+1)%x.length])}function n(e){return`${e}×`}return{cycleRate:t,fmtRate:n}}const nt=[`aria-label`];var rt=w(c({__name:`PlaybackRateButton`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,a=S(v(n,`player`),v(n,`for`)),s=t(()=>a.value?tt(a.value):null),c=t(()=>s.value?s.value.fmtRate(a.value.currentPlaybackRate):`1×`);function l(){s.value?.cycleRate()}return(e,t)=>y(a)?.supportsPlaybackRate?(m(),i(`button`,{key:0,type:`button`,class:f([`mvp-playback-rate-button`,{"mvp-playback-rate-button--active":y(a)?.currentPlaybackRate!==1}]),"aria-label":`Playback speed: ${c.value}`,onClick:l},[g(e.$slots,`default`,{currentLabel:c.value,rate:y(a)?.currentPlaybackRate??1,rates:[...y(x)]},()=>[o(_(c.value),1)],!0)],10,nt)):r(`v-if`,!0)}}),[[`__scopeId`,`data-v-646c9bc1`]]);const it={class:`mvp-volume-wrap`},at=[`value`],ot={class:`mvp-volume-pct`};var st=w(c({inheritAttrs:!1,__name:`VolumeSlider`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(e){let n=e,r=S(v(n,`player`),v(n,`for`)),o=t(()=>{let e=r.value;return e?e.isMuted?0:Math.round(e.vol*100):0});function s(e){r.value?.setVolume(Number(e.target.value)/100)}return(e,t)=>(m(),i(`div`,it,[a(`input`,u({type:`range`,min:`0`,max:`100`,step:`1`,value:o.value,class:`mvp-volume-slider`},e.$attrs,{style:{"--v":`${o.value}%`},"aria-label":`Volume`,onInput:s}),null,16,at),g(e.$slots,`default`,{percent:o.value},()=>[a(`span`,ot,_(o.value)+`%`,1)],!0)]))}}),[[`__scopeId`,`data-v-fbb2c86c`]]),ct=w(c({__name:`TimeDisplay`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1}},setup(t){let n=t,r=S(v(n,`player`),v(n,`for`));return(t,n)=>(m(),i(`span`,{class:f([`mvp-time-display`,{"mvp-time-display--live":y(r)?.isLive}])},[g(t.$slots,`default`,{isLive:y(r)?.isLive??!1,current:y(r)?.current??0,total:y(r)?.total??0,formatTime:y(C)},()=>[y(r)?.isLive?(m(),i(e,{key:0},[n[0]||=a(`span`,{class:`mvp-time-display__dot`},null,-1),n[1]||=o(`Live `,-1)],64)):(m(),i(e,{key:1},[o(_(y(C)(y(r)?.current??0))+` / `+_(y(C)(y(r)?.total??0)),1)],64))],!0)],2))}}),[[`__scopeId`,`data-v-0285c811`]]);const lt=[`aria-current`,`onClick`],ut={class:`mvp-transcript__time`},dt={class:`mvp-transcript__text`};var ft=w(c({__name:`Transcript`,props:{player:{type:[Object,null],required:!1},for:{type:String,required:!1},cues:{type:[Array,String],required:!1}},setup(n){let r=n,o=S(v(r,`player`),v(r,`for`)),s=t(()=>{if(typeof r.cues!=`string`)return r.cues??[];try{return JSON.parse(r.cues)}catch{return[]}}),c=t(()=>{let e=o.value?.current??0,t=s.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}),l=h(null),u=h(!1);function p(e){let t=o.value;t&&(t.total>0&&t.seek(e.time/t.total*100),t.isPlaying||t.togglePlay())}return b(c,async e=>{e===null||u.value||(await d(),l.value?.querySelector(`.mvp-transcript__cue--active`)?.scrollIntoView?.({block:`nearest`,behavior:`smooth`}))}),(t,n)=>(m(),i(`ol`,{ref_key:`listEl`,ref:l,class:`mvp-transcript`,onPointerenter:n[0]||=e=>u.value=!0,onPointerleave:n[1]||=e=>u.value=!1},[(m(!0),i(e,null,te(s.value,(e,n)=>(m(),i(`li`,{key:`${e.time}-${n}`,class:`mvp-transcript__item`},[a(`button`,{type:`button`,class:f([`mvp-transcript__cue`,{"mvp-transcript__cue--active":n===c.value}]),"aria-current":n===c.value?`true`:void 0,onClick:t=>p(e)},[g(t.$slots,`default`,{cue:e,index:n,isActive:n===c.value,formatTime:y(C)},()=>[a(`span`,ut,_(y(C)(e.time)),1),a(`span`,dt,_(e.text),1)],!0)],10,lt)]))),128))],544))}}),[[`__scopeId`,`data-v-c166a2c5`]]);const V=l(oe,{shadowRoot:!1}),H=l(B,{shadowRoot:!1}),U=l(ze,{shadowRoot:!1}),W=l(Ve,{shadowRoot:!1}),G=l(We,{shadowRoot:!1}),K=l(Ke,{shadowRoot:!1}),q=l(Je,{shadowRoot:!1}),J=l(Ze,{shadowRoot:!1}),Y=l(et,{shadowRoot:!1}),X=l(rt,{shadowRoot:!1}),Z=l(st,{shadowRoot:!1}),Q=l(ct,{shadowRoot:!1}),$=l(ft,{shadowRoot:!1});customElements.define(`muns-controls-scrubber`,V),customElements.define(`muns-controls-play-button`,H),customElements.define(`muns-controls-mute-button`,U),customElements.define(`muns-controls-fullscreen-button`,W),customElements.define(`muns-controls-buffering`,G),customElements.define(`muns-controls-loop-button`,K),customElements.define(`muns-controls-pip-button`,q),customElements.define(`muns-controls-captions-button`,J),customElements.define(`muns-controls-quality-button`,Y),customElements.define(`muns-controls-playback-rate-button`,X),customElements.define(`muns-controls-volume-slider`,Z),customElements.define(`muns-controls-time-display`,Q),customElements.define(`muns-controls-transcript`,$);export{G as BufferingElement,J as CaptionsButtonElement,W as FullscreenButtonElement,K as LoopButtonElement,U as MuteButtonElement,q as PipButtonElement,H as PlayButtonElement,X as PlaybackRateButtonElement,Y as QualityButtonElement,V as ScrubberElement,Q as TimeDisplayElement,$ as TranscriptElement,Z as VolumeSliderElement};
@@ -1 +1 @@
1
- :where(.mvp-play-button[data-v-218255bd]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-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(.mvp-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(--mvp-btn-bg,#ffffff1a);width:clamp(48px,20cqw,64px);height:clamp(48px,20cqw,64px);color:var(--mvp-btn-color,#fff)}.ppbtn--lg svg{width:clamp(20px,9cqw,28px);height:clamp(20px,9cqw,28px)}.ppbtn--lg:hover{background:var(--mvp-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(--mvp-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px);color:var(--mvp-btn-color,#fff);cursor:pointer;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.hud__btn svg[data-v-a6d118e7]{width:clamp(16px,6cqw,18px);height:clamp(16px,6cqw,18px)}.hud__btn[data-v-a6d118e7]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.hud__btn--active[data-v-a6d118e7]{border-color:var(--mvp-accent,#3b82f6);background:color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, var(--mvp-btn-bg,#ffffff1a));color:var(--mvp-btn-color,#fff)}.hud__btn--active[data-v-a6d118e7]:hover{background:color-mix(in srgb, var(--mvp-accent,#3b82f6) 45%, var(--mvp-btn-bg,#fff3))}:where(.mvp-fullscreen-button[data-v-b93a5017]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-fullscreen-button svg[data-v-b93a5017]){width:1em;height:1em}:where(.mvp-pip-button[data-v-f654d93e]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-pip-button--active[data-v-f654d93e]){opacity:1}:where(.mvp-pip-button svg[data-v-f654d93e]){width:1em;height:1em}.mvp-scrubber-wrap[data-v-043f1bc8]{width:100%;position:relative}:where(.mvp-scrubber[data-v-043f1bc8]){cursor:pointer;accent-color:currentColor;width:100%}.mvp-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(.mvp-time-display[data-v-0285c811]){font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:inline-flex}:where(.mvp-time-display__dot[data-v-0285c811]){background:currentColor;border-radius:50%;width:6px;height:6px}.mvp-volume-wrap[data-v-fbb2c86c]{align-items:center;gap:.75rem;width:100%;display:flex}:where(.mvp-volume-slider[data-v-fbb2c86c]){cursor:pointer;accent-color:currentColor;flex:1}:where(.mvp-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(--mvp-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}::view-transition-old(controls-popup),::view-transition-new(controls-popup){animation-duration:.22s;animation-timing-function:ease-in-out}.controls__btn{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s,color .15s;display:flex}.controls__btn svg{width:16px;height:16px}.controls__btn:hover{color:#fff;background:#ffffff1a}.controls--compact .controls__seek,.controls--compact .mvp-scrubber-wrap,.controls--compact .controls__btn--more,.controls--compact .controls__btn--pip,.controls--compact .controls__fs-wrap{display:none}@container player-shell (width<=300px){.controls__seek,.mvp-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(--mvp-accent,#3b82f6) 0%, var(--mvp-accent,#3b82f6) var(--p), #ffffff4d var(--p), #ffffff4d var(--b), #ffffff1a var(--b), #ffffff1a 100%);outline:none;width:100%;height:20px;padding:8px 0}.controls__seek::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border-radius:50%;margin-top:-5px;transition:transform .15s}.controls__seek:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek::-moz-range-progress{background:var(--mvp-accent,#3b82f6);height:4px}.controls__seek::-moz-range-thumb{background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border:none;border-radius:50%}.controls[data-v-5712aad4]{-webkit-backdrop-filter:blur(20px);background:#0a0a0e;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;width:min(340px,100% - 32px);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.mvp-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.mvp-pip-button--active[data-v-5712aad4]{color:var(--mvp-accent,#3b82f6)}.controls__btn--active[data-v-5712aad4]:hover,.controls__btn--pip.mvp-pip-button--active[data-v-5712aad4]:hover{color:var(--mvp-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-f3307b98]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fade-enter-active[data-v-f3307b98],.fade-leave-active[data-v-f3307b98]{transition:opacity .25s}.fade-enter-from[data-v-f3307b98],.fade-leave-to[data-v-f3307b98]{opacity:0}.overlay__error[data-v-f3307b98]{z-index:6;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex;position:absolute;inset:0}.overlay__error p[data-v-f3307b98]{color:#ffffffb3;text-align:center;max-width:260px;font-size:.875rem;line-height:1.5}.overlay__retry[data-v-f3307b98]{pointer-events:auto;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:background .15s}.overlay__retry[data-v-f3307b98]:hover{background:#fff3}.overlay__hud[data-v-f3307b98]{z-index:4;opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.overlay__hud--visible[data-v-f3307b98]{opacity:1;pointer-events:all}.overlay__popup[data-v-f3307b98]{z-index:5;align-items:var(--mvp-popup-align,center);pointer-events:none;justify-content:center;padding:16px;display:flex;position:absolute;inset:0}.overlay__popup[data-v-f3307b98] .controls{pointer-events:auto}.overlay__popup--fs[data-v-f3307b98]{align-items:flex-end}.popup-enter-active[data-v-f3307b98],.popup-leave-active[data-v-f3307b98]{transition:opacity .2s,transform .2s}.popup-enter-from[data-v-f3307b98],.popup-leave-to[data-v-f3307b98]{opacity:0;transform:scale(.95)}.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[data-v-4ab3cf75]{user-select:none;-webkit-tap-highlight-color:transparent;width:100%;max-width:800px;margin:0 auto}[data-mvp-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#000;position:relative;overflow:hidden;container:player-shell/inline-size}.mvp-video--hidden[data-v-4ab3cf75]{opacity:0}.overlay__tap-capture[data-v-4ab3cf75]{z-index:2;position:absolute;inset:0}.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 .mvp-video[data-v-4ab3cf75],.player__shell:fullscreen [data-mvp-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.mvp-video{border-radius:var(--mvp-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mvp-dailymotion .mvp-tech>*,.mvp-dailymotion .dailymotion-player-root,.mvp-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.mvp-vimeo .mvp-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.mvp-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}[data-mvp-player] .ima-ad-container{pointer-events:none;z-index:20!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.mvp-ad-playing .ima-ad-container{pointer-events:auto}.mvp-ad-playing .overlay__hud,.mvp-ad-playing .overlay__spinner{display:none!important}.stage-wrapper[data-v-fb8c86cf]{width:100%;max-width:800px;margin:0 auto}.stage[data-v-fb8c86cf]{width:100%}.stage__dismiss[data-v-fb8c86cf],.stage__scroll-to[data-v-fb8c86cf]{z-index:10;backdrop-filter:blur(6px);color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:all .15s;display:flex;position:absolute;top:.4rem}.stage__dismiss[data-v-fb8c86cf]:hover,.stage__scroll-to[data-v-fb8c86cf]:hover{background:#000000d9}.stage__dismiss svg[data-v-fb8c86cf],.stage__scroll-to svg[data-v-fb8c86cf]{width:14px;height:14px}.stage__dismiss[data-v-fb8c86cf]{right:.4rem}.stage__scroll-to[data-v-fb8c86cf]{left:.4rem}.stage--minified[data-v-fb8c86cf]{z-index:100;margin:0;position:fixed;overflow:hidden;box-shadow:0 8px 32px #0009}.stage--pin-bottom-right[data-v-fb8c86cf],.stage--pin-bottom-left[data-v-fb8c86cf],.stage--pin-top-right[data-v-fb8c86cf],.stage--pin-top-left[data-v-fb8c86cf]{border-radius:var(--mvp-radius,12px);width:360px;max-width:360px;transition:transform .25s;@media (width<=740px){max-width:300px}}.stage--pin-bottom-right[data-v-fb8c86cf]{bottom:1.25rem;right:1.25rem}.stage--pin-bottom-left[data-v-fb8c86cf]{bottom:1.25rem;left:1.25rem}.stage--pin-top-right[data-v-fb8c86cf]{top:1.25rem;right:1.25rem}.stage--pin-top-left[data-v-fb8c86cf]{top:1.25rem;left:1.25rem}.stage--pin-bottom-right.stage--tucked[data-v-fb8c86cf],.stage--pin-top-right.stage--tucked[data-v-fb8c86cf]{transform:translateX(calc(100% - var(--mvp-stage-tuck,32px)))}.stage--pin-bottom-left.stage--tucked[data-v-fb8c86cf],.stage--pin-top-left.stage--tucked[data-v-fb8c86cf]{transform:translateX(calc(-100% + var(--mvp-stage-tuck,32px)))}.stage--pin-full-width[data-v-fb8c86cf]{width:100%;max-width:100%;box-shadow:none;border-radius:0;top:0;left:0;right:0}.stage__idle[data-v-fb8c86cf]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#111;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.stage__idle-poster[data-v-fb8c86cf]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.stage__idle-scrim[data-v-fb8c86cf]{background:#00000073;transition:background .15s;position:absolute;inset:0}.stage__idle:hover .stage__idle-scrim[data-v-fb8c86cf]{background:#0000004d}.stage__idle-body[data-v-fb8c86cf]{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;display:flex;position:relative}.stage__idle-btn[data-v-fb8c86cf]{backdrop-filter:blur(4px);color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .15s,background .15s;display:flex}.stage__idle:hover .stage__idle-btn[data-v-fb8c86cf]{background:#000c;transform:scale(1.1)}.stage__idle-btn svg[data-v-fb8c86cf]{width:32px;height:32px}.stage__idle-title[data-v-fb8c86cf]{color:#f1f5f9;text-shadow:0 1px 4px #000c;font-size:1rem;font-weight:600}.stage__idle-empty[data-v-fb8c86cf]{color:#64748b;font-size:.95rem}.placeholder[data-v-dbcb4f82]{width:100%}.placeholder__shell[data-v-dbcb4f82]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#111;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height: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}.mvp-hide-marker[data-v-bacb702a]{width:100%;min-height:1px}
1
+ :where(.mvp-play-button[data-v-218255bd]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-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(.mvp-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(--mvp-btn-bg,#ffffff1a);width:clamp(48px,20cqw,64px);height:clamp(48px,20cqw,64px);color:var(--mvp-btn-color,#fff)}.ppbtn--lg svg{width:clamp(20px,9cqw,28px);height:clamp(20px,9cqw,28px)}.ppbtn--lg:hover{background:var(--mvp-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(--mvp-btn-bg,#ffffff1a);backdrop-filter:blur(12px);will-change:backdrop-filter;width:clamp(36px,14cqw,44px);height:clamp(36px,14cqw,44px);color:var(--mvp-btn-color,#fff);cursor:pointer;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex}.hud__btn svg[data-v-a6d118e7]{width:clamp(16px,6cqw,18px);height:clamp(16px,6cqw,18px)}.hud__btn[data-v-a6d118e7]:hover{background:var(--mvp-btn-bg,#fff3);filter:brightness(1.12);transform:scale(1.08)}.hud__btn--active[data-v-a6d118e7]{border-color:var(--mvp-accent,#3b82f6);background:color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, var(--mvp-btn-bg,#ffffff1a));color:var(--mvp-btn-color,#fff)}.hud__btn--active[data-v-a6d118e7]:hover{background:color-mix(in srgb, var(--mvp-accent,#3b82f6) 45%, var(--mvp-btn-bg,#fff3))}:where(.mvp-fullscreen-button[data-v-b93a5017]){all:unset;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-fullscreen-button svg[data-v-b93a5017]){width:1em;height:1em}:where(.mvp-pip-button[data-v-f654d93e]){all:unset;cursor:pointer;opacity:.6;justify-content:center;align-items:center;display:inline-flex}:where(.mvp-pip-button--active[data-v-f654d93e]){opacity:1}:where(.mvp-pip-button svg[data-v-f654d93e]){width:1em;height:1em}.mvp-scrubber-wrap[data-v-043f1bc8]{width:100%;position:relative}:where(.mvp-scrubber[data-v-043f1bc8]){cursor:pointer;accent-color:currentColor;width:100%}.mvp-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(.mvp-time-display[data-v-0285c811]){font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:inline-flex}:where(.mvp-time-display__dot[data-v-0285c811]){background:currentColor;border-radius:50%;width:6px;height:6px}.mvp-volume-wrap[data-v-fbb2c86c]{align-items:center;gap:.75rem;width:100%;display:flex}:where(.mvp-volume-slider[data-v-fbb2c86c]){cursor:pointer;accent-color:currentColor;flex:1}:where(.mvp-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(--mvp-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 .mvp-scrubber-wrap,.controls--compact .controls__btn--more,.controls--compact .controls__btn--pip,.controls--compact .controls__fs-wrap{display:none}@container player-shell (width<=300px){.controls__seek,.mvp-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(--mvp-accent,#3b82f6) 0%, var(--mvp-accent,#3b82f6) var(--p), #ffffff4d var(--p), #ffffff4d var(--b), #ffffff1a var(--b), #ffffff1a 100%);outline:none;width:100%;height:20px;padding:8px 0}.controls__seek::-webkit-slider-runnable-track{background:0 0;height:4px}.controls__seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border-radius:50%;margin-top:-5px;transition:transform .15s}.controls__seek:hover::-webkit-slider-thumb{transform:scale(1.25)}.controls__seek::-moz-range-track{background:#ffffff1a;height:4px}.controls__seek::-moz-range-progress{background:var(--mvp-accent,#3b82f6);height:4px}.controls__seek::-moz-range-thumb{background:var(--mvp-accent,#3b82f6);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mvp-accent,#3b82f6) 30%, transparent);cursor:pointer;border:none;border-radius:50%}.controls[data-v-5712aad4]{-webkit-backdrop-filter:blur(20px);background:#0a0a0e;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:10px;width:min(340px,100% - 32px);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.mvp-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.mvp-pip-button--active[data-v-5712aad4]{color:var(--mvp-accent,#3b82f6)}.controls__btn--active[data-v-5712aad4]:hover,.controls__btn--pip.mvp-pip-button--active[data-v-5712aad4]:hover{color:var(--mvp-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(--mvp-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:10;backdrop-filter:blur(6px);color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:all .15s;display:flex;position:absolute;top:.4rem}.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(--mvp-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(--mvp-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(--mvp-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:360px;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-mvp-player][data-v-4ab3cf75]{position:absolute;inset:0}.player__shell[data-v-4ab3cf75]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#000;position:relative;overflow:hidden;container:player-shell/inline-size}.mvp-video--hidden[data-v-4ab3cf75]{opacity:0}.overlay__tap-capture[data-v-4ab3cf75]{z-index:2;position:absolute;inset:0}.mvp-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))}.mvp-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 .mvp-video[data-v-4ab3cf75],.player__shell:fullscreen [data-mvp-player][data-v-4ab3cf75]{width:100%!important;height:100%!important}.mvp-video{border-radius:var(--mvp-radius,12px);object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mvp-dailymotion .mvp-tech>*,.mvp-dailymotion .dailymotion-player-root,.mvp-dailymotion iframe{width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.mvp-vimeo .mvp-tech>div{width:100%!important;height:100%!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.mvp-vimeo iframe{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}[data-mvp-player] .ima-ad-container{pointer-events:none;z-index:20!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.mvp-ad-playing .ima-ad-container{pointer-events:auto}.mvp-ad-playing .overlay__hud,.mvp-ad-playing .overlay__spinner{display:none!important}.stage-wrapper[data-v-fb8c86cf]{width:100%;max-width:800px;margin:0 auto}.stage[data-v-fb8c86cf]{width:100%}.stage--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:360px;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(--mvp-radius,12px);cursor:pointer;background:#111;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.stage__idle-poster[data-v-fb8c86cf]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.stage__idle-scrim[data-v-fb8c86cf]{background:#00000073;transition:background .15s;position:absolute;inset:0}.stage__idle:hover .stage__idle-scrim[data-v-fb8c86cf]{background:#0000004d}.stage__idle-body[data-v-fb8c86cf]{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;display:flex;position:relative}.stage__idle-btn[data-v-fb8c86cf]{backdrop-filter:blur(4px);color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .15s,background .15s;display:flex}.stage__idle:hover .stage__idle-btn[data-v-fb8c86cf]{background:#000c;transform:scale(1.1)}.stage__idle-btn svg[data-v-fb8c86cf]{width:32px;height:32px}.stage__idle-title[data-v-fb8c86cf]{color:#f1f5f9;text-shadow:0 1px 4px #000c;font-size:1rem;font-weight:600}.stage__idle-empty[data-v-fb8c86cf]{color:#64748b;font-size:.95rem}.placeholder[data-v-dbcb4f82]{width:100%}.placeholder__shell[data-v-dbcb4f82]{border-radius:var(--mvp-radius,12px);cursor:pointer;background:#111;position:relative;overflow:hidden}.placeholder__shell--portrait[data-v-dbcb4f82]{width:auto;max-height: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}.mvp-hide-marker[data-v-bacb702a]{width:100%;min-height:1px}
@@ -1,4 +1,91 @@
1
- //#region src/types.d.ts
1
+ //#region src/composables/player/emitter.d.ts
2
+ type PlaybackListener = (...args: unknown[]) => void;
3
+ //#endregion
4
+ //#region src/adapters/embeds/embedShared.d.ts
5
+ interface EmbedAdapterOptions {
6
+ src: string;
7
+ poster?: string;
8
+ autoplay?: boolean;
9
+ muted?: boolean;
10
+ volume?: number;
11
+ nativeUi?: boolean;
12
+ customVars?: Record<string, unknown>;
13
+ }
14
+ //#endregion
15
+ //#region src/types/playback.d.ts
16
+ interface MediaErrorLike {
17
+ code: number;
18
+ message: string;
19
+ }
20
+ interface CaptionTrackInfo {
21
+ index: number;
22
+ label: string;
23
+ language: string;
24
+ }
25
+ interface QualityLevelInfo {
26
+ index: number;
27
+ height: number;
28
+ bitrate: number;
29
+ label: string;
30
+ }
31
+ interface PlaybackAdapter {
32
+ readonly el: HTMLElement;
33
+ play(): void | Promise<void>;
34
+ pause(): void;
35
+ paused(): boolean;
36
+ currentTime(): number;
37
+ setCurrentTime(seconds: number): void;
38
+ duration(): number;
39
+ volume(): number;
40
+ setVolume(vol: number): void;
41
+ muted(): boolean;
42
+ setMuted(muted: boolean): void;
43
+ playbackRate(): number;
44
+ setPlaybackRate(rate: number): void;
45
+ bufferedEnd(): number;
46
+ error(): MediaErrorLike | null;
47
+ setSrc(src: string, type?: string): void;
48
+ supportsPlaybackRate(): boolean;
49
+ supportsCaptions(): boolean;
50
+ getCaptionTracks(): CaptionTrackInfo[];
51
+ setCaptionTrack(index: number | null): void;
52
+ getActiveCaptionTrack(): number | null;
53
+ supportsQuality(): boolean;
54
+ getQualityLevels(): QualityLevelInfo[];
55
+ getCurrentQuality(): number | null;
56
+ isAutoQuality(): boolean;
57
+ setQuality(index: number | null): void;
58
+ supportsPip(): boolean;
59
+ isPipActive(): boolean;
60
+ togglePip(): void;
61
+ enterFullscreen(): void;
62
+ exitFullscreen(): void;
63
+ on(event: string | string[], listener: PlaybackListener): void;
64
+ off(event: string, listener: PlaybackListener): void;
65
+ dispose(): void;
66
+ }
67
+ interface ResolvedSource {
68
+ src: string;
69
+ type?: string;
70
+ poster?: string | null;
71
+ adTagUrl?: string | null;
72
+ }
73
+ interface Matcher {
74
+ test: (src: string) => boolean;
75
+ key: string;
76
+ embed: boolean;
77
+ }
78
+ type EmbedAdapterFactory = (videoEl: HTMLVideoElement, options: EmbedAdapterOptions) => PlaybackAdapter;
79
+ type SourceResolver = (url: string) => ResolvedSource | Promise<ResolvedSource>;
80
+ type PlatformConfig = Pick<Matcher, 'key' | 'test'> & ({
81
+ embed: true;
82
+ createAdapter: EmbedAdapterFactory;
83
+ } | {
84
+ embed: false;
85
+ resolveSource?: SourceResolver;
86
+ });
87
+ //#endregion
88
+ //#region src/types/player.d.ts
2
89
  type BuiltinAction = 'mute' | 'loop' | 'autoplay';
3
90
  interface CustomAction {
4
91
  icon: string;
@@ -39,17 +126,29 @@ interface PlayerProps {
39
126
  tracks?: CaptionTrackDef[];
40
127
  autoplay?: boolean;
41
128
  muted?: boolean;
129
+ volume?: number;
42
130
  playbackRate?: number;
43
131
  nativeUi?: boolean;
44
132
  autoStage?: boolean;
45
133
  lazy?: boolean;
46
- payload?: Record<string, unknown>;
134
+ payload?: Record<string, unknown> | string;
47
135
  action?: PlayerAction | null;
48
136
  disableTapCapture?: boolean;
49
137
  controls?: boolean;
50
138
  playWhenInView?: boolean;
139
+ pinPosition?: PinCorner;
51
140
  }
141
+ type PinCorner = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
52
142
  type VideoEntry = PlayerProps;
143
+ interface VideoSelectDetail extends VideoEntry {
144
+ fromGesture?: boolean;
145
+ }
146
+ //#endregion
147
+ //#region src/adapters/index.d.ts
148
+ declare function registerMatcher(matcher: Matcher): void;
149
+ declare function registerEmbedAdapter(key: string, factory: EmbedAdapterFactory): void;
150
+ declare function registerSourceResolver(key: string, resolver: SourceResolver): void;
151
+ declare function registerPlatform(config: PlatformConfig): void;
53
152
  //#endregion
54
153
  //#region src/elements/core.d.ts
55
154
  declare const VideoPlayerElement: import("vue").VueElementConstructor<PlayerProps & {
@@ -62,8 +161,9 @@ declare const VideoStageElement: import("vue").VueElementConstructor<{
62
161
  pinPosition?: "bottom-right" | "bottom-left" | "top-right" | "top-left" | "full-width";
63
162
  playlist?: VideoEntry[];
64
163
  }>;
65
- declare const VideoPlaceholderElement: import("vue").VueElementConstructor<PlayerProps>;
66
- declare const VideoItemElement: import("vue").VueElementConstructor<PlayerProps>;
164
+ declare const VideoPlaceholderElement: import("vue").VueElementConstructor<VideoSelectDetail>;
165
+ declare const VideoItemElement: import("vue").VueElementConstructor<VideoSelectDetail>;
67
166
  declare const HideMarkerElement: import("vue").VueElementConstructor<{}>;
167
+ declare function defineElements(): void;
68
168
  //#endregion
69
- export { HideMarkerElement, VideoItemElement, VideoPlaceholderElement, VideoPlayerElement, VideoStageElement };
169
+ export { type EmbedAdapterFactory, type EmbedAdapterOptions, HideMarkerElement, type Matcher, type MediaErrorLike, type PlatformConfig, type PlaybackAdapter, type ResolvedSource, type SourceResolver, VideoItemElement, VideoPlaceholderElement, VideoPlayerElement, VideoStageElement, defineElements, registerEmbedAdapter, registerMatcher, registerPlatform, registerSourceResolver };