-
);
};
diff --git a/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.module.css b/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.module.css
new file mode 100644
index 0000000000..4816f75235
--- /dev/null
+++ b/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.module.css
@@ -0,0 +1,10 @@
+.datafilesHelp div {
+ text-align: center;
+ line-height: 20px;
+}
+
+.datafilesHelp a {
+ text-decoration: none;
+ color: unset;
+ white-space: nowrap;
+}
diff --git a/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.tsx b/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.tsx
new file mode 100644
index 0000000000..8ee66a2a83
--- /dev/null
+++ b/client/modules/datafiles/src/DatafilesHelpDropdown/DatafilesHelpDropdown.tsx
@@ -0,0 +1,130 @@
+import { Button, Dropdown } from 'antd';
+import React from 'react';
+import styles from './DatafilesHelpDropdown.module.css';
+
+const items = [
+ {
+ label: (
+
+ Curation Tutorials
+
+ ),
+ key: '1',
+ },
+ {
+ label: (
+
+ Curation Guidelines
+
+ ),
+ key: '2',
+ },
+ {
+ label: (
+
+
+ Learn About the
+ Data Depot
+
+
+ ),
+ key: '3',
+ },
+ {
+ label: (
+
+ Data Transfer Guide
+
+ ),
+ key: '4',
+ },
+ {
+ label: (
+
+ Curation FAQ
+
+ ),
+ key: '5',
+ },
+ {
+ label: (
+
+
+ How to Acknowledge
+ DesignSafe-CI
+
+
+ ),
+ key: '6',
+ },
+ {
+ label: (
+
+ Data Usage Agreement
+
+ ),
+ key: '7',
+ },
+ {
+ label: (
+
+ FAQ
+
+ ),
+ key: '8',
+ },
+];
+
+export const DatafilesHelpDropdown: React.FC = () => {
+ return (
+
+
+ Help
+
+
+ );
+};
diff --git a/client/modules/datafiles/src/DatafilesModal/CopyModal/CopyModal.tsx b/client/modules/datafiles/src/DatafilesModal/CopyModal/CopyModal.tsx
index 95fae57d4d..5afa8d33a1 100644
--- a/client/modules/datafiles/src/DatafilesModal/CopyModal/CopyModal.tsx
+++ b/client/modules/datafiles/src/DatafilesModal/CopyModal/CopyModal.tsx
@@ -2,16 +2,17 @@ import React, { useCallback, useEffect, useMemo, useState } from 'react';
import { TModalChildren } from '../DatafilesModal';
import { Button, Modal, Select, Table } from 'antd';
import {
+ TFileListing,
useAuthenticatedUser,
useFileCopy,
usePathDisplayName,
- useSelectedFiles,
} from '@client/hooks';
import {
FileListingTable,
+ FileTypeIcon,
TFileListingColumns,
-} from '../../FileListing/FileListingTable/FileListingTable';
-import { BaseFileListingBreadcrumb } from '../../DatafilesBreadcrumb/DatafilesBreadcrumb';
+} from '@client/common-components';
+import { BaseFileListingBreadcrumb } from '@client/common-components';
import styles from './CopyModal.module.css';
import { toBytes } from '../../FileListing/FileListing';
import { CopyModalProjectListing } from './CopyModalProjectListing';
@@ -20,6 +21,12 @@ const SelectedFilesColumns: TFileListingColumns = [
{
title: 'Files/Folders to Copy',
dataIndex: 'name',
+ render: (value, record) => (
+
+
+ {value}
+
+ ),
},
{
title:
,
@@ -106,14 +113,14 @@ export const CopyModal: React.FC<{
api: string;
system: string;
path: string;
+ selectedFiles: TFileListing[];
children: TModalChildren;
-}> = ({ api, system, path, children }) => {
+}> = ({ api, system, path, selectedFiles, children }) => {
const [isModalOpen, setIsModalOpen] = useState(false);
const showModal = () => setIsModalOpen(true);
const handleClose = () => setIsModalOpen(false);
- const { selectedFiles } = useSelectedFiles(api, system, path);
const { user } = useAuthenticatedUser();
const defaultDestParams = useMemo(
@@ -190,6 +197,7 @@ export const CopyModal: React.FC<{
mutate({
src: { api, system, path: encodeURIComponent(f.path) },
dest: { api: destApi, system: destSystem, path: dPath },
+ doi: f.doi,
})
);
handleClose();
@@ -256,7 +264,7 @@ export const CopyModal: React.FC<{
f.type === 'dir')
}
scroll={undefined}
+ emptyListingDisplay="No folders to display."
/>
>
diff --git a/client/modules/datafiles/src/DatafilesModal/DatafilesModal.tsx b/client/modules/datafiles/src/DatafilesModal/DatafilesModal.tsx
index 0a250a2ee3..30458b5ca0 100644
--- a/client/modules/datafiles/src/DatafilesModal/DatafilesModal.tsx
+++ b/client/modules/datafiles/src/DatafilesModal/DatafilesModal.tsx
@@ -5,6 +5,8 @@ import { RenameModal } from './RenameModal';
import { NewFolderModal } from './NewFolderModal';
import { UploadFileModal } from './UploadFileModal';
import { UploadFolderModal } from './UploadFolderModal';
+import { MoveModal } from './MoveModal';
+import { DownloadModal } from './DownloadModal';
export type TModalChildren = (props: {
onClick: React.MouseEventHandler