import { ContextMenu } from '../../ContextMenu/ContextMenu' import { ReactElement } from 'react' import '../FileBrowser.scss' import { ViewType } from '../../../constants/transfers' import { DriveInfo } from '@solarpunkltd/file-manager-lib' import { Tooltip } from '../../Tooltip/Tooltip' interface FileBrowserContextMenuProps { drives: DriveInfo[] view: ViewType selectedFilesCount: number onRefresh: () => void onUploadFile: () => void onBulkDownload: () => void onBulkRestore: () => void onBulkDelete: () => void onBulkDestroy: () => void onBulkForget: () => void enableRefresh?: boolean } export function FileBrowserContextMenu({ drives, view, selectedFilesCount, onRefresh, onUploadFile, onBulkDownload, onBulkRestore, onBulkDelete, onBulkDestroy, onBulkForget, enableRefresh, }: FileBrowserContextMenuProps): ReactElement { if (drives.length === 0) { if (!enableRefresh) { return <> } return (
Refresh
) } if (selectedFilesCount > 1) { return (
Download
{view === ViewType.File ? (
Delete…
) : ( <>
Restore
Destroy
Forget permanently
)}
) } if (view === ViewType.Trash) { return (
Refresh
) } return (
New folder
Upload file(s)
Upload folder
e.stopPropagation()} onClick={e => { e.preventDefault() e.stopPropagation() }} > Paste
Refresh
) }