"use client"; import { Button } from "@/components/ui/button"; import { ButtonGroup, ButtonGroupText, } from "@/components/ui/button-group"; import { cn } from "@/lib/utils"; import type { Experimental_SpeechResult as SpeechResult } from "ai"; import { MediaControlBar, MediaController, MediaDurationDisplay, MediaMuteButton, MediaPlayButton, MediaSeekBackwardButton, MediaSeekForwardButton, MediaTimeDisplay, MediaTimeRange, MediaVolumeRange, } from "media-chrome/react"; import type { ComponentProps, CSSProperties } from "react"; export type AudioPlayerProps = Omit< ComponentProps, "audio" >; export const AudioPlayer = ({ children, style, ...props }: AudioPlayerProps) => ( {children} ); export type AudioPlayerElementProps = Omit, "src"> & ( | { data: SpeechResult["audio"]; } | { src: string; } ); export const AudioPlayerElement = ({ ...props }: AudioPlayerElementProps) => ( // oxlint-disable-next-line eslint-plugin-jsx-a11y(media-has-caption) -- audio player captions are provided by consumer