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 ) }