Files
v10/packages/react/src/media/audio.tsx
T

25 lines
648 B
TypeScript

'use client';
import type { AudioHTMLAttributes } from 'react';
import { forwardRef } from 'react';
import { useMediaAttach } from '../player/context';
import { useComposedRefs } from '../utils/use-composed-refs';
export interface AudioProps extends AudioHTMLAttributes<HTMLAudioElement> {}
export const Audio = forwardRef<HTMLAudioElement, AudioProps>(function Audio({ children, ...props }, ref) {
const setMedia = useMediaAttach();
const composedRef = useComposedRefs(ref, setMedia);
return (
<audio ref={composedRef} {...props}>
{children}
</audio>
);
});
export namespace Audio {
export type Props = AudioProps;
}