import { useRef } from 'react'; import { Flex, Progress, Text, Button, } from '@chakra-ui/react'; import { DialogBody, DialogContent, DialogFooter, DialogHeader, DialogRoot } from '@/components/ui/dialog'; export type PopUpUploadProgressProps = { title: string; // current size send or receive currentSize: number; // in case of error this element is set to != undefined error?: string; // Total size to transfer totalSize: number; // index of the file to transfer index: number; // When finished the boolean is set to true isFinished: boolean; // List of element to Transfer elements: string[]; onAbort: () => void; onClose: () => void; }; export const PopUpUploadProgress = ({ currentSize, elements, error, index, isFinished, onAbort, onClose, title, totalSize, }: PopUpUploadProgressProps) => { const initialRef = useRef(null); const finalRef = useRef(null); return ( {/* */} {title} {/* */} {isFinished ? ( All {elements.length} element have been sent ) : ( [{index + 1}/{elements.length}] {elements[index]} )} {currentSize.toLocaleString('fr-FR')} Bytes {totalSize.toLocaleString('fr-FR')} Bytes {error && ( {error} )} {isFinished ? ( ) : ( )} ); };