'use client';
import type { AudioHTMLAttributes } from 'react';
import { forwardRef, useCallback } from 'react';
import { useMediaRegistration } from '../player/context';
import { useComposedRefs } from '../utils/use-composed-refs';
export interface AudioProps extends AudioHTMLAttributes {}
export const Audio = forwardRef(function Audio({ children, ...props }, ref) {
const setMedia = useMediaRegistration();
const mediaRef = useCallback(
(el: HTMLAudioElement | null) => {
setMedia?.(el);
},
[setMedia]
);
const composedRef = useComposedRefs(ref, mediaRef);
return (
);
});
export namespace Audio {
export type Props = AudioProps;
}