// Copyright (C) The Arvados Authors. All rights reserved. // // 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 { IconButton, Grid, Typography, StyleRulesCallback, withStyles, WithStyles, CardHeader, Card, Button, Tooltip } from '@material-ui/core'; import { CustomizeTableIcon } from '../icon/icon'; export interface CollectionPanelFilesProps { items: Array>; 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; } type CssRules = 'root' | 'cardSubheader' | 'nameHeader' | 'fileSizeHeader'; const styles: StyleRulesCallback = theme => ({ root: { paddingBottom: theme.spacing.unit }, cardSubheader: { paddingTop: 0, paddingBottom: 0 }, nameHeader: { marginLeft: '75px' }, fileSizeHeader: { marginRight: '65px' } }); export const CollectionPanelFiles = withStyles(styles)( ({ onItemMenuOpen, onOptionsMenuOpen, onUploadDataClick, classes, ...treeProps }: CollectionPanelFilesProps & WithStyles) => Upload data } /> } /> Name File size );