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