@bazza-ui/react 0.1.0-canary.3 → 0.1.0-canary.4

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.
@@ -1,3 +1,3 @@
1
- import{a as _r}from"../chunk-4C666HHU.js";import*as Be from"react";var at=Be.createContext(null);function P(d){let e=Be.useContext(at);if(!e)throw new Error(`<VideoPlayer.${d}> must be used within <VideoPlayer.Root>`);return e}function ne(){return P("useVideoPlayer")}var Hr={};_r(Hr,{BufferedIndicator:()=>Gt,Captions:()=>Zt,CaptionsButton:()=>er,CaptionsDataAttributes:()=>Le,CaptionsMenu:()=>tr,CaptionsMenuItem:()=>De,Controls:()=>rr,ControlsDataAttributes:()=>Oe,FullscreenButton:()=>nr,MuteButton:()=>or,Overlay:()=>ar,OverlayDataAttributes:()=>Fe,PictureInPictureButton:()=>ir,PlayButton:()=>sr,PlaybackRateButton:()=>lr,PlaybackRateMenu:()=>ur,PlaybackRateMenuItem:()=>st,Portal:()=>cr,Poster:()=>dr,QualityMenu:()=>pr,QualityMenuItem:()=>ut,Root:()=>mr,RootDataAttributes:()=>_e,SeekSlider:()=>yr,SeekSliderBuffered:()=>vr,SeekSliderControl:()=>Sr,SeekSliderCssVars:()=>Ke,SeekSliderDataAttributes:()=>Xe,SeekSliderHover:()=>xr,SeekSliderPreviewThumb:()=>Tr,SeekSliderPreviewThumbDataAttributes:()=>Ye,SeekSliderPreviewTooltip:()=>de,SeekSliderPreviewTooltipPopup:()=>Je,SeekSliderPreviewTooltipPortal:()=>Ge,SeekSliderPreviewTooltipPositioner:()=>ze,SeekSliderProgress:()=>kr,SeekSliderThumb:()=>gr,SeekSliderTrack:()=>br,Thumbnail:()=>hr,ThumbnailDataAttributes:()=>Ze,TimeDisplay:()=>Cr,TimeDisplayDataAttributes:()=>et,Track:()=>Mr,Video:()=>Er,VolumeSlider:()=>Vr,VolumeSliderControl:()=>Br,VolumeSliderCssVars:()=>rt,VolumeSliderDataAttributes:()=>nt,VolumeSliderRange:()=>Lr,VolumeSliderThumb:()=>Ir,VolumeSliderTrack:()=>wr,useTransitionStatus:()=>j,useVideoPlayer:()=>ne});import*as we from"react";import{jsx as jr}from"react/jsx-runtime";var Gt=we.forwardRef(function(e,n){let{render:i,...s}=e,c=P("BufferedIndicator"),t=we.useMemo(()=>{if(!c.buffered||c.buffered.length===0)return 0;for(let u=0;u<c.buffered.length;u++)if(c.buffered.start(u)<=c.currentTime&&c.currentTime<=c.buffered.end(u))return c.buffered.end(u);return c.buffered.end(0)},[c.buffered,c.currentTime]),a=c.duration>0?t/c.duration*100:0,r={buffered:c.buffered,duration:c.duration,bufferedPercentage:a,bufferedEnd:t},o={"--buffered-percentage":`${a}%`,"--buffered-end":t,...s.style},l={ref:n,style:o,"aria-hidden":!0};return i?i(l,r):jr("div",{ref:n,"aria-hidden":"true",...s,style:o})});var Le=(e=>(e.active="data-active",e))(Le||{});import*as Jt from"react";import{jsx as zt}from"react/jsx-runtime";var Zt=Jt.forwardRef(function(e,n){let{render:i,children:s,...c}=e,a=P("Captions").activeCues,r=a.map(f=>f.text).join(`
2
- `),o=a.length>0,l={active:o,cueText:r,cues:a},u={ref:n,"aria-live":"polite","aria-atomic":!0,role:"status",style:{pointerEvents:"none"},"data-active":o||void 0};return i?i(u,l):s?zt("div",{...u,...c,children:s}):zt("div",{...u,...c,children:r})});import*as Ie from"react";import{jsx as Ur}from"react/jsx-runtime";var er=Ie.forwardRef(function(e,n){let{render:i,onClick:s,...c}=e,t=P("CaptionsButton"),a=t.registeredTracks.length>0,r=t.activeTextTrack!==null,o={active:r,available:a,trackCount:t.registeredTracks.length},l=Ie.useCallback(f=>{if(s?.(f),!f.defaultPrevented){if(r)t.setTextTrack(null);else if(t.registeredTracks.length>0){let y=t.registeredTracks[0];y?.textTrack&&t.setTextTrack(y.textTrack)}}},[s,t,r]),u={ref:n,type:"button","aria-label":r?"Disable captions":"Enable captions","aria-pressed":r,disabled:!a,"data-active":r||void 0,"data-available":a||void 0,onClick:l};return i?i(u,o):Ur("button",{...u,...c})});import*as ie from"react";import{Fragment as qr,jsx as He,jsxs as Kr}from"react/jsx-runtime";var tr=ie.forwardRef(function(e,n){let{render:i,children:s,...c}=e,t=P("CaptionsMenu"),a={registeredTracks:t.registeredTracks,activeTextTrack:t.activeTextTrack},r={ref:n,role:"menu","aria-label":"Captions","data-active":t.activeTextTrack!==null||void 0};return i?i(r,a):He("div",{...r,...c,children:s??Kr(qr,{children:[He(De,{track:null,children:"Off"}),t.registeredTracks.map(o=>He(De,{track:o.textTrack,children:o.label},o.id))]})})}),De=ie.forwardRef(function(e,n){let{track:i,onClick:s,children:c,...t}=e,a=P("CaptionsMenuItem"),r=a.activeTextTrack===i,o=ie.useCallback(l=>{s?.(l),l.defaultPrevented||a.setTextTrack(i)},[s,a,i]);return He("button",{ref:n,type:"button",role:"menuitemradio","aria-checked":r,"data-active":r||void 0,...t,onClick:o,children:c})});var Oe=(r=>(r.open="data-open",r.closed="data-closed",r.idle="data-idle",r.playing="data-playing",r.paused="data-paused",r.ended="data-ended",r.startingStyle="data-starting-style",r.endingStyle="data-ending-style",r))(Oe||{});import*as se from"react";import*as _ from"react";function Xr(d){let e=[...d.getAnimations(),...Array.from(d.querySelectorAll("*")).flatMap(n=>n.getAnimations())];return e.length===0?Promise.resolve():Promise.all(e.map(n=>n.finished)).then(()=>{}).catch(()=>{})}function j(d){let{open:e,keepMounted:n=!1}=d,[i,s]=_.useState(e||n),[c,t]=_.useState(e?"starting":void 0),a=_.useRef(null),r=_.useRef(!1);return _.useEffect(()=>{if(e){r.current=!1,s(!0),t("starting");let o=requestAnimationFrame(()=>{requestAnimationFrame(()=>{t(void 0)})});return()=>cancelAnimationFrame(o)}},[e]),_.useEffect(()=>{if(!e&&i&&!r.current){t("ending");let o=a.current;if(!o){t(void 0),n||s(!1);return}r.current=!0;let l=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Xr(o).then(()=>{r.current&&(r.current=!1,t(void 0),n||s(!1))})})});return()=>{cancelAnimationFrame(l)}}},[e,i,n]),_.useEffect(()=>{n&&!i&&!e&&s(!0)},[n,i,e]),{mounted:i||n,transitionStatus:c,elementRef:a}}import{jsx as Yr}from"react/jsx-runtime";var rr=se.forwardRef(function(e,n){let{idleTimeout:i,keepMounted:s=!1,render:c,children:t,...a}=e,r=P("Controls"),l=(i??r.idleTimeout)===0||!r.idle,{mounted:u,transitionStatus:f,elementRef:y}=j({open:l,keepMounted:s}),R=se.useCallback(V=>{y.current=V,typeof n=="function"?n(V):n&&(n.current=V)},[n,y]),{onClick:g,...m}=a,x=se.useCallback(V=>{V.stopPropagation(),g?.(V)},[g]),v={open:l,idle:r.idle,playing:r.playing,paused:r.paused,ended:r.ended},b={ref:R,onClick:x,"data-open":l||void 0,"data-closed":!l||void 0,"data-idle":r.idle||void 0,"data-playing":r.playing||void 0,"data-paused":r.paused||void 0,"data-ended":r.ended||void 0,"data-starting-style":f==="starting"||void 0,"data-ending-style":f==="ending"||void 0};return u?c?c(b,v):Yr("div",{...b,...m,children:t}):null});import*as G from"react";import{jsx as Gr}from"react/jsx-runtime";var nr=G.forwardRef(function(e,n){let{render:i,onClick:s,children:c,...t}=e,a=P("FullscreenButton"),[r,o]=G.useState(!1);G.useEffect(()=>{o("fullscreenEnabled"in document&&document.fullscreenEnabled)},[]);let l=G.useCallback(y=>{s?.(y),y.defaultPrevented||a.toggleFullscreen()},[s,a]),u={fullscreen:a.fullscreen,supported:r},f={ref:n,type:"button","aria-label":a.fullscreen?"Exit fullscreen":"Enter fullscreen","aria-pressed":a.fullscreen,disabled:!r,"data-fullscreen":a.fullscreen||void 0,"data-supported":r||void 0,onClick:l};return i?i(f,u):Gr("button",{...f,...t,children:c})});import*as Ae from"react";import{jsx as zr}from"react/jsx-runtime";var or=Ae.forwardRef(function(e,n){let{render:i,onClick:s,...c}=e,t=P("MuteButton"),a={muted:t.muted,volume:t.volume},r=Ae.useCallback(m=>{s?.(m),m.defaultPrevented||t.toggleMute()},[s,t]),o=t.volume,l=t.muted,u=o===0||l,f=o>0&&!l,y=!l&&o>0&&o<.5,R=!l&&o>=.5,g={ref:n,type:"button","aria-label":t.muted?"Unmute":"Mute","aria-pressed":t.muted,"data-muted":l||void 0,"data-volume-off":u||void 0,"data-volume-on":f||void 0,"data-volume-low":y||void 0,"data-volume-high":R||void 0,onClick:r};return i?i(g,a):zr("button",{...g,...c})});var Fe=(u=>(u.open="data-open",u.closed="data-closed",u.playing="data-playing",u.paused="data-paused",u.ended="data-ended",u.waiting="data-waiting",u.seeking="data-seeking",u.fullscreen="data-fullscreen",u.pip="data-pip",u.startingStyle="data-starting-style",u.endingStyle="data-ending-style",u))(Fe||{});import*as le from"react";import{jsx as Jr}from"react/jsx-runtime";var ar=le.forwardRef(function(e,n){let{idleTimeout:i,keepMounted:s=!1,render:c,onClick:t,children:a,...r}=e,o=P("Overlay"),u=(i??o.idleTimeout)===0||!o.idle,{mounted:f,transitionStatus:y,elementRef:R}=j({open:u,keepMounted:s}),g=le.useCallback(b=>{R.current=b,typeof n=="function"?n(b):n&&(n.current=b)},[n,R]),m=le.useCallback(b=>{t?.(b),b.defaultPrevented||o.toggle()},[t,o]),x={playing:o.playing,paused:o.paused,ended:o.ended,waiting:o.waiting,seeking:o.seeking,fullscreen:o.fullscreen,pictureInPicture:o.pictureInPicture,open:u},v={ref:g,onClick:m,"data-playing":o.playing||void 0,"data-paused":o.paused||void 0,"data-ended":o.ended||void 0,"data-waiting":o.waiting||void 0,"data-seeking":o.seeking||void 0,"data-fullscreen":o.fullscreen||void 0,"data-pip":o.pictureInPicture||void 0,"data-open":u||void 0,"data-closed":!u||void 0,"data-starting-style":y==="starting"||void 0,"data-ending-style":y==="ending"||void 0};return f?c?c(v,x):Jr("div",{...v,...r,children:a}):null});import*as z from"react";import{jsx as Zr}from"react/jsx-runtime";var ir=z.forwardRef(function(e,n){let{render:i,onClick:s,...c}=e,t=P("PictureInPictureButton"),[a,r]=z.useState(!1);z.useEffect(()=>{r("pictureInPictureEnabled"in document&&document.pictureInPictureEnabled)},[]);let o={pictureInPicture:t.pictureInPicture,supported:a},l=z.useCallback(f=>{s?.(f),f.defaultPrevented||t.togglePictureInPicture()},[s,t]),u={ref:n,type:"button","aria-label":t.pictureInPicture?"Exit picture-in-picture":"Enter picture-in-picture","aria-pressed":t.pictureInPicture,disabled:!a,"data-pip":t.pictureInPicture||void 0,"data-supported":a||void 0,onClick:l};return i?i(u,o):Zr("button",{...u,...c})});import*as We from"react";import{jsx as en}from"react/jsx-runtime";var sr=We.forwardRef(function(e,n){let{render:i,onClick:s,children:c,...t}=e,a=P("PlayButton"),r=We.useCallback(u=>{s?.(u),u.defaultPrevented||a.toggle()},[s,a]),o={playing:a.playing,paused:a.paused,ended:a.ended,waiting:a.waiting},l={ref:n,type:"button","aria-label":a.playing?"Pause":"Play","data-playing":a.playing||void 0,"data-paused":a.paused||void 0,"data-ended":a.ended||void 0,"data-waiting":a.waiting||void 0,onClick:r};return i?i(l,o):en("button",{...l,...t,children:c})});import*as Qe from"react";import{jsx as rn}from"react/jsx-runtime";var tn=[.25,.5,.75,1,1.25,1.5,1.75,2],lr=Qe.forwardRef(function(e,n){let{rates:i=tn,render:s,onClick:c,children:t,...a}=e,r=P("PlaybackRateButton"),o={playbackRate:r.playbackRate,rates:i},l=Qe.useCallback(f=>{if(c?.(f),!f.defaultPrevented){let R=(i.indexOf(r.playbackRate)+1)%i.length,g=i[R]??i[0]??r.playbackRate;r.setPlaybackRate(g)}},[c,r,i]),u={ref:n,type:"button","aria-label":`Playback speed: ${r.playbackRate}x`,"data-rate":r.playbackRate,onClick:l};return s?s(u,o):rn("button",{...u,...a,children:t??`${r.playbackRate}x`})});import*as ue from"react";import{jsx as it}from"react/jsx-runtime";var nn=[.25,.5,.75,1,1.25,1.5,1.75,2],ur=ue.forwardRef(function(e,n){let{rates:i=nn,render:s,children:c,...t}=e,a=P("PlaybackRateMenu"),r={playbackRate:a.playbackRate,rates:i},o={ref:n,role:"menu","aria-label":"Playback speed","data-rate":a.playbackRate};return s?s(o,r):it("div",{...o,...t,children:c??i.map(l=>it(st,{rate:l},l))})}),st=ue.forwardRef(function(e,n){let{rate:i,onClick:s,children:c,...t}=e,a=P("PlaybackRateMenuItem"),r=a.playbackRate===i,o=ue.useCallback(l=>{s?.(l),l.defaultPrevented||a.setPlaybackRate(i)},[s,a,i]);return it("button",{ref:n,type:"button",role:"menuitemradio","aria-checked":r,"data-active":r||void 0,...t,onClick:o,children:c??`${i}x`})});import*as $e from"react";import{createPortal as on}from"react-dom";function cr(d){let{children:e,container:n}=d,[i,s]=$e.useState(!1);if($e.useEffect(()=>(s(!0),()=>s(!1)),[]),!i)return null;let c=n??(typeof document<"u"?document.body:null);return c?on(e,c):null}import*as Ne from"react";import{jsx as sn}from"react/jsx-runtime";var dr=Ne.forwardRef(function(e,n){let{keepMounted:i=!1,render:s,children:c,...t}=e,a=P("Poster"),r=!a.canPlay,o=a.canPlay,{mounted:l,transitionStatus:u,elementRef:f}=j({open:r,keepMounted:i}),y=an(n,f),R={loading:r,loaded:o,transitionStatus:u},g={ref:y,"aria-hidden":!0,"data-loading":r||void 0,"data-loaded":o||void 0,"data-starting-style":u==="starting"||void 0,"data-ending-style":u==="ending"||void 0};return l?s?s(g,R):sn("div",{...g,...t,children:c}):null});function an(...d){return Ne.useCallback(e=>{for(let n of d)typeof n=="function"?n(e):n!=null&&(n.current=e)},d)}import*as ce from"react";import{jsx as lt}from"react/jsx-runtime";var pr=ce.forwardRef(function(e,n){let{render:i,children:s,...c}=e,t=P("QualityMenu"),a={qualities:t.qualities,activeQuality:t.activeQuality},r={ref:n,role:"menu","aria-label":"Video quality","data-quality":t.activeQuality?.label??void 0};return i?i(r,a):lt("div",{...r,...c,children:s??t.qualities.map(o=>lt(ut,{quality:o,children:o.label},o.label))})}),ut=ce.forwardRef(function(e,n){let{quality:i,onClick:s,children:c,...t}=e,a=P("QualityMenuItem"),r=a.activeQuality?.label===i.label,o=ce.useCallback(l=>{s?.(l),l.defaultPrevented||a.setQuality(i)},[s,a,i]);return lt("button",{ref:n,type:"button",role:"menuitemradio","aria-checked":r,"data-active":r||void 0,...t,onClick:o,children:c})});var _e=(o=>(o.playing="data-playing",o.paused="data-paused",o.ended="data-ended",o.waiting="data-waiting",o.seeking="data-seeking",o.fullscreen="data-fullscreen",o.pip="data-pip",o.muted="data-muted",o.idle="data-idle",o))(_e||{});import*as p from"react";import*as je from"react";function fr(d,e){let n=ne(),i=je.useRef(n);i.current=n,je.useEffect(()=>{if(e==="none")return;let s=t=>{let a=t.target;if(a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable)return;let r=i.current;switch(t.key){case" ":t.preventDefault(),r.toggle();break;case"f":case"F":t.preventDefault(),r.toggleFullscreen();break;case"ArrowUp":t.preventDefault(),r.setVolume(Math.min(r.volume+.1,1));break;case"ArrowDown":t.preventDefault(),r.setVolume(Math.max(r.volume-.1,0));break;case"ArrowRight":t.preventDefault(),r.seek(Math.min(r.currentTime+5,r.duration));break;case"ArrowLeft":t.preventDefault(),r.seek(Math.max(r.currentTime-5,0));break;default:return}r.resetIdle()};if(e==="global")return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s);let c=d.current;if(c)return c.addEventListener("keydown",s),()=>c.removeEventListener("keydown",s)},[e,d])}import{jsx as qe,jsxs as dn}from"react/jsx-runtime";function Ue(d,e,n){let[i,s]=p.useState(e),c=d!==void 0,t=c?d:i,a=p.useCallback(r=>{let o=typeof r=="function"?r(t):r;c||s(o),n?.(o)},[c,t,n]);return[t,a]}function ln({rootRef:d,videoRef:e,actionsRef:n,defaultPlaying:i=!1,defaultVolume:s=1,defaultMuted:c=!1,defaultPlaybackRate:t=1,playing:a,onPlayingChange:r,volume:o,onVolumeChange:l,muted:u,onMutedChange:f,playbackRate:y,onPlaybackRateChange:R,currentTime:g,onCurrentTimeChange:m,idleTimeout:x=3e3,preventIdleWhenPaused:v=!1,idle:b,onIdleChange:V,onEnded:C,onWaiting:B,onSeeking:D,onSeeked:q,onFullscreenChange:K,onPictureInPictureChange:T,children:W}){let O=p.useRef(1),[E,H]=p.useState("paused"),[Y,$]=p.useState(i?"play":"pause");p.useEffect(()=>{a!==void 0&&($(a?"play":"pause"),E!=="waiting"&&H(a?"playing":"paused"))},[a,E]);let[h,A]=Ue(o,s,l),[X,ae]=Ue(u,c,f),[fe,pt]=Ue(y,t,R),[Dr,Z]=Ue(b,!0,V),ee=p.useRef(null),me=p.useCallback(()=>{ee.current&&(clearTimeout(ee.current),ee.current=null)},[]),ft=p.useCallback(()=>{x!==0&&(me(),ee.current=setTimeout(()=>{Z(!0)},x))},[x,me,Z]),mt=p.useCallback(()=>{Z(!1),ft()},[Z,ft]),Pt=p.useCallback(()=>{me(),Z(!0)},[me,Z]);p.useEffect(()=>(x>0&&(ee.current=setTimeout(()=>{Z(!0)},x)),()=>{ee.current&&clearTimeout(ee.current)}),[]);let Rt=v&&E!=="playing"?!1:Dr,[yt,St]=p.useState(0),[Pe,bt]=p.useState(0),[kt,Or]=p.useState(null),[Re,Ar]=p.useState(null),[gt,Fr]=p.useState(!1),[vt,Tt]=p.useState(!1),[ye,Wr]=p.useState(!1),[Se,xt]=p.useState(!1),[ht,ot]=p.useState([]),[te,Qr]=p.useState(null),[Ct,be]=p.useState([]),[Mt,hn]=p.useState([]),[Et,$r]=p.useState(null);p.useEffect(()=>{g!==void 0&&e.current&&(e.current.currentTime=g)},[g,e]),p.useEffect(()=>{let k=()=>{let M=document.fullscreenElement===d.current;Wr(M),K?.(M)};return document.addEventListener("fullscreenchange",k),()=>document.removeEventListener("fullscreenchange",k)},[K,d]),p.useEffect(()=>{let k=e.current;if(!k)return;let M=()=>{xt(!0),T?.(!0)},F=()=>{xt(!1),T?.(!1)};return k.addEventListener("enterpictureinpicture",M),k.addEventListener("leavepictureinpicture",F),()=>{k.removeEventListener("enterpictureinpicture",M),k.removeEventListener("leavepictureinpicture",F)}},[T,e]);let ke=p.useCallback(async()=>{e.current&&($("play"),await e.current.play(),H("playing"),r?.(!0))},[e,r]),ge=p.useCallback(()=>{e.current&&($("pause"),e.current.pause(),H("paused"),r?.(!1))},[e,r]),ve=p.useCallback(async()=>{E==="playing"?ge():await ke()},[E,ke,ge]),Te=p.useCallback(k=>{e.current&&(e.current.currentTime=k,St(k),m?.(k))},[m,e]),xe=p.useCallback(k=>{let M=Math.max(0,Math.min(1,k));e.current&&(e.current.volume=M),A(M)},[A,e]),Vt=p.useCallback(()=>{if(!(X||h===0))O.current=h,e.current&&(e.current.muted=!0),ae(!0);else{let M=O.current>0?O.current:1;e.current&&(e.current.volume=M,e.current.muted=!1),A(M),ae(!1)}},[X,h,ae,A,e]),he=p.useCallback(async()=>{d.current?.requestFullscreen&&await d.current.requestFullscreen()},[d]),Ce=p.useCallback(async()=>{document.exitFullscreen&&await document.exitFullscreen()},[]),Me=p.useCallback(async()=>{ye?await Ce():await he()},[ye,he,Ce]),Ee=p.useCallback(async()=>{e.current?.requestPictureInPicture&&await e.current.requestPictureInPicture()},[e]),Ve=p.useCallback(async()=>{document.pictureInPictureElement&&await document.exitPictureInPicture()},[]),Bt=p.useCallback(async()=>{Se?await Ve():await Ee()},[Se,Ee,Ve]),wt=p.useCallback(k=>{e.current&&(e.current.playbackRate=k),pt(k)},[pt,e]),Lt=p.useCallback(k=>{if(e.current){for(let M=0;M<e.current.textTracks.length;M++){let F=e.current.textTracks[M];F&&(F.mode="disabled")}k&&(k.mode="hidden")}Qr(k),be([])},[e]),It=p.useCallback(k=>{$r(k)},[]),Ht=p.useCallback(k=>{ot(M=>M.some(F=>F.id===k.id)?M:[...M,k])},[]),Dt=p.useCallback(k=>{ot(M=>M.filter(F=>F.id!==k))},[]),Ot=p.useCallback((k,M)=>{ot(F=>F.map(re=>re.id===k?{...re,textTrack:M}:re))},[]);p.useEffect(()=>{if(!te){be([]);return}let k=()=>{let M=te.activeCues;if(!M){be([]);return}let F=[];for(let re=0;re<M.length;re++){let Yt=M[re];Yt instanceof VTTCue&&F.push(Yt)}be(F)};return k(),te.addEventListener("cuechange",k),()=>{te.removeEventListener("cuechange",k)}},[te]),p.useImperativeHandle(n,()=>({toggle:ve,seek:Te,setVolume:xe,toggleFullscreen:Me}),[ve,Te,xe,Me]);let At=p.useCallback(()=>{if(e.current){let k=e.current.currentTime;St(k),m?.(k)}},[m,e]),Ft=p.useCallback(()=>{e.current&&bt(e.current.duration)},[e]),Wt=p.useCallback(()=>{e.current&&Or(e.current.buffered)},[e]),Qt=p.useCallback(()=>{$("play"),H("playing"),r?.(!0)},[r]),$t=p.useCallback(()=>{E!=="ended"&&(H("paused"),r?.(!1))},[E,r]),Nt=p.useCallback(()=>{$("pause"),H("ended"),r?.(!1),C?.()},[r,C]),_t=p.useCallback(()=>{H("waiting"),B?.()},[B]),jt=p.useCallback(()=>{if(E==="waiting"){let k=Y==="play"?"playing":"paused";H(k),r?.(k==="playing")}Fr(!0)},[E,Y,r]),Ut=p.useCallback(()=>{Tt(!0),E==="ended"&&H("paused"),D?.()},[E,D]),qt=p.useCallback(()=>{if(Tt(!1),e.current){let{currentTime:k,duration:M}=e.current;M>0&&M-k<.01&&H("ended")}q?.()},[q,e]),Kt=p.useCallback(()=>{e.current&&(A(e.current.volume),ae(e.current.muted))},[A,ae,e]),Xt=p.useCallback(()=>{e.current&&bt(e.current.duration)},[e]),Nr=p.useMemo(()=>({playbackStatus:E,playbackIntent:Y,playing:E==="playing",paused:E==="paused",ended:E==="ended",waiting:E==="waiting",seeking:vt,canPlay:gt,currentTime:yt,duration:Pe,buffered:kt,hoverTime:Re,hoverProgress:Re!==null&&Pe>0?Re/Pe*100:null,volume:h,muted:X,fullscreen:ye,pictureInPicture:Se,idle:Rt,idleTimeout:x,preventIdleWhenPaused:v,registeredTracks:ht,activeTextTrack:te,activeCues:Ct,playbackRate:fe,qualities:Mt,activeQuality:Et,videoRef:e,rootRef:d,play:ke,pause:ge,toggle:ve,seek:Te,setVolume:xe,toggleMute:Vt,enterFullscreen:he,exitFullscreen:Ce,toggleFullscreen:Me,enterPictureInPicture:Ee,exitPictureInPicture:Ve,togglePictureInPicture:Bt,setPlaybackRate:wt,setTextTrack:Lt,setQuality:It,registerTrack:Ht,unregisterTrack:Dt,updateTrackRef:Ot,resetIdle:mt,setHoverTime:Ar,_handlers:{onTimeUpdate:At,onDurationChange:Ft,onProgress:Wt,onPlay:Qt,onPause:$t,onEnded:Nt,onWaiting:_t,onCanPlay:jt,onSeeking:Ut,onSeeked:qt,onVolumeChange:Kt,onLoadedMetadata:Xt,onRootMouseLeave:Pt}}),[E,Y,vt,gt,yt,Pe,kt,Re,h,X,ye,Se,Rt,x,v,ht,te,Ct,fe,Mt,Et,e,d,ke,ge,ve,Te,xe,Vt,he,Ce,Me,Ee,Ve,Bt,wt,Lt,It,Ht,Dt,Ot,mt,At,Ft,Wt,Qt,$t,Nt,_t,jt,Ut,qt,Kt,Xt,Pt]);return qe(at.Provider,{value:Nr,children:W})}var mr=p.forwardRef(function(e,n){let{actionsRef:i,keyboardShortcuts:s="focused",defaultPlaying:c,defaultVolume:t,defaultMuted:a,defaultPlaybackRate:r,playing:o,onPlayingChange:l,volume:u,onVolumeChange:f,muted:y,onMutedChange:R,playbackRate:g,onPlaybackRateChange:m,currentTime:x,onCurrentTimeChange:v,idleTimeout:b,preventIdleWhenPaused:V,hideCursorWhenIdle:C="fullscreen",idle:B,onIdleChange:D,onEnded:q,onWaiting:K,onSeeking:T,onSeeked:W,onFullscreenChange:O,onPictureInPictureChange:E,children:H,...Y}=e,$=p.useRef(null),h=p.useRef(null);return qe(ln,{actionsRef:i,defaultPlaying:c,defaultVolume:t,defaultMuted:a,defaultPlaybackRate:r,playing:o,onPlayingChange:l,volume:u,onVolumeChange:f,muted:y,onMutedChange:R,playbackRate:g,onPlaybackRateChange:m,currentTime:x,onCurrentTimeChange:v,idleTimeout:b,preventIdleWhenPaused:V,idle:B,onIdleChange:D,onEnded:q,onWaiting:K,onSeeking:T,onSeeked:W,onFullscreenChange:O,onPictureInPictureChange:E,rootRef:$,videoRef:h,children:qe(un,{ref:n,rootRef:$,keyboardShortcuts:s,hideCursorWhenIdle:C,...Y,children:H})})}),un=p.forwardRef(function({rootRef:e,keyboardShortcuts:n,hideCursorWhenIdle:i,children:s,className:c,style:t,...a},r){let o=ne(),l=cn(r,e),u=p.useRef(null);fr(e,n);let f=p.useCallback(b=>{let{clientX:V,clientY:C}=b,B=u.current;B&&B.x===V&&B.y===C||(u.current={x:V,y:C},o.resetIdle())},[o]),y=p.useCallback(b=>{let{clientX:V,clientY:C}=b,B=u.current;B&&B.x===V&&B.y===C||(u.current={x:V,y:C},o.resetIdle())},[o]),R=p.useCallback(()=>{o._handlers.onRootMouseLeave()},[o._handlers]),g=p.useCallback(()=>{o.resetIdle()},[o]),m={"data-playing":o.playing||void 0,"data-paused":o.paused||void 0,"data-ended":o.ended||void 0,"data-waiting":o.waiting||void 0,"data-seeking":o.seeking||void 0,"data-fullscreen":o.fullscreen||void 0,"data-pip":o.pictureInPicture||void 0,"data-muted":o.muted||void 0,"data-idle":o.idle||void 0},x=i!==!1&&o.idle&&(i==="always"||i==="fullscreen"&&o.fullscreen),v=p.useId();return dn("div",{ref:l,tabIndex:n==="focused"?0:void 0,className:c,style:t,"data-video-player-scope":v,...m,...a,onMouseMove:f,onMouseEnter:y,onMouseLeave:R,onClick:g,children:[x&&qe("style",{children:`[data-video-player-scope="${v}"], [data-video-player-scope="${v}"] * { cursor: none !important; }`}),s]})});function cn(...d){return p.useCallback(e=>{for(let n of d)typeof n=="function"?n(e):n!=null&&(n.current=e)},d)}var Ke=(t=>(t.progress="--seek-progress",t.buffered="--seek-buffered",t.currentTime="--seek-current-time",t.duration="--seek-duration",t.hoverProgress="--seek-hover-progress",t.hoverTime="--seek-hover-time",t))(Ke||{});var Xe=(s=>(s.seeking="data-seeking",s.hovering="data-hovering",s.pressing="data-pressing",s.dragging="data-dragging",s))(Xe||{});import{Slider as Q}from"@base-ui/react/slider";import{autoUpdate as pn,offset as fn,shift as mn,useFloating as Pn}from"@floating-ui/react";import*as S from"react";import*as Pr from"react-dom";var Ye=(s=>(s.open="data-open",s.closed="data-closed",s.startingStyle="data-starting-style",s.endingStyle="data-ending-style",s))(Ye||{});import{jsx as w,jsxs as Rn}from"react/jsx-runtime";var ct=S.createContext(null);function Rr(d){let e=S.useContext(ct);if(!e)throw new Error(`${d} must be used within SeekSlider`);return e}var yr=S.forwardRef(function(e,n){let{render:i,children:s,onPointerMove:c,onPointerLeave:t,onPointerDown:a,onValueCommitted:r,...o}=e,l=P("SeekSlider"),u=S.useRef(null),[f,y]=S.useState(null),[R,g]=S.useState(!1),[m,x]=S.useState(!1),v=S.useRef(!1);S.useEffect(()=>{if(!R)return;let h=()=>{g(!1),x(!1),v.current=!1};return window.addEventListener("pointerup",h),()=>window.removeEventListener("pointerup",h)},[R]);let b=l.duration>0?l.currentTime/l.duration*100:0,V=S.useCallback(h=>{let A=typeof h=="number"?h:h[0];A!==void 0&&(l.seek(A),l.resetIdle(),v.current&&x(!0))},[l]),C=S.useCallback(h=>{if(c?.(h),!u.current||l.duration===0)return;let A=u.current.getBoundingClientRect(),X=h.clientX-A.left,fe=Math.max(0,Math.min(1,X/A.width))*l.duration;l.setHoverTime(fe)},[c,l]),B=S.useCallback(h=>{t?.(h),l.setHoverTime(null)},[t,l]),D=S.useCallback(h=>{a?.(h),g(!0),v.current=!0},[a]),q=S.useCallback((h,A)=>{let X=typeof h=="number"?h:h[0];X!==void 0&&(r?.(X,A),g(!1),x(!1),v.current=!1)},[r]),K=S.useMemo(()=>{if(!l.buffered||l.buffered.length===0)return 0;for(let h=0;h<l.buffered.length;h++)if(l.buffered.start(h)<=l.currentTime&&l.currentTime<=l.buffered.end(h))return l.buffered.end(h);return l.buffered.end(0)},[l.buffered,l.currentTime]),T=l.duration>0?K/l.duration*100:0;S.useLayoutEffect(()=>{typeof n=="function"?n(u.current):n&&(n.current=u.current)});let W={currentTime:l.currentTime,duration:l.duration,progress:b,seeking:l.seeking,pressing:R,dragging:m,hoverTime:l.hoverTime,hoverProgress:l.hoverProgress},O=l.hoverProgress!==null,E=l.hoverProgress??0,H=S.useMemo(()=>({sliderRef:u,previewThumbElement:f,setPreviewThumbElement:y,hoverProgress:E,open:O}),[u,f,y,E,O]),Y={position:"relative","--seek-progress":`${b}%`,"--seek-buffered":`${T}%`,"--seek-current-time":l.currentTime,"--seek-duration":l.duration,"--seek-hover-progress":l.hoverProgress!==null?`${l.hoverProgress}%`:void 0,"--seek-hover-time":l.hoverTime??void 0,...o.style},$={"data-seeking":l.seeking||void 0,"data-hovering":l.hoverTime!==null||void 0,"data-pressing":R||void 0,"data-dragging":m||void 0,style:Y};return i?w(ct.Provider,{value:H,children:w(Q.Root,{ref:u,min:0,max:l.duration||100,step:.1,value:l.currentTime,onValueChange:V,onValueCommitted:q,onPointerMove:C,onPointerLeave:B,onPointerDown:D,"aria-label":"Seek",render:h=>i({...h,...$,style:{...h.style,...$.style}},W)})}):w(ct.Provider,{value:H,children:w(Q.Root,{ref:u,min:0,max:l.duration||100,step:.1,value:l.currentTime,onValueChange:V,onValueCommitted:q,onPointerMove:C,onPointerLeave:B,onPointerDown:D,"aria-label":"Seek",...$,...o,children:s??w(Q.Control,{children:Rn(Q.Track,{style:{position:"relative"},children:[w("div",{style:{position:"absolute",left:0,top:0,height:"100%",width:`${T}%`}}),w(Q.Indicator,{}),w(Q.Thumb,{})]})})})})}),Sr=Q.Control,br=S.forwardRef(function(e,n){let{render:i,children:s,style:c,...t}=e,a={},r={position:"relative",...c},o={ref:n,style:r};return i?w(Q.Track,{render:l=>i({...l,...o},a)}):w(Q.Track,{ref:n,style:r,...t,children:s})}),kr=S.forwardRef(function(e,n){let{render:i,children:s,style:c,...t}=e,a=P("SeekSliderProgress"),o={progress:a.duration>0?a.currentTime/a.duration*100:0},l={height:"100%",...c},u={ref:n,style:l};return i?w(Q.Indicator,{render:f=>i({...f,...u,style:{...f.style,...l}},o)}):w(Q.Indicator,{ref:n,style:l,...t,children:s})}),gr=S.forwardRef(function(e,n){let{render:i,children:s,style:c,...t}=e,a={},r={ref:n,style:c??{}};return i?w(Q.Thumb,{render:o=>i({...o,...r,style:{...o.style,...c}},a)}):w(Q.Thumb,{ref:n,style:c,...t,children:s})}),vr=S.forwardRef(function(e,n){let{render:i,children:s,...c}=e,t=P("SeekSliderBuffered"),a=S.useMemo(()=>{if(!t.buffered||t.buffered.length===0)return 0;for(let f=0;f<t.buffered.length;f++)if(t.buffered.start(f)<=t.currentTime&&t.currentTime<=t.buffered.end(f))return t.buffered.end(f);return t.buffered.end(0)},[t.buffered,t.currentTime]),r=t.duration>0?a/t.duration*100:0,o={bufferedPercentage:r},l={position:"absolute",left:0,top:0,height:"100%",width:`${r}%`,...c.style},u={ref:n,style:l};return i?i(u,o):w("div",{...u,...c,children:s})}),Tr=S.forwardRef(function(e,n){let{keepMounted:i=!1,render:s,children:c,...t}=e,a=P("SeekSliderPreviewThumb"),r=Rr("SeekSliderPreviewThumb"),o=a.hoverProgress!==null,l=S.useRef(0);a.hoverProgress!==null&&(l.current=a.hoverProgress);let u=a.hoverProgress??l.current,{mounted:f,transitionStatus:y,elementRef:R}=j({open:o,keepMounted:i}),g=S.useCallback(b=>{R.current=b,r.setPreviewThumbElement(b),typeof n=="function"?n(b):n&&(n.current=b)},[n,R,r]),m={open:o,transitionStatus:y,hoverProgress:u},x={position:"absolute",left:`${u}%`,transform:"translateX(-50%)",pointerEvents:"none",...t.style},v={ref:g,style:x,"data-open":o||void 0,"data-closed":!o||void 0,"data-starting-style":y==="starting"||void 0,"data-ending-style":y==="ending"||void 0};return f?s?s(v,m):w("span",{...v,...t,children:c}):null}),xr=S.forwardRef(function(e,n){let{render:i,children:s,style:c,...t}=e,a=P("SeekSliderHover"),r=a.hoverProgress!==null,o=a.hoverProgress??0,l={hovering:r,hoverProgress:a.hoverProgress,hoverTime:a.hoverTime},u={position:"absolute",left:0,top:0,height:"100%",width:`${o}%`,pointerEvents:"none",...c},f={ref:n,style:u,"data-hovering":r||void 0};return i?i(f,l):w("div",{...f,...t,children:s})});function Ge({children:d,container:e}){let n=P("SeekSliderPreviewTooltipPortal"),[i,s]=S.useState(!1);if(S.useEffect(()=>{s(!0)},[]),!i)return null;let c=e??n.rootRef.current??document.body;return Pr.createPortal(d,c)}var ze=S.forwardRef(function(e,n){let{sideOffset:i=8,collisionPadding:s=0,collisionBoundary:c,keepMounted:t=!1,children:a,style:r,...o}=e,l=Rr("SeekSliderPreviewTooltipPositioner"),{previewThumbElement:u,open:f,hoverProgress:y}=l,[R,g]=S.useState(null),{refs:m,floatingStyles:x,update:v}=Pn({placement:"top",middleware:[fn(i),mn({boundary:c,padding:s})]});S.useLayoutEffect(()=>{u&&m.setReference(u)},[u,m]),S.useEffect(()=>{if(f&&u&&R)return pn(u,R,v)},[f,u,R,v]),S.useLayoutEffect(()=>{f&&u&&R&&v()},[y,f,u,R,v]);let b=S.useCallback(C=>{m.setFloating(C),g(C),typeof n=="function"?n(C):n&&(n.current=C)},[m,n]);return(t||f)&&!!u?w("div",{ref:b,style:{...x,...r},"data-seek-slider-preview-tooltip-positioner":!0,"data-open":f||void 0,"data-closed":!f||void 0,...o,children:a}):null}),Je=S.forwardRef(function(e,n){let{children:i,...s}=e;return w("div",{ref:n,"data-seek-slider-preview-tooltip-popup":!0,...s,children:i})});function de({sideOffset:d,collisionPadding:e,collisionBoundary:n,keepMounted:i,container:s,children:c,...t}){return w(Ge,{container:s,children:w(ze,{sideOffset:d,collisionPadding:e,collisionBoundary:n,keepMounted:i,children:w(Je,{...t,children:c})})})}de.Portal=Ge;de.Positioner=ze;de.Popup=Je;var Ze=(i=>(i.loading="data-loading",i.ready="data-ready",i.error="data-error",i))(Ze||{});import*as I from"react";import{jsx as yn}from"react/jsx-runtime";var hr=I.forwardRef(function(e,n){let{time:i,crossOrigin:s="anonymous",render:c,children:t,width:a,height:r,...o}=e,l=P("Thumbnail"),u=I.useRef(null),f=I.useRef(null),y=I.useRef(null),[R,g]=I.useState("idle"),[m,x]=I.useState({width:160,height:90}),v=i!==void 0?i:l.hoverTime,b=I.useMemo(()=>{let T=l.videoRef.current;return T?T.currentSrc||T.src:null},[l.videoRef]);I.useEffect(()=>{if(!b)return;let T=document.createElement("video");T.src=b,T.crossOrigin=s,T.preload="metadata",T.muted=!0,T.playsInline=!0;let W=()=>{x({width:T.videoWidth,height:T.videoHeight})},O=()=>{g("error")};return T.addEventListener("loadedmetadata",W),T.addEventListener("error",O),f.current=T,()=>{T.removeEventListener("loadedmetadata",W),T.removeEventListener("error",O),T.src="",f.current=null}},[b,s]),I.useEffect(()=>{let T=f.current,W=u.current;if(!T||!W||v===null||v===void 0||y.current!==null&&Math.abs(y.current-v)<.1)return;g("loading");let O=()=>{let E=W.getContext("2d");if(E)try{E.drawImage(T,0,0,W.width,W.height),y.current=v,g("ready")}catch{g("error")}};return T.addEventListener("seeked",O,{once:!0}),T.currentTime=v,()=>{T.removeEventListener("seeked",O)}},[v]);let V=I.useCallback(T=>{u.current=T,typeof n=="function"?n(T):n&&(n.current=T)},[n]),C=m.width/m.height,B=a??160,D=r??Math.round(B/C);typeof B=="string"&&(B=160),typeof D=="string"&&(D=90);let q={loading:R==="loading",ready:R==="ready",error:R==="error",time:v,videoWidth:m.width,videoHeight:m.height},K={ref:V,width:B,height:D,"data-loading":R==="loading"||void 0,"data-ready":R==="ready"||void 0,"data-error":R==="error"||void 0};return c?c(K,q):yn("canvas",{...K,...o,children:t})});var et=(e=>(e.hovering="data-hovering",e))(et||{});import*as tt from"react";import{Fragment as kn,jsx as dt,jsxs as gn}from"react/jsx-runtime";var Cr=tt.forwardRef(function(e,n){let{format:i="current / duration",fixedWidth:s=!0,align:c="left",render:t,...a}=e,r=P("TimeDisplay"),o=tt.useRef(0);r.hoverTime!==null&&(o.current=r.hoverTime);let l=r.duration-r.currentTime,u=pe(r.currentTime),f=pe(r.duration),y=pe(l),R=r.hoverTime!==null?pe(r.hoverTime):pe(o.current),g={currentTime:r.currentTime,duration:r.duration,remaining:l,hoverTime:r.hoverTime,hovering:r.hoverTime!==null,formattedCurrent:u,formattedDuration:f,formattedRemaining:y,formattedHover:R},m=()=>{switch(i){case"current":return u;case"duration":return f;case"remaining":return`-${y}`;case"current / duration":return`${u} / ${f}`;case"current / remaining":return`${u} / -${y}`;case"hover":return R;default:return`${u} / ${f}`}},x=()=>{let b=bn(r.duration);switch(i){case"current":case"duration":case"hover":return b;case"remaining":return`-${b}`;case"current / duration":return`${b} / ${b}`;case"current / remaining":return`${b} / -${b}`;default:return`${b} / ${b}`}},v={ref:n,style:{position:s?"relative":void 0,userSelect:"none",fontVariantNumeric:"tabular-nums",...a.style},"data-hovering":g.hovering||void 0};return t?t(v,g):dt("span",{ref:n,"data-hovering":g.hovering||void 0,...a,style:{position:s?"relative":void 0,userSelect:"none",fontVariantNumeric:"tabular-nums",...a.style},children:s?gn(kn,{children:[dt("span",{"aria-hidden":!0,style:{visibility:"hidden"},children:x()}),dt("span",{style:Sn(c),children:m()})]}):m()})});function Sn(d){let e={position:"absolute"};switch(d){case"left":return{...e,left:0};case"right":return{...e,right:0};case"center":return{...e,left:"50%",transform:"translateX(-50%)"}}}function pe(d){if(!Number.isFinite(d)||Number.isNaN(d))return"0:00";let e=Math.floor(d/3600),n=Math.floor(d%3600/60),i=Math.floor(d%60);return e>0?`${e}:${n.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`:`${n}:${i.toString().padStart(2,"0")}`}function bn(d){if(!Number.isFinite(d)||Number.isNaN(d)||d<=0)return"0:00";let e=Math.floor(d/3600),n=Math.floor(d%3600/60);if(e>0){let s=String(e).length;return`${"0".repeat(s)}:00:00`}let i=String(n).length;return`${"0".repeat(i)}:00`}import*as N from"react";import{jsx as vn}from"react/jsx-runtime";var Mr=N.forwardRef(function(e,n){let{kind:i="captions",src:s,label:c,srcLang:t,default:a,...r}=e,{registerTrack:o,unregisterTrack:l,updateTrackRef:u,setTextTrack:f}=P("Track"),y=N.useRef(null),R=N.useId(),g=N.useCallback(m=>{typeof n=="function"?n(m):n&&(n.current=m),y.current=m},[n]);return N.useEffect(()=>(o({id:R,kind:i,label:c,srcLang:t,src:s,textTrack:null}),()=>{l(R)}),[R,i,c,t,s,o,l]),N.useEffect(()=>{let m=y.current;if(!m)return;let x=()=>{m.track&&(m.track.mode="disabled",u(R,m.track),a&&f(m.track))};return m.track&&x(),m.addEventListener("load",x),()=>{m.removeEventListener("load",x)}},[R,a,u,f]),vn("track",{ref:g,kind:i,src:s,label:c,srcLang:t,default:a,...r})});import*as oe from"react";import{jsx as Tn}from"react/jsx-runtime";var Er=oe.forwardRef(function(e,n){let{toggleOnClick:i=!0,onClick:s,...c}=e,t=P("Video"),a=oe.useRef(!1),r=oe.useCallback(u=>{typeof n=="function"?n(u):n&&(n.current=u),t.videoRef.current=u,u&&!a.current&&(a.current=!0,u.readyState>=1&&u.duration&&(t._handlers.onLoadedMetadata(),t._handlers.onDurationChange()),u.readyState>=3&&t._handlers.onCanPlay())},[n,t.videoRef,t._handlers]),o=oe.useCallback(u=>{s?.(u),!u.defaultPrevented&&i&&t.toggle()},[s,i,t]),l={"data-playing":t.playing||void 0,"data-paused":t.paused||void 0,"data-ended":t.ended||void 0,"data-waiting":t.waiting||void 0,"data-seeking":t.seeking||void 0};return Tn("video",{ref:r,preload:"metadata",...l,...c,onClick:o,onTimeUpdate:t._handlers.onTimeUpdate,onDurationChange:t._handlers.onDurationChange,onProgress:t._handlers.onProgress,onPlay:t._handlers.onPlay,onPause:t._handlers.onPause,onEnded:t._handlers.onEnded,onWaiting:t._handlers.onWaiting,onCanPlay:t._handlers.onCanPlay,onSeeking:t._handlers.onSeeking,onSeeked:t._handlers.onSeeked,onVolumeChange:t._handlers.onVolumeChange,onLoadedMetadata:t._handlers.onLoadedMetadata})});var rt=(n=>(n.volume="--volume",n.volumePercentage="--volume-percentage",n))(rt||{});var nt=(s=>(s.muted="data-muted",s.volume="data-volume",s.pressing="data-pressing",s.dragging="data-dragging",s))(nt||{});import{Slider as U}from"@base-ui/react/slider";import*as L from"react";import{jsx as J,jsxs as xn}from"react/jsx-runtime";var Vr=L.forwardRef(function(e,n){let{render:i,children:s,onPointerDown:c,...t}=e,a=P("VolumeSlider"),r=L.useRef(null),[o,l]=L.useState(!1),[u,f]=L.useState(!1),y=L.useRef(!1);L.useEffect(()=>{if(!o)return;let C=()=>{l(!1),f(!1),y.current=!1};return window.addEventListener("pointerup",C),()=>window.removeEventListener("pointerup",C)},[o]),L.useLayoutEffect(()=>{typeof n=="function"?n(r.current):n&&(n.current=r.current)});let R=a.volume*100,g={volume:a.volume,muted:a.muted,percentage:R,pressing:o,dragging:u},m=L.useCallback(C=>{let B=typeof C=="number"?C:C[0];if(B!==void 0){if(a.muted){let D=a.videoRef.current;D&&(D.muted=!1)}a.setVolume(B),a.resetIdle(),y.current&&f(!0)}},[a]),x=L.useCallback(C=>{c?.(C),l(!0),y.current=!0},[c]),v={"data-muted":a.muted||void 0,"data-volume":a.volume,"data-pressing":o||void 0,"data-dragging":u||void 0},b={position:"relative","--volume":a.volume,"--volume-percentage":`${R}%`,...t.style},V={"data-muted":a.muted||void 0,"data-volume":a.volume,"data-pressing":o||void 0,"data-dragging":u||void 0,style:b};return i?J(U.Root,{ref:r,min:0,max:1,step:.01,value:a.muted?0:a.volume,onValueChange:m,onPointerDown:x,"aria-label":"Volume",render:C=>i({...C,...V},g)}):J(U.Root,{ref:r,min:0,max:1,step:.01,value:a.muted?0:a.volume,onValueChange:m,onPointerDown:x,"aria-label":"Volume",...v,...t,style:b,children:s??J(U.Control,{children:xn(U.Track,{children:[J(U.Indicator,{}),J(U.Thumb,{})]})})})}),Br=U.Control,wr=L.forwardRef(function(e,n){let{style:i,...s}=e,c={position:"relative",...i};return J(U.Track,{ref:n,style:c,...s})}),Lr=L.forwardRef(function(e,n){return J(U.Indicator,{ref:n,...e})}),Ir=L.forwardRef(function(e,n){return J(U.Thumb,{ref:n,...e})});export{Hr as VideoPlayer,ne as useVideoPlayer};
1
+ import{a as Xr}from"../chunk-4C666HHU.js";import*as Ie from"react";var lt=Ie.createContext(null);function R(c){let e=Ie.useContext(lt);if(!e)throw new Error(`<VideoPlayer.${c}> must be used within <VideoPlayer.Root>`);return e}function ae(){return R("useVideoPlayer")}var Qr={};Xr(Qr,{BufferedIndicator:()=>tr,Captions:()=>or,CaptionsButton:()=>ar,CaptionsDataAttributes:()=>De,CaptionsMenu:()=>ir,CaptionsMenuItem:()=>Fe,Controls:()=>sr,ControlsDataAttributes:()=>We,FullscreenButton:()=>lr,MuteButton:()=>ur,Overlay:()=>cr,OverlayDataAttributes:()=>$e,PictureInPictureButton:()=>dr,PlayButton:()=>pr,PlaybackRateButton:()=>fr,PlaybackRateMenu:()=>mr,PlaybackRateMenuItem:()=>ct,Portal:()=>Pr,Poster:()=>Rr,QualityMenu:()=>yr,QualityMenuItem:()=>pt,Root:()=>br,RootDataAttributes:()=>qe,SeekSlider:()=>Tr,SeekSliderBuffered:()=>Er,SeekSliderControl:()=>xr,SeekSliderCssVars:()=>Ge,SeekSliderDataAttributes:()=>ze,SeekSliderHover:()=>wr,SeekSliderPreviewThumb:()=>Vr,SeekSliderPreviewThumbDataAttributes:()=>Je,SeekSliderPreviewTooltip:()=>me,SeekSliderPreviewTooltipPopup:()=>tt,SeekSliderPreviewTooltipPortal:()=>Ze,SeekSliderPreviewTooltipPositioner:()=>et,SeekSliderProgress:()=>Cr,SeekSliderThumb:()=>Mr,SeekSliderTrack:()=>hr,Thumbnail:()=>Br,ThumbnailDataAttributes:()=>rt,TimeDisplay:()=>Lr,TimeDisplayDataAttributes:()=>nt,Track:()=>Ir,Video:()=>Hr,VolumeSlider:()=>Dr,VolumeSliderControl:()=>Or,VolumeSliderCssVars:()=>at,VolumeSliderDataAttributes:()=>it,VolumeSliderRange:()=>Fr,VolumeSliderThumb:()=>Wr,VolumeSliderTrack:()=>Ar,useTransitionStatus:()=>K,useVideoPlayer:()=>ae});import*as He from"react";import{jsx as Yr}from"react/jsx-runtime";var tr=He.forwardRef(function(e,o){let{render:s,...l}=e,u=R("BufferedIndicator"),r=He.useMemo(()=>{if(!u.buffered||u.buffered.length===0)return 0;for(let n=0;n<u.buffered.length;n++)if(u.buffered.start(n)<=u.currentTime&&u.currentTime<=u.buffered.end(n))return u.buffered.end(n);return u.buffered.end(0)},[u.buffered,u.currentTime]),a=u.duration>0?r/u.duration*100:0,t={buffered:u.buffered,duration:u.duration,bufferedPercentage:a,bufferedEnd:r},i={"--buffered-percentage":`${a}%`,"--buffered-end":r,...l.style},p={ref:o,style:i,"aria-hidden":!0};return s?s(p,t):Yr("div",{ref:o,"aria-hidden":"true",...l,style:i})});var De=(e=>(e.active="data-active",e))(De||{});import*as nr from"react";import{jsx as rr}from"react/jsx-runtime";var or=nr.forwardRef(function(e,o){let{render:s,children:l,...u}=e,a=R("Captions").activeCues,t=a.map(f=>f.text).join(`
2
+ `),i=a.length>0,p={active:i,cueText:t,cues:a},n={ref:o,"aria-live":"polite","aria-atomic":!0,role:"status",style:{pointerEvents:"none"},"data-active":i||void 0};return s?s(n,p):l?rr("div",{...n,...u,children:l}):rr("div",{...n,...u,children:t})});import*as Oe from"react";import{jsx as Gr}from"react/jsx-runtime";var ar=Oe.forwardRef(function(e,o){let{render:s,onClick:l,...u}=e,r=R("CaptionsButton"),a=r.registeredTracks.length>0,t=r.activeTextTrack!==null,i={active:t,available:a,trackCount:r.registeredTracks.length},p=Oe.useCallback(f=>{if(l?.(f),!f.defaultPrevented){if(t)r.setTextTrack(null);else if(r.registeredTracks.length>0){let S=r.registeredTracks[0];S?.textTrack&&r.setTextTrack(S.textTrack)}}},[l,r,t]),n={ref:o,type:"button","aria-label":t?"Disable captions":"Enable captions","aria-pressed":t,disabled:!a,"data-active":t||void 0,"data-available":a||void 0,onClick:p};return s?s(n,i):Gr("button",{...n,...u})});import*as ue from"react";import{Fragment as zr,jsx as Ae,jsxs as Jr}from"react/jsx-runtime";var ir=ue.forwardRef(function(e,o){let{render:s,children:l,...u}=e,r=R("CaptionsMenu"),a={registeredTracks:r.registeredTracks,activeTextTrack:r.activeTextTrack},t={ref:o,role:"menu","aria-label":"Captions","data-active":r.activeTextTrack!==null||void 0};return s?s(t,a):Ae("div",{...t,...u,children:l??Jr(zr,{children:[Ae(Fe,{track:null,children:"Off"}),r.registeredTracks.map(i=>Ae(Fe,{track:i.textTrack,children:i.label},i.id))]})})}),Fe=ue.forwardRef(function(e,o){let{track:s,onClick:l,children:u,...r}=e,a=R("CaptionsMenuItem"),t=a.activeTextTrack===s,i=ue.useCallback(p=>{l?.(p),p.defaultPrevented||a.setTextTrack(s)},[l,a,s]);return Ae("button",{ref:o,type:"button",role:"menuitemradio","aria-checked":t,"data-active":t||void 0,...r,onClick:i,children:u})});var We=(t=>(t.open="data-open",t.closed="data-closed",t.idle="data-idle",t.playing="data-playing",t.paused="data-paused",t.ended="data-ended",t.startingStyle="data-starting-style",t.endingStyle="data-ending-style",t))(We||{});import*as ce from"react";import*as q from"react";function Zr(c){let e=[...c.getAnimations(),...Array.from(c.querySelectorAll("*")).flatMap(o=>o.getAnimations())];return e.length===0?Promise.resolve():Promise.all(e.map(o=>o.finished)).then(()=>{}).catch(()=>{})}function K(c){let{open:e,keepMounted:o=!1}=c,[s,l]=q.useState(e||o),[u,r]=q.useState(e?"starting":void 0),a=q.useRef(null),t=q.useRef(!1);return q.useEffect(()=>{if(e){t.current=!1,l(!0),r("starting");let i=requestAnimationFrame(()=>{requestAnimationFrame(()=>{r(void 0)})});return()=>cancelAnimationFrame(i)}},[e]),q.useEffect(()=>{if(!e&&s&&!t.current){r("ending");let i=a.current;if(!i){r(void 0),o||l(!1);return}t.current=!0;let p=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Zr(i).then(()=>{t.current&&(t.current=!1,r(void 0),o||l(!1))})})});return()=>{cancelAnimationFrame(p)}}},[e,s,o]),q.useEffect(()=>{o&&!s&&!e&&l(!0)},[o,s,e]),{mounted:s||o,transitionStatus:u,elementRef:a}}import{jsx as en}from"react/jsx-runtime";var sr=ce.forwardRef(function(e,o){let{idleTimeout:s,keepMounted:l=!1,render:u,children:r,...a}=e,t=R("Controls"),p=(s??t.idleTimeout)===0||!t.idle,{mounted:n,transitionStatus:f,elementRef:S}=K({open:p,keepMounted:l}),y=ce.useCallback(E=>{S.current=E,typeof o=="function"?o(E):o&&(o.current=E)},[o,S]),{onClick:g,...m}=a,h=ce.useCallback(E=>{E.stopPropagation(),g?.(E)},[g]),v={open:p,idle:t.idle,playing:t.playing,paused:t.paused,ended:t.ended},b={ref:y,onClick:h,"data-open":p||void 0,"data-closed":!p||void 0,"data-idle":t.idle||void 0,"data-playing":t.playing||void 0,"data-paused":t.paused||void 0,"data-ended":t.ended||void 0,"data-starting-style":f==="starting"||void 0,"data-ending-style":f==="ending"||void 0};return n?u?u(b,v):en("div",{...b,...m,children:r}):null});import*as J from"react";import{jsx as tn}from"react/jsx-runtime";var lr=J.forwardRef(function(e,o){let{render:s,onClick:l,children:u,...r}=e,a=R("FullscreenButton"),[t,i]=J.useState(!1);J.useEffect(()=>{i("fullscreenEnabled"in document&&document.fullscreenEnabled)},[]);let p=J.useCallback(S=>{l?.(S),S.defaultPrevented||a.toggleFullscreen()},[l,a]),n={fullscreen:a.fullscreen,supported:t},f={ref:o,type:"button","aria-label":a.fullscreen?"Exit fullscreen":"Enter fullscreen","aria-pressed":a.fullscreen,disabled:!t,"data-fullscreen":a.fullscreen||void 0,"data-supported":t||void 0,onClick:p};return s?s(f,n):tn("button",{...f,...r,children:u})});import*as Qe from"react";import{jsx as rn}from"react/jsx-runtime";var ur=Qe.forwardRef(function(e,o){let{render:s,onClick:l,...u}=e,r=R("MuteButton"),a={muted:r.muted,volume:r.volume},t=Qe.useCallback(m=>{l?.(m),m.defaultPrevented||r.toggleMute()},[l,r]),i=r.volume,p=r.muted,n=i===0||p,f=i>0&&!p,S=!p&&i>0&&i<.5,y=!p&&i>=.5,g={ref:o,type:"button","aria-label":r.muted?"Unmute":"Mute","aria-pressed":r.muted,"data-muted":p||void 0,"data-volume-off":n||void 0,"data-volume-on":f||void 0,"data-volume-low":S||void 0,"data-volume-high":y||void 0,onClick:t};return s?s(g,a):rn("button",{...g,...u})});var $e=(n=>(n.open="data-open",n.closed="data-closed",n.playing="data-playing",n.paused="data-paused",n.ended="data-ended",n.waiting="data-waiting",n.seeking="data-seeking",n.fullscreen="data-fullscreen",n.pip="data-pip",n.startingStyle="data-starting-style",n.endingStyle="data-ending-style",n))($e||{});import*as de from"react";import{jsx as nn}from"react/jsx-runtime";var cr=de.forwardRef(function(e,o){let{idleTimeout:s,keepMounted:l=!1,render:u,onClick:r,children:a,...t}=e,i=R("Overlay"),n=(s??i.idleTimeout)===0||!i.idle,{mounted:f,transitionStatus:S,elementRef:y}=K({open:n,keepMounted:l}),g=de.useCallback(b=>{y.current=b,typeof o=="function"?o(b):o&&(o.current=b)},[o,y]),m=de.useCallback(b=>{r?.(b),b.defaultPrevented||i.toggle()},[r,i]),h={playing:i.playing,paused:i.paused,ended:i.ended,waiting:i.waiting,seeking:i.seeking,fullscreen:i.fullscreen,pictureInPicture:i.pictureInPicture,open:n},v={ref:g,onClick:m,"data-playing":i.playing||void 0,"data-paused":i.paused||void 0,"data-ended":i.ended||void 0,"data-waiting":i.waiting||void 0,"data-seeking":i.seeking||void 0,"data-fullscreen":i.fullscreen||void 0,"data-pip":i.pictureInPicture||void 0,"data-open":n||void 0,"data-closed":!n||void 0,"data-starting-style":S==="starting"||void 0,"data-ending-style":S==="ending"||void 0};return f?u?u(v,h):nn("div",{...v,...t,children:a}):null});import*as Z from"react";import{jsx as on}from"react/jsx-runtime";var dr=Z.forwardRef(function(e,o){let{render:s,onClick:l,...u}=e,r=R("PictureInPictureButton"),[a,t]=Z.useState(!1);Z.useEffect(()=>{t("pictureInPictureEnabled"in document&&document.pictureInPictureEnabled)},[]);let i={pictureInPicture:r.pictureInPicture,supported:a},p=Z.useCallback(f=>{l?.(f),f.defaultPrevented||r.togglePictureInPicture()},[l,r]),n={ref:o,type:"button","aria-label":r.pictureInPicture?"Exit picture-in-picture":"Enter picture-in-picture","aria-pressed":r.pictureInPicture,disabled:!a,"data-pip":r.pictureInPicture||void 0,"data-supported":a||void 0,onClick:p};return s?s(n,i):on("button",{...n,...u})});import*as Ne from"react";import{jsx as an}from"react/jsx-runtime";var pr=Ne.forwardRef(function(e,o){let{render:s,onClick:l,children:u,...r}=e,a=R("PlayButton"),t=Ne.useCallback(n=>{l?.(n),n.defaultPrevented||a.toggle()},[l,a]),i={playing:a.playing,paused:a.paused,ended:a.ended,waiting:a.waiting},p={ref:o,type:"button","aria-label":a.playing?"Pause":"Play","data-playing":a.playing||void 0,"data-paused":a.paused||void 0,"data-ended":a.ended||void 0,"data-waiting":a.waiting||void 0,onClick:t};return s?s(p,i):an("button",{...p,...r,children:u})});import*as Ue from"react";import{jsx as ln}from"react/jsx-runtime";var sn=[.25,.5,.75,1,1.25,1.5,1.75,2],fr=Ue.forwardRef(function(e,o){let{rates:s=sn,render:l,onClick:u,children:r,...a}=e,t=R("PlaybackRateButton"),i={playbackRate:t.playbackRate,rates:s},p=Ue.useCallback(f=>{if(u?.(f),!f.defaultPrevented){let y=(s.indexOf(t.playbackRate)+1)%s.length,g=s[y]??s[0]??t.playbackRate;t.setPlaybackRate(g)}},[u,t,s]),n={ref:o,type:"button","aria-label":`Playback speed: ${t.playbackRate}x`,"data-rate":t.playbackRate,onClick:p};return l?l(n,i):ln("button",{...n,...a,children:r??`${t.playbackRate}x`})});import*as pe from"react";import{jsx as ut}from"react/jsx-runtime";var un=[.25,.5,.75,1,1.25,1.5,1.75,2],mr=pe.forwardRef(function(e,o){let{rates:s=un,render:l,children:u,...r}=e,a=R("PlaybackRateMenu"),t={playbackRate:a.playbackRate,rates:s},i={ref:o,role:"menu","aria-label":"Playback speed","data-rate":a.playbackRate};return l?l(i,t):ut("div",{...i,...r,children:u??s.map(p=>ut(ct,{rate:p},p))})}),ct=pe.forwardRef(function(e,o){let{rate:s,onClick:l,children:u,...r}=e,a=R("PlaybackRateMenuItem"),t=a.playbackRate===s,i=pe.useCallback(p=>{l?.(p),p.defaultPrevented||a.setPlaybackRate(s)},[l,a,s]);return ut("button",{ref:o,type:"button",role:"menuitemradio","aria-checked":t,"data-active":t||void 0,...r,onClick:i,children:u??`${s}x`})});import*as _e from"react";import{createPortal as cn}from"react-dom";function Pr(c){let{children:e,container:o}=c,[s,l]=_e.useState(!1);if(_e.useEffect(()=>(l(!0),()=>l(!1)),[]),!s)return null;let u=o??(typeof document<"u"?document.body:null);return u?cn(e,u):null}import*as je from"react";import{jsx as pn}from"react/jsx-runtime";var Rr=je.forwardRef(function(e,o){let{keepMounted:s=!1,render:l,children:u,...r}=e,a=R("Poster"),t=!a.canPlay,i=a.canPlay,{mounted:p,transitionStatus:n,elementRef:f}=K({open:t,keepMounted:s}),S=dn(o,f),y={loading:t,loaded:i,transitionStatus:n},g={ref:S,"aria-hidden":!0,"data-loading":t||void 0,"data-loaded":i||void 0,"data-starting-style":n==="starting"||void 0,"data-ending-style":n==="ending"||void 0};return p?l?l(g,y):pn("div",{...g,...r,children:u}):null});function dn(...c){return je.useCallback(e=>{for(let o of c)typeof o=="function"?o(e):o!=null&&(o.current=e)},c)}import*as fe from"react";import{jsx as dt}from"react/jsx-runtime";var yr=fe.forwardRef(function(e,o){let{render:s,children:l,...u}=e,r=R("QualityMenu"),a={qualities:r.qualities,activeQuality:r.activeQuality},t={ref:o,role:"menu","aria-label":"Video quality","data-quality":r.activeQuality?.label??void 0};return s?s(t,a):dt("div",{...t,...u,children:l??r.qualities.map(i=>dt(pt,{quality:i,children:i.label},i.label))})}),pt=fe.forwardRef(function(e,o){let{quality:s,onClick:l,children:u,...r}=e,a=R("QualityMenuItem"),t=a.activeQuality?.label===s.label,i=fe.useCallback(p=>{l?.(p),p.defaultPrevented||a.setQuality(s)},[l,a,s]);return dt("button",{ref:o,type:"button",role:"menuitemradio","aria-checked":t,"data-active":t||void 0,...r,onClick:i,children:u})});var qe=(i=>(i.playing="data-playing",i.paused="data-paused",i.ended="data-ended",i.waiting="data-waiting",i.seeking="data-seeking",i.fullscreen="data-fullscreen",i.pip="data-pip",i.muted="data-muted",i.idle="data-idle",i))(qe||{});import*as d from"react";import*as Ke from"react";function fn(c,e){return!(c instanceof HTMLElement)||c instanceof HTMLInputElement&&c.type==="range"&&e===" "?!1:c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.isContentEditable}function mn(c){return c==="ArrowRight"||c==="ArrowLeft"}function Sr(c,e){let o=ae(),s=Ke.useRef(o);s.current=o,Ke.useEffect(()=>{if(e==="none")return;let l=a=>{if(fn(a.target,a.key))return;let t=s.current;switch(a.key){case" ":a.preventDefault(),t.toggle();break;case"f":case"F":a.preventDefault(),t.toggleFullscreen();break;case"ArrowUp":a.preventDefault(),t.setVolume(Math.min(t.volume+.1,1));break;case"ArrowDown":a.preventDefault(),t.setVolume(Math.max(t.volume-.1,0));break;case"ArrowRight":a.preventDefault(),t.beginSeekInteraction(),t.seek(Math.min(t.currentTime+5,t.duration));break;case"ArrowLeft":a.preventDefault(),t.beginSeekInteraction(),t.seek(Math.max(t.currentTime-5,0));break;default:return}t.resetIdle()},u=a=>{mn(a.key)&&s.current.endSeekInteraction()};if(e==="global")return window.addEventListener("keydown",l),window.addEventListener("keyup",u),()=>{window.removeEventListener("keydown",l),window.removeEventListener("keyup",u)};let r=c.current;if(r)return r.addEventListener("keydown",l),r.addEventListener("keyup",u),()=>{r.removeEventListener("keydown",l),r.removeEventListener("keyup",u)}},[e,c])}import{jsx as Ye,jsxs as Sn}from"react/jsx-runtime";function Xe(c,e,o){let[s,l]=d.useState(e),u=c!==void 0,r=u?c:s,a=d.useCallback(t=>{let i=typeof t=="function"?t(r):t;u||l(i),o?.(i)},[u,r,o]);return[r,a]}function Pn({rootRef:c,videoRef:e,actionsRef:o,defaultPlaying:s=!1,defaultVolume:l=1,defaultMuted:u=!1,defaultPlaybackRate:r=1,playing:a,onPlayingChange:t,volume:i,onVolumeChange:p,muted:n,onMutedChange:f,playbackRate:S,onPlaybackRateChange:y,currentTime:g,onCurrentTimeChange:m,idleTimeout:h=3e3,preventIdleWhenPaused:v=!1,idle:b,onIdleChange:E,onEnded:M,onWaiting:V,onSeeking:O,onSeeked:Y,onFullscreenChange:j,onPictureInPictureChange:T,children:Q}){let A=d.useRef(1),F=d.useRef(!1),G=d.useRef(!1),[w,L]=d.useState("paused"),[N,z]=d.useState(s?"play":"pause");d.useEffect(()=>{a!==void 0&&(z(a?"play":"pause"),w!=="waiting"&&L(a?"playing":"paused"))},[a,w]);let[x,D]=Xe(i,l,p),[U,se]=Xe(n,u,f),[Re,Pt]=Xe(S,r,y),[$r,te]=Xe(b,!0,E),re=d.useRef(null),ye=d.useCallback(()=>{re.current&&(clearTimeout(re.current),re.current=null)},[]),Rt=d.useCallback(()=>{h!==0&&(ye(),re.current=setTimeout(()=>{te(!0)},h))},[h,ye,te]),yt=d.useCallback(()=>{te(!1),Rt()},[te,Rt]),St=d.useCallback(()=>{ye(),te(!0)},[ye,te]);d.useEffect(()=>(h>0&&(re.current=setTimeout(()=>{te(!0)},h)),()=>{re.current&&clearTimeout(re.current)}),[]);let bt=v&&w!=="playing"?!1:$r,[kt,gt]=d.useState(0),[Se,vt]=d.useState(0),[Tt,Nr]=d.useState(null),[be,Ur]=d.useState(null),[xt,ht]=d.useState(!1),[Ct,le]=d.useState(!1),[ke,_r]=d.useState(!1),[ge,Mt]=d.useState(!1),[Et,st]=d.useState([]),[ne,jr]=d.useState(null),[Vt,ve]=d.useState([]),[wt,Ln]=d.useState([]),[Bt,qr]=d.useState(null);d.useEffect(()=>{g!==void 0&&e.current&&(e.current.currentTime=g)},[g,e]),d.useEffect(()=>{let P=()=>{let C=document.fullscreenElement===c.current;_r(C),j?.(C)};return document.addEventListener("fullscreenchange",P),()=>document.removeEventListener("fullscreenchange",P)},[j,c]),d.useEffect(()=>{let P=e.current;if(!P)return;let C=()=>{Mt(!0),T?.(!0)},W=()=>{Mt(!1),T?.(!1)};return P.addEventListener("enterpictureinpicture",C),P.addEventListener("leavepictureinpicture",W),()=>{P.removeEventListener("enterpictureinpicture",C),P.removeEventListener("leavepictureinpicture",W)}},[T,e]);let Te=d.useCallback(async()=>{e.current&&(z("play"),await e.current.play(),L("playing"),t?.(!0))},[e,t]),xe=d.useCallback(()=>{e.current&&(z("pause"),e.current.pause(),L("paused"),t?.(!1))},[e,t]),he=d.useCallback(async()=>{w==="playing"?xe():await Te()},[w,Te,xe]),Ce=d.useCallback(P=>{e.current&&(e.current.currentTime=P,gt(P),m?.(P))},[m,e]),Lt=d.useCallback(()=>{let P=e.current;!P||F.current||(F.current=!0,G.current=N==="play",le(!0),G.current&&!P.paused&&P.pause())},[N,e]),It=d.useCallback(()=>{let P=e.current;if(!P||!F.current)return;let C=G.current&&N==="play";if(F.current=!1,G.current=!1,!C){le(!1);return}P.play().then(()=>{L("playing"),le(!1)}).catch(()=>{L("waiting"),le(!1)})},[N,e]),Me=d.useCallback(P=>{let C=Math.max(0,Math.min(1,P));e.current&&(e.current.volume=C),D(C)},[D,e]),Ht=d.useCallback(()=>{if(!(U||x===0))A.current=x,e.current&&(e.current.muted=!0),se(!0);else{let C=A.current>0?A.current:1;e.current&&(e.current.volume=C,e.current.muted=!1),D(C),se(!1)}},[U,x,se,D,e]),Ee=d.useCallback(async()=>{c.current?.requestFullscreen&&await c.current.requestFullscreen()},[c]),Ve=d.useCallback(async()=>{document.exitFullscreen&&await document.exitFullscreen()},[]),we=d.useCallback(async()=>{ke?await Ve():await Ee()},[ke,Ee,Ve]),Be=d.useCallback(async()=>{e.current?.requestPictureInPicture&&await e.current.requestPictureInPicture()},[e]),Le=d.useCallback(async()=>{document.pictureInPictureElement&&await document.exitPictureInPicture()},[]),Dt=d.useCallback(async()=>{ge?await Le():await Be()},[ge,Be,Le]),Ot=d.useCallback(P=>{e.current&&(e.current.playbackRate=P),Pt(P)},[Pt,e]),At=d.useCallback(P=>{if(e.current){for(let C=0;C<e.current.textTracks.length;C++){let W=e.current.textTracks[C];W&&(W.mode="disabled")}P&&(P.mode="hidden")}jr(P),ve([])},[e]),Ft=d.useCallback(P=>{qr(P)},[]),Wt=d.useCallback(P=>{st(C=>C.some(W=>W.id===P.id)?C:[...C,P])},[]),Qt=d.useCallback(P=>{st(C=>C.filter(W=>W.id!==P))},[]),$t=d.useCallback((P,C)=>{st(W=>W.map(oe=>oe.id===P?{...oe,textTrack:C}:oe))},[]);d.useEffect(()=>{if(!ne){ve([]);return}let P=()=>{let C=ne.activeCues;if(!C){ve([]);return}let W=[];for(let oe=0;oe<C.length;oe++){let er=C[oe];er instanceof VTTCue&&W.push(er)}ve(W)};return P(),ne.addEventListener("cuechange",P),()=>{ne.removeEventListener("cuechange",P)}},[ne]),d.useImperativeHandle(o,()=>({toggle:he,seek:Ce,setVolume:Me,toggleFullscreen:we}),[he,Ce,Me,we]);let Nt=d.useCallback(()=>{if(e.current){let P=e.current.currentTime;gt(P),m?.(P)}},[m,e]),Ut=d.useCallback(()=>{e.current&&vt(e.current.duration)},[e]),_t=d.useCallback(()=>{e.current&&Nr(e.current.buffered)},[e]),jt=d.useCallback(()=>{z("play"),L("playing"),t?.(!0)},[t]),qt=d.useCallback(()=>{F.current||w!=="ended"&&(L("paused"),t?.(!1))},[w,t]),Kt=d.useCallback(()=>{z("pause"),L("ended"),t?.(!1),M?.()},[t,M]),Xt=d.useCallback(()=>{F.current||(L("waiting"),V?.())},[V]),Yt=d.useCallback(()=>{if(F.current){ht(!0);return}if(w==="waiting"){let P=N==="play"?"playing":"paused";L(P),t?.(P==="playing")}ht(!0)},[w,N,t]),Gt=d.useCallback(()=>{le(!0),w==="ended"&&L("paused"),O?.()},[w,O]),zt=d.useCallback(()=>{if(le(!1),e.current){let{currentTime:P,duration:C}=e.current;C>0&&C-P<.01&&L("ended")}Y?.()},[Y,e]),Jt=d.useCallback(()=>{e.current&&(D(e.current.volume),se(e.current.muted))},[D,se,e]),Zt=d.useCallback(()=>{e.current&&vt(e.current.duration)},[e]),Kr=d.useMemo(()=>({playbackStatus:w,playbackIntent:N,playing:w==="playing",paused:w==="paused",ended:w==="ended",waiting:w==="waiting",seeking:Ct,canPlay:xt,currentTime:kt,duration:Se,buffered:Tt,hoverTime:be,hoverProgress:be!==null&&Se>0?be/Se*100:null,volume:x,muted:U,fullscreen:ke,pictureInPicture:ge,idle:bt,idleTimeout:h,preventIdleWhenPaused:v,registeredTracks:Et,activeTextTrack:ne,activeCues:Vt,playbackRate:Re,qualities:wt,activeQuality:Bt,videoRef:e,rootRef:c,play:Te,pause:xe,toggle:he,seek:Ce,setVolume:Me,toggleMute:Ht,enterFullscreen:Ee,exitFullscreen:Ve,toggleFullscreen:we,enterPictureInPicture:Be,exitPictureInPicture:Le,togglePictureInPicture:Dt,setPlaybackRate:Ot,setTextTrack:At,setQuality:Ft,registerTrack:Wt,unregisterTrack:Qt,updateTrackRef:$t,resetIdle:yt,setHoverTime:Ur,beginSeekInteraction:Lt,endSeekInteraction:It,_handlers:{onTimeUpdate:Nt,onDurationChange:Ut,onProgress:_t,onPlay:jt,onPause:qt,onEnded:Kt,onWaiting:Xt,onCanPlay:Yt,onSeeking:Gt,onSeeked:zt,onVolumeChange:Jt,onLoadedMetadata:Zt,onRootMouseLeave:St}}),[w,N,Ct,xt,kt,Se,Tt,be,x,U,ke,ge,bt,h,v,Et,ne,Vt,Re,wt,Bt,e,c,Te,xe,he,Ce,Me,Ht,Ee,Ve,we,Be,Le,Dt,Ot,At,Ft,Wt,Qt,$t,yt,Lt,It,Nt,Ut,_t,jt,qt,Kt,Xt,Yt,Gt,zt,Jt,Zt,St]);return Ye(lt.Provider,{value:Kr,children:Q})}var br=d.forwardRef(function(e,o){let{actionsRef:s,keyboardShortcuts:l="focused",defaultPlaying:u,defaultVolume:r,defaultMuted:a,defaultPlaybackRate:t,playing:i,onPlayingChange:p,volume:n,onVolumeChange:f,muted:S,onMutedChange:y,playbackRate:g,onPlaybackRateChange:m,currentTime:h,onCurrentTimeChange:v,idleTimeout:b,preventIdleWhenPaused:E,hideCursorWhenIdle:M="fullscreen",idle:V,onIdleChange:O,onEnded:Y,onWaiting:j,onSeeking:T,onSeeked:Q,onFullscreenChange:A,onPictureInPictureChange:F,children:G,...w}=e,L=d.useRef(null),N=d.useRef(null);return Ye(Pn,{actionsRef:s,defaultPlaying:u,defaultVolume:r,defaultMuted:a,defaultPlaybackRate:t,playing:i,onPlayingChange:p,volume:n,onVolumeChange:f,muted:S,onMutedChange:y,playbackRate:g,onPlaybackRateChange:m,currentTime:h,onCurrentTimeChange:v,idleTimeout:b,preventIdleWhenPaused:E,idle:V,onIdleChange:O,onEnded:Y,onWaiting:j,onSeeking:T,onSeeked:Q,onFullscreenChange:A,onPictureInPictureChange:F,rootRef:L,videoRef:N,children:Ye(Rn,{ref:o,rootRef:L,keyboardShortcuts:l,hideCursorWhenIdle:M,...w,children:G})})}),Rn=d.forwardRef(function({rootRef:e,keyboardShortcuts:o,hideCursorWhenIdle:s,children:l,className:u,style:r,...a},t){let i=ae(),p=yn(t,e),n=d.useRef(null);Sr(e,o);let f=d.useCallback(b=>{let{clientX:E,clientY:M}=b,V=n.current;V&&V.x===E&&V.y===M||(n.current={x:E,y:M},i.resetIdle())},[i]),S=d.useCallback(b=>{let{clientX:E,clientY:M}=b,V=n.current;V&&V.x===E&&V.y===M||(n.current={x:E,y:M},i.resetIdle())},[i]),y=d.useCallback(()=>{i._handlers.onRootMouseLeave()},[i._handlers]),g=d.useCallback(()=>{i.resetIdle()},[i]),m={"data-playing":i.playing||void 0,"data-paused":i.paused||void 0,"data-ended":i.ended||void 0,"data-waiting":i.waiting||void 0,"data-seeking":i.seeking||void 0,"data-fullscreen":i.fullscreen||void 0,"data-pip":i.pictureInPicture||void 0,"data-muted":i.muted||void 0,"data-idle":i.idle||void 0},h=s!==!1&&i.idle&&(s==="always"||s==="fullscreen"&&i.fullscreen),v=d.useId();return Sn("div",{ref:p,tabIndex:o==="focused"?0:void 0,className:u,style:r,"data-video-player-scope":v,...m,...a,onMouseMove:f,onMouseEnter:S,onMouseLeave:y,onClick:g,children:[h&&Ye("style",{children:`[data-video-player-scope="${v}"], [data-video-player-scope="${v}"] * { cursor: none !important; }`}),l]})});function yn(...c){return d.useCallback(e=>{for(let o of c)typeof o=="function"?o(e):o!=null&&(o.current=e)},c)}var Ge=(r=>(r.progress="--seek-progress",r.buffered="--seek-buffered",r.currentTime="--seek-current-time",r.duration="--seek-duration",r.hoverProgress="--seek-hover-progress",r.hoverTime="--seek-hover-time",r))(Ge||{});var ze=(l=>(l.seeking="data-seeking",l.hovering="data-hovering",l.pressing="data-pressing",l.dragging="data-dragging",l))(ze||{});import{Slider as $}from"@base-ui/react/slider";import{autoUpdate as bn,offset as kn,shift as gn,useFloating as vn}from"@floating-ui/react";import*as k from"react";import*as gr from"react-dom";var Je=(l=>(l.open="data-open",l.closed="data-closed",l.startingStyle="data-starting-style",l.endingStyle="data-ending-style",l))(Je||{});import{jsx as B,jsxs as Tn}from"react/jsx-runtime";var ft=k.createContext(null);function vr(c){let e=k.useContext(ft);if(!e)throw new Error(`${c} must be used within SeekSlider`);return e}function kr(c){return c==="ArrowRight"||c==="ArrowLeft"}var Tr=k.forwardRef(function(e,o){let{render:s,children:l,onPointerMove:u,onPointerLeave:r,onPointerDown:a,onKeyUp:t,onValueCommitted:i,...p}=e,n=R("SeekSlider"),f=k.useRef(null),[S,y]=k.useState(null),[g,m]=k.useState(!1),[h,v]=k.useState(!1),b=k.useRef(!1);k.useEffect(()=>{if(!g)return;let x=()=>{m(!1),v(!1),b.current=!1,n.endSeekInteraction()};return window.addEventListener("pointerup",x),()=>window.removeEventListener("pointerup",x)},[g,n]);let E=n.duration>0?n.currentTime/n.duration*100:0,M=k.useCallback((x,D)=>{let U=typeof x=="number"?x:x[0];U!==void 0&&(D.reason==="keyboard"&&n.beginSeekInteraction(),n.seek(U),n.resetIdle(),b.current&&v(!0))},[n]),V=k.useCallback(x=>{if(u?.(x),!f.current||n.duration===0)return;let D=f.current.getBoundingClientRect(),U=x.clientX-D.left,Re=Math.max(0,Math.min(1,U/D.width))*n.duration;n.setHoverTime(Re)},[u,n]),O=k.useCallback(x=>{r?.(x),n.setHoverTime(null)},[r,n]),Y=k.useCallback(x=>{a?.(x),m(!0),b.current=!0,n.beginSeekInteraction()},[a,n]),j=k.useCallback(x=>{t?.(x),kr(x.key)&&n.endSeekInteraction()},[t,n]),T=k.useCallback((x,D)=>{let U=typeof x=="number"?x:x[0];U!==void 0&&(i?.(U,D),m(!1),v(!1),b.current=!1,!(D.reason==="keyboard"&&kr(D.event.key))&&n.endSeekInteraction())},[i,n]),Q=k.useMemo(()=>{if(!n.buffered||n.buffered.length===0)return 0;for(let x=0;x<n.buffered.length;x++)if(n.buffered.start(x)<=n.currentTime&&n.currentTime<=n.buffered.end(x))return n.buffered.end(x);return n.buffered.end(0)},[n.buffered,n.currentTime]),A=n.duration>0?Q/n.duration*100:0;k.useLayoutEffect(()=>{typeof o=="function"?o(f.current):o&&(o.current=f.current)});let F={currentTime:n.currentTime,duration:n.duration,progress:E,seeking:n.seeking,pressing:g,dragging:h,hoverTime:n.hoverTime,hoverProgress:n.hoverProgress},G=n.hoverProgress!==null,w=n.hoverProgress??0,L=k.useMemo(()=>({sliderRef:f,previewThumbElement:S,setPreviewThumbElement:y,hoverProgress:w,open:G}),[f,S,y,w,G]),N={position:"relative","--seek-progress":`${E}%`,"--seek-buffered":`${A}%`,"--seek-current-time":n.currentTime,"--seek-duration":n.duration,"--seek-hover-progress":n.hoverProgress!==null?`${n.hoverProgress}%`:void 0,"--seek-hover-time":n.hoverTime??void 0,...p.style},z={"data-seeking":n.seeking||void 0,"data-hovering":n.hoverTime!==null||void 0,"data-pressing":g||void 0,"data-dragging":h||void 0,style:N};return s?B(ft.Provider,{value:L,children:B($.Root,{ref:f,min:0,max:n.duration||100,step:.1,value:n.currentTime,onValueChange:M,onValueCommitted:T,onPointerMove:V,onPointerLeave:O,onPointerDown:Y,onKeyUp:j,"aria-label":"Seek",render:x=>s({...x,...z,style:{...x.style,...z.style}},F)})}):B(ft.Provider,{value:L,children:B($.Root,{ref:f,min:0,max:n.duration||100,step:.1,value:n.currentTime,onValueChange:M,onValueCommitted:T,onPointerMove:V,onPointerLeave:O,onPointerDown:Y,onKeyUp:j,"aria-label":"Seek",...z,...p,children:l??B($.Control,{children:Tn($.Track,{style:{position:"relative"},children:[B("div",{style:{position:"absolute",left:0,top:0,height:"100%",width:`${A}%`}}),B($.Indicator,{}),B($.Thumb,{})]})})})})}),xr=$.Control,hr=k.forwardRef(function(e,o){let{render:s,children:l,style:u,...r}=e,a={},t={position:"relative",...u},i={ref:o,style:t};return s?B($.Track,{render:p=>s({...p,...i},a)}):B($.Track,{ref:o,style:t,...r,children:l})}),Cr=k.forwardRef(function(e,o){let{render:s,children:l,style:u,...r}=e,a=R("SeekSliderProgress"),i={progress:a.duration>0?a.currentTime/a.duration*100:0},p={height:"100%",...u},n={ref:o,style:p};return s?B($.Indicator,{render:f=>s({...f,...n,style:{...f.style,...p}},i)}):B($.Indicator,{ref:o,style:p,...r,children:l})}),Mr=k.forwardRef(function(e,o){let{render:s,children:l,style:u,...r}=e,a={},t={ref:o,style:u??{}};return s?B($.Thumb,{render:i=>s({...i,...t,style:{...i.style,...u}},a)}):B($.Thumb,{ref:o,style:u,...r,children:l})}),Er=k.forwardRef(function(e,o){let{render:s,children:l,...u}=e,r=R("SeekSliderBuffered"),a=k.useMemo(()=>{if(!r.buffered||r.buffered.length===0)return 0;for(let f=0;f<r.buffered.length;f++)if(r.buffered.start(f)<=r.currentTime&&r.currentTime<=r.buffered.end(f))return r.buffered.end(f);return r.buffered.end(0)},[r.buffered,r.currentTime]),t=r.duration>0?a/r.duration*100:0,i={bufferedPercentage:t},p={position:"absolute",left:0,top:0,height:"100%",width:`${t}%`,...u.style},n={ref:o,style:p};return s?s(n,i):B("div",{...n,...u,children:l})}),Vr=k.forwardRef(function(e,o){let{keepMounted:s=!1,render:l,children:u,...r}=e,a=R("SeekSliderPreviewThumb"),t=vr("SeekSliderPreviewThumb"),i=a.hoverProgress!==null,p=k.useRef(0);a.hoverProgress!==null&&(p.current=a.hoverProgress);let n=a.hoverProgress??p.current,{mounted:f,transitionStatus:S,elementRef:y}=K({open:i,keepMounted:s}),g=k.useCallback(b=>{y.current=b,t.setPreviewThumbElement(b),typeof o=="function"?o(b):o&&(o.current=b)},[o,y,t]),m={open:i,transitionStatus:S,hoverProgress:n},h={position:"absolute",left:`${n}%`,transform:"translateX(-50%)",pointerEvents:"none",...r.style},v={ref:g,style:h,"data-open":i||void 0,"data-closed":!i||void 0,"data-starting-style":S==="starting"||void 0,"data-ending-style":S==="ending"||void 0};return f?l?l(v,m):B("span",{...v,...r,children:u}):null}),wr=k.forwardRef(function(e,o){let{render:s,children:l,style:u,...r}=e,a=R("SeekSliderHover"),t=a.hoverProgress!==null,i=a.hoverProgress??0,p={hovering:t,hoverProgress:a.hoverProgress,hoverTime:a.hoverTime},n={position:"absolute",left:0,top:0,height:"100%",width:`${i}%`,pointerEvents:"none",...u},f={ref:o,style:n,"data-hovering":t||void 0};return s?s(f,p):B("div",{...f,...r,children:l})});function Ze({children:c,container:e}){let o=R("SeekSliderPreviewTooltipPortal"),[s,l]=k.useState(!1);if(k.useEffect(()=>{l(!0)},[]),!s)return null;let u=e??o.rootRef.current??document.body;return gr.createPortal(c,u)}var et=k.forwardRef(function(e,o){let{sideOffset:s=8,collisionPadding:l=0,collisionBoundary:u,keepMounted:r=!1,children:a,style:t,...i}=e,p=vr("SeekSliderPreviewTooltipPositioner"),{previewThumbElement:n,open:f,hoverProgress:S}=p,[y,g]=k.useState(null),{refs:m,floatingStyles:h,update:v}=vn({placement:"top",middleware:[kn(s),gn({boundary:u,padding:l})]});k.useLayoutEffect(()=>{n&&m.setReference(n)},[n,m]),k.useEffect(()=>{if(f&&n&&y)return bn(n,y,v)},[f,n,y,v]),k.useLayoutEffect(()=>{f&&n&&y&&v()},[S,f,n,y,v]);let b=k.useCallback(M=>{m.setFloating(M),g(M),typeof o=="function"?o(M):o&&(o.current=M)},[m,o]);return(r||f)&&!!n?B("div",{ref:b,style:{...h,...t},"data-seek-slider-preview-tooltip-positioner":!0,"data-open":f||void 0,"data-closed":!f||void 0,...i,children:a}):null}),tt=k.forwardRef(function(e,o){let{children:s,...l}=e;return B("div",{ref:o,"data-seek-slider-preview-tooltip-popup":!0,...l,children:s})});function me({sideOffset:c,collisionPadding:e,collisionBoundary:o,keepMounted:s,container:l,children:u,...r}){return B(Ze,{container:l,children:B(et,{sideOffset:c,collisionPadding:e,collisionBoundary:o,keepMounted:s,children:B(tt,{...r,children:u})})})}me.Portal=Ze;me.Positioner=et;me.Popup=tt;var rt=(s=>(s.loading="data-loading",s.ready="data-ready",s.error="data-error",s))(rt||{});import*as H from"react";import{jsx as xn}from"react/jsx-runtime";var Br=H.forwardRef(function(e,o){let{time:s,crossOrigin:l="anonymous",render:u,children:r,width:a,height:t,...i}=e,p=R("Thumbnail"),n=H.useRef(null),f=H.useRef(null),S=H.useRef(null),[y,g]=H.useState("idle"),[m,h]=H.useState({width:160,height:90}),v=s!==void 0?s:p.hoverTime,b=H.useMemo(()=>{let T=p.videoRef.current;return T?T.currentSrc||T.src:null},[p.videoRef]);H.useEffect(()=>{if(!b)return;let T=document.createElement("video");T.src=b,T.crossOrigin=l,T.preload="metadata",T.muted=!0,T.playsInline=!0;let Q=()=>{h({width:T.videoWidth,height:T.videoHeight})},A=()=>{g("error")};return T.addEventListener("loadedmetadata",Q),T.addEventListener("error",A),f.current=T,()=>{T.removeEventListener("loadedmetadata",Q),T.removeEventListener("error",A),T.src="",f.current=null}},[b,l]),H.useEffect(()=>{let T=f.current,Q=n.current;if(!T||!Q||v===null||v===void 0||S.current!==null&&Math.abs(S.current-v)<.1)return;g("loading");let A=()=>{let F=Q.getContext("2d");if(F)try{F.drawImage(T,0,0,Q.width,Q.height),S.current=v,g("ready")}catch{g("error")}};return T.addEventListener("seeked",A,{once:!0}),T.currentTime=v,()=>{T.removeEventListener("seeked",A)}},[v]);let E=H.useCallback(T=>{n.current=T,typeof o=="function"?o(T):o&&(o.current=T)},[o]),M=m.width/m.height,V=a??160,O=t??Math.round(V/M);typeof V=="string"&&(V=160),typeof O=="string"&&(O=90);let Y={loading:y==="loading",ready:y==="ready",error:y==="error",time:v,videoWidth:m.width,videoHeight:m.height},j={ref:E,width:V,height:O,"data-loading":y==="loading"||void 0,"data-ready":y==="ready"||void 0,"data-error":y==="error"||void 0};return u?u(j,Y):xn("canvas",{...j,...i,children:r})});var nt=(e=>(e.hovering="data-hovering",e))(nt||{});import*as ot from"react";import{Fragment as Mn,jsx as mt,jsxs as En}from"react/jsx-runtime";var Lr=ot.forwardRef(function(e,o){let{format:s="current / duration",fixedWidth:l=!0,align:u="left",render:r,...a}=e,t=R("TimeDisplay"),i=ot.useRef(0);t.hoverTime!==null&&(i.current=t.hoverTime);let p=t.duration-t.currentTime,n=Pe(t.currentTime),f=Pe(t.duration),S=Pe(p),y=t.hoverTime!==null?Pe(t.hoverTime):Pe(i.current),g={currentTime:t.currentTime,duration:t.duration,remaining:p,hoverTime:t.hoverTime,hovering:t.hoverTime!==null,formattedCurrent:n,formattedDuration:f,formattedRemaining:S,formattedHover:y},m=()=>{switch(s){case"current":return n;case"duration":return f;case"remaining":return`-${S}`;case"current / duration":return`${n} / ${f}`;case"current / remaining":return`${n} / -${S}`;case"hover":return y;default:return`${n} / ${f}`}},h=()=>{let b=Cn(t.duration);switch(s){case"current":case"duration":case"hover":return b;case"remaining":return`-${b}`;case"current / duration":return`${b} / ${b}`;case"current / remaining":return`${b} / -${b}`;default:return`${b} / ${b}`}},v={ref:o,style:{position:l?"relative":void 0,userSelect:"none",fontVariantNumeric:"tabular-nums",...a.style},"data-hovering":g.hovering||void 0};return r?r(v,g):mt("span",{ref:o,"data-hovering":g.hovering||void 0,...a,style:{position:l?"relative":void 0,userSelect:"none",fontVariantNumeric:"tabular-nums",...a.style},children:l?En(Mn,{children:[mt("span",{"aria-hidden":!0,style:{visibility:"hidden"},children:h()}),mt("span",{style:hn(u),children:m()})]}):m()})});function hn(c){let e={position:"absolute"};switch(c){case"left":return{...e,left:0};case"right":return{...e,right:0};case"center":return{...e,left:"50%",transform:"translateX(-50%)"}}}function Pe(c){if(!Number.isFinite(c)||Number.isNaN(c))return"0:00";let e=Math.floor(c/3600),o=Math.floor(c%3600/60),s=Math.floor(c%60);return e>0?`${e}:${o.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`:`${o}:${s.toString().padStart(2,"0")}`}function Cn(c){if(!Number.isFinite(c)||Number.isNaN(c)||c<=0)return"0:00";let e=Math.floor(c/3600),o=Math.floor(c%3600/60);if(e>0){let l=String(e).length;return`${"0".repeat(l)}:00:00`}let s=String(o).length;return`${"0".repeat(s)}:00`}import*as _ from"react";import{jsx as Vn}from"react/jsx-runtime";var Ir=_.forwardRef(function(e,o){let{kind:s="captions",src:l,label:u,srcLang:r,default:a,...t}=e,{registerTrack:i,unregisterTrack:p,updateTrackRef:n,setTextTrack:f}=R("Track"),S=_.useRef(null),y=_.useId(),g=_.useCallback(m=>{typeof o=="function"?o(m):o&&(o.current=m),S.current=m},[o]);return _.useEffect(()=>(i({id:y,kind:s,label:u,srcLang:r,src:l,textTrack:null}),()=>{p(y)}),[y,s,u,r,l,i,p]),_.useEffect(()=>{let m=S.current;if(!m)return;let h=()=>{m.track&&(m.track.mode="disabled",n(y,m.track),a&&f(m.track))};return m.track&&h(),m.addEventListener("load",h),()=>{m.removeEventListener("load",h)}},[y,a,n,f]),Vn("track",{ref:g,kind:s,src:l,label:u,srcLang:r,default:a,...t})});import*as ie from"react";import{jsx as wn}from"react/jsx-runtime";var Hr=ie.forwardRef(function(e,o){let{toggleOnClick:s=!0,onClick:l,...u}=e,r=R("Video"),a=ie.useRef(!1),t=ie.useCallback(n=>{typeof o=="function"?o(n):o&&(o.current=n),r.videoRef.current=n,n&&!a.current&&(a.current=!0,n.readyState>=1&&n.duration&&(r._handlers.onLoadedMetadata(),r._handlers.onDurationChange()),n.readyState>=3&&r._handlers.onCanPlay())},[o,r.videoRef,r._handlers]),i=ie.useCallback(n=>{l?.(n),!n.defaultPrevented&&s&&r.toggle()},[l,s,r]),p={"data-playing":r.playing||void 0,"data-paused":r.paused||void 0,"data-ended":r.ended||void 0,"data-waiting":r.waiting||void 0,"data-seeking":r.seeking||void 0};return wn("video",{ref:t,preload:"metadata",...p,...u,onClick:i,onTimeUpdate:r._handlers.onTimeUpdate,onDurationChange:r._handlers.onDurationChange,onProgress:r._handlers.onProgress,onPlay:r._handlers.onPlay,onPause:r._handlers.onPause,onEnded:r._handlers.onEnded,onWaiting:r._handlers.onWaiting,onCanPlay:r._handlers.onCanPlay,onSeeking:r._handlers.onSeeking,onSeeked:r._handlers.onSeeked,onVolumeChange:r._handlers.onVolumeChange,onLoadedMetadata:r._handlers.onLoadedMetadata})});var at=(o=>(o.volume="--volume",o.volumePercentage="--volume-percentage",o))(at||{});var it=(l=>(l.muted="data-muted",l.volume="data-volume",l.pressing="data-pressing",l.dragging="data-dragging",l))(it||{});import{Slider as X}from"@base-ui/react/slider";import*as I from"react";import{jsx as ee,jsxs as Bn}from"react/jsx-runtime";var Dr=I.forwardRef(function(e,o){let{render:s,children:l,onPointerDown:u,...r}=e,a=R("VolumeSlider"),t=I.useRef(null),[i,p]=I.useState(!1),[n,f]=I.useState(!1),S=I.useRef(!1);I.useEffect(()=>{if(!i)return;let M=()=>{p(!1),f(!1),S.current=!1};return window.addEventListener("pointerup",M),()=>window.removeEventListener("pointerup",M)},[i]),I.useLayoutEffect(()=>{typeof o=="function"?o(t.current):o&&(o.current=t.current)});let y=a.volume*100,g={volume:a.volume,muted:a.muted,percentage:y,pressing:i,dragging:n},m=I.useCallback(M=>{let V=typeof M=="number"?M:M[0];if(V!==void 0){if(a.muted){let O=a.videoRef.current;O&&(O.muted=!1)}a.setVolume(V),a.resetIdle(),S.current&&f(!0)}},[a]),h=I.useCallback(M=>{u?.(M),p(!0),S.current=!0},[u]),v={"data-muted":a.muted||void 0,"data-volume":a.volume,"data-pressing":i||void 0,"data-dragging":n||void 0},b={position:"relative","--volume":a.volume,"--volume-percentage":`${y}%`,...r.style},E={"data-muted":a.muted||void 0,"data-volume":a.volume,"data-pressing":i||void 0,"data-dragging":n||void 0,style:b};return s?ee(X.Root,{ref:t,min:0,max:1,step:.01,value:a.muted?0:a.volume,onValueChange:m,onPointerDown:h,"aria-label":"Volume",render:M=>s({...M,...E},g)}):ee(X.Root,{ref:t,min:0,max:1,step:.01,value:a.muted?0:a.volume,onValueChange:m,onPointerDown:h,"aria-label":"Volume",...v,...r,style:b,children:l??ee(X.Control,{children:Bn(X.Track,{children:[ee(X.Indicator,{}),ee(X.Thumb,{})]})})})}),Or=X.Control,Ar=I.forwardRef(function(e,o){let{style:s,...l}=e,u={position:"relative",...s};return ee(X.Track,{ref:o,style:u,...l})}),Fr=I.forwardRef(function(e,o){return ee(X.Indicator,{ref:o,...e})}),Wr=I.forwardRef(function(e,o){return ee(X.Thumb,{ref:o,...e})});export{Qr as VideoPlayer,ae as useVideoPlayer};
3
3
  //# sourceMappingURL=index.js.map