X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/55bb503e1b885a53ca20fc120c862c7af2db33af..f1db282d059c1d0a6e264943344e09bda5d40282:/src/components/collection-panel-files/collection-panel-files.tsx?ds=sidebyside diff --git a/src/components/collection-panel-files/collection-panel-files.tsx b/src/components/collection-panel-files/collection-panel-files.tsx index df277e33..028dfb0c 100644 --- a/src/components/collection-panel-files/collection-panel-files.tsx +++ b/src/components/collection-panel-files/collection-panel-files.tsx @@ -3,61 +3,80 @@ // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; -import { TreeItem, TreeItemStatus } from '../tree/tree'; -import { FileTreeData } from '../file-tree/file-tree-data'; -import { FileTree } from '../file-tree/file-tree'; -import { CollectionPanelFilesState } from '../../store/collection-panel/collection-panel-files/collection-panel-files-state'; +import { TreeItem, TreeItemStatus } from '~/components/tree/tree'; +import { FileTreeData } from '~/components/file-tree/file-tree-data'; +import { FileTree } from '~/components/file-tree/file-tree'; +import { IconButton, Grid, Typography, StyleRulesCallback, withStyles, WithStyles, CardHeader, Card, Button, Tooltip } from '@material-ui/core'; +import { CustomizeTableIcon } from '~/components/icon/icon'; +import { DownloadIcon } from '~/components/icon/icon'; export interface CollectionPanelFilesProps { items: Array>; - onItemContextMenu: (event: React.MouseEvent, item: TreeItem) => void; - onCommonContextMenu: (event: React.MouseEvent) => void; + onUploadDataClick: () => void; + onItemMenuOpen: (event: React.MouseEvent, item: TreeItem) => void; + onOptionsMenuOpen: (event: React.MouseEvent) => void; onSelectionToggle: (event: React.MouseEvent, item: TreeItem) => void; onCollapseToggle: (id: string, status: TreeItemStatus) => void; + onFileClick: (id: string) => void; } -export const CollectionPanelFiles = ({ onItemContextMenu, onCommonContextMenu, ...treeProps }: CollectionPanelFilesProps) => -
- -
; +type CssRules = 'root' | 'cardSubheader' | 'nameHeader' | 'fileSizeHeader' | 'uploadIcon' | 'button'; -export const collectionPanelItems: Array> = [{ - active: false, - data: { - name: "Directory 1", - type: "directory" +const styles: StyleRulesCallback = theme => ({ + root: { + paddingBottom: theme.spacing.unit }, - id: "Directory 1", - open: true, - status: TreeItemStatus.LOADED, - items: [{ - active: false, - data: { - name: "Directory 1.1", - type: "directory" - }, - id: "Directory 1.1", - open: false, - status: TreeItemStatus.LOADED, - items: [] - }, { - active: false, - data: { - name: "File 1.1", - type: "file" - }, - id: "File 1.1", - open: false, - status: TreeItemStatus.LOADED, - items: [] - }] -}, { - active: false, - data: { - name: "Directory 2", - type: "directory" + cardSubheader: { + paddingTop: 0, + paddingBottom: 0 }, - id: "Directory 2", - open: false, - status: TreeItemStatus.LOADED -}]; + nameHeader: { + marginLeft: '75px' + }, + fileSizeHeader: { + marginRight: '65px' + }, + uploadIcon: { + transform: 'rotate(180deg)' + }, + button: { + marginRight: -theme.spacing.unit, + marginTop: '0px' + } +}); + +export const CollectionPanelFiles = + withStyles(styles)( + ({ onItemMenuOpen, onOptionsMenuOpen, onUploadDataClick, classes, ...treeProps }: CollectionPanelFilesProps & WithStyles) => + + + + Upload data + + } /> + + + + + + } /> + + + Name + + + File size + + + + );