import { Button, Center, createStyles, Group, Text } from "@mantine/core"; import { Dropzone as MantineDropzone } from "@mantine/dropzone"; import { ForwardedRef, useRef } from "react"; import { TbCloudUpload, TbUpload } from "react-icons/tb"; import { FormattedMessage } from "react-intl"; import useTranslate from "../../hooks/useTranslate.hook"; import { FileUpload } from "../../types/File.type"; import { byteToHumanSizeString } from "../../utils/fileSize.util"; import toast from "../../utils/toast.util"; const useStyles = createStyles((theme) => ({ wrapper: { position: "relative", marginBottom: 30, }, dropzone: { borderWidth: 1, paddingBottom: 50, }, icon: { color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[4], }, control: { position: "absolute", bottom: -20, }, })); const Dropzone = ({ title, isUploading, maxShareSize, showCreateUploadModalCallback, }: { title?: string; isUploading: boolean; maxShareSize: number; showCreateUploadModalCallback: (files: FileUpload[]) => void; }) => { const t = useTranslate(); const { classes } = useStyles(); const openRef = useRef<() => void>(); return (