X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/df0c0d462a52003cd722d25520cd7a4ad6583c57..5e805cf2209d3afe42699e4658d8a12e50bcd5a4:/src/components/data-table/data-table.tsx diff --git a/src/components/data-table/data-table.tsx b/src/components/data-table/data-table.tsx index 79a94599..e8a6ce69 100644 --- a/src/components/data-table/data-table.tsx +++ b/src/components/data-table/data-table.tsx @@ -3,13 +3,14 @@ // SPDX-License-Identifier: AGPL-3.0 import React from 'react'; -import { Table, TableBody, TableRow, TableCell, TableHead, TableSortLabel, StyleRulesCallback, Theme, WithStyles, withStyles, IconButton, CircularProgress } from '@material-ui/core'; +import { Table, TableBody, TableRow, TableCell, TableHead, TableSortLabel, StyleRulesCallback, Theme, WithStyles, withStyles, IconButton } from '@material-ui/core'; import classnames from 'classnames'; import { DataColumn, SortDirection } from './data-column'; import { DataTableDefaultView } from '../data-table-default-view/data-table-default-view'; import { DataTableFilters } from '../data-table-filters/data-table-filters-tree'; import { DataTableFiltersPopover } from '../data-table-filters/data-table-filters-popover'; import { countNodes } from 'models/tree'; +import { PendingIcon } from 'components/icon/icon'; import { SvgIconProps } from '@material-ui/core/SvgIcon'; import ArrowDownwardIcon from '@material-ui/icons/ArrowDownward'; @@ -39,22 +40,18 @@ type CssRules = "tableBody" | "root" | "content" | "noItemsInfo" | 'tableCell' | const styles: StyleRulesCallback = (theme: Theme) => ({ root: { - overflowX: 'auto', - overflowY: 'auto', - height: 'calc(100vh - 280px)', + width: '100%', }, content: { display: 'inline-block', - width: '100%' + width: '100%', }, tableBody: { background: theme.palette.background.paper }, loader: { - top: '50%', left: '50%', - marginTop: '-15px', - marginLeft: '-15px', + marginLeft: '-84px', position: 'absolute' }, noItemsInfo: { @@ -99,15 +96,15 @@ export const DataTable = withStyles(styles)( - { - this.props.working ? -
- -
: - items.map(this.renderBodyRow) - } + { this.props.working !== undefined && !this.props.working && items.map(this.renderBodyRow) }
+ { this.props.working && +
+ +
} {items.length === 0 && this.props.working !== undefined && !this.props.working && this.renderNoItemsPlaceholder()} ;