import { FC } from "react"; import { VStack, HStack, Text, Textarea, IconButton, Tooltip, Spinner, TextareaProps, useBreakpointValue, useColorModeValue, useClipboard } from "@chakra-ui/react"; import { FaCopy, FaCheck, FaPlay, FaStop } from "react-icons/fa"; import { useAudioFromBuffer } from "@hooks"; type Props = { value: string, onChange?: TextareaProps["onChange"], onSubmit?: () => void, readOnly?: true, audio?: number[], canCopy?: boolean, isLoading?: boolean, [key: string]: any }; const TranslationArea: FC = ({ value, onChange, onSubmit, readOnly, audio, canCopy, isLoading, pronunciation, ...props }) => { const { hasCopied, onCopy } = useClipboard(value); const { audioExists, isAudioPlaying, onAudioClick } = useAudioFromBuffer(audio); const spinnerProps = { size: useBreakpointValue(["lg", null, "xl"]) ?? "lg", color: useColorModeValue("lingva.500", "lingva.200"), emptyColor: useColorModeValue("gray.300", "gray.600") }; return (