"use client"; import React, { forwardRef } from "react"; import { VideoElementProps } from "../../types/player"; const VideoElement = forwardRef( ({ src, onTimeUpdate, onLoadedMetadata, onPlay, onPause, onEnded, className }, ref) => { const handleTimeUpdate = React.useCallback((event: React.SyntheticEvent) => { const video = event.currentTarget; onTimeUpdate?.(video.currentTime); }, [onTimeUpdate]); const handleLoadedMetadata = React.useCallback((event: React.SyntheticEvent) => { const video = event.currentTarget; onLoadedMetadata?.(video.duration); }, [onLoadedMetadata]); const handlePlay = React.useCallback((event: React.SyntheticEvent) => { onPlay?.(); }, [onPlay]); const handlePause = React.useCallback((event: React.SyntheticEvent) => { onPause?.(); }, [onPause]); const handleEnded = React.useCallback((event: React.SyntheticEvent) => { onEnded?.(); }, [onEnded]); return (