import React from 'react'; import { PauseCircle, PlayCircle, Trash2 } from 'react-feather'; import { Row, Col, Typography, Divider, Progress, Button, Tooltip } from 'antd'; import { capitalize } from 'lodash'; import { isPendingFileStatusCancel, isPendingFileStatusError, isPendingFileStatusPause, isPendingFileStatusPending, isPendingFileStatusSuccess, } from '../../../features/files/utils/pending-files'; import Languages from 'app/features/global/services/languages-service'; import { useUpload } from 'app/features/files/hooks/use-upload'; import { PendingFileRecoilType, PendingFileType } from 'app/features/files/types/file'; import '../../file/file.scss'; type PropsType = { pendingFileState: PendingFileRecoilType; pendingFile: PendingFileType; }; const { Text } = Typography; export default ({ pendingFileState, pendingFile }: PropsType) => { const { pauseOrResumeUpload, cancelUpload } = useUpload(); const getProgressStrokeColor = (status: PendingFileRecoilType['status']) => { if (isPendingFileStatusCancel(status)) return 'var(--error)'; if (isPendingFileStatusError(status)) return 'var(--error)'; if (isPendingFileStatusPause(status)) return 'var(--warning)'; if (isPendingFileStatusPending(status)) return 'var(--progress-bar-color)'; return 'var(--success)'; }; const setStatus = () => { switch (pendingFileState.status) { case 'error': case 'pause': case 'cancel': return 'exception'; case 'pending': return 'active'; case 'success': return 'success'; default: return 'normal'; } }; return (