projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
21225: Fix data table loading indicator if initialized loaded and empty
[arvados.git]
/
services
/
workbench2
/
src
/
components
/
data-table
/
data-table.tsx
diff --git
a/services/workbench2/src/components/data-table/data-table.tsx
b/services/workbench2/src/components/data-table/data-table.tsx
index 9393fd2f92c0ee6546b95f0d2c98eacab6dcbdc9..7629034f9d4bdb0a088d60d4bc1cf4df9dc63717 100644
(file)
--- a/
services/workbench2/src/components/data-table/data-table.tsx
+++ b/
services/workbench2/src/components/data-table/data-table.tsx
@@
-159,6
+159,12
@@
export const DataTable = withStyles(styles)(
componentDidMount(): void {
this.initializeCheckedList([]);
componentDidMount(): void {
this.initializeCheckedList([]);
+ // If table is initialized loaded but empty
+ // isLoaded won't be set true by componentDidUpdate later
+ // So we set it to true here
+ if (!this.props.working) {
+ this.setState({ isLoaded: true });
+ }
}
componentDidUpdate(prevProps: Readonly<DataTableProps<T>>, prevState: DataTableState) {
}
componentDidUpdate(prevProps: Readonly<DataTableProps<T>>, prevState: DataTableState) {
@@
-171,7
+177,7
@@
export const DataTable = withStyles(styles)(
else setCheckedListOnStore({});
}
if (prevProps.currentRoute !== this.props.currentRoute) {
else setCheckedListOnStore({});
}
if (prevProps.currentRoute !== this.props.currentRoute) {
- this.initializeCheckedList([])
+ this.initializeCheckedList([])
;
}
if (singleSelected && singleSelected !== isExactlyOneSelected(prevProps.checkedList)) {
this.props.setSelectedUuid(singleSelected);
}
if (singleSelected && singleSelected !== isExactlyOneSelected(prevProps.checkedList)) {
this.props.setSelectedUuid(singleSelected);
@@
-191,7
+197,7
@@
export const DataTable = withStyles(styles)(
}
componentWillUnmount(): void {
}
componentWillUnmount(): void {
- this.initializeCheckedList([])
+ this.initializeCheckedList([])
;
}
checkBoxColumn: DataColumn<any, any> = {
}
checkBoxColumn: DataColumn<any, any> = {
@@
-334,17
+340,17
@@
export const DataTable = withStyles(styles)(
const dirty = columns.some(column => getTreeDirty("")(column.filters));
if (isNotFound && isLoaded) {
return (
const dirty = columns.some(column => getTreeDirty("")(column.filters));
if (isNotFound && isLoaded) {
return (
- <DataTableDefaultView
- icon={this.props.defaultViewIcon}
- messages={["No items found"]}
+ <DataTableDefaultView
+ icon={this.props.defaultViewIcon}
+ messages={["No items found"]}
/>
);
/>
);
- } else
+ } else
if (isLoaded === false || working === true) {
return (
if (isLoaded === false || working === true) {
return (
- <DataTableDefaultView
- icon={PendingIcon}
- messages={["Loading data, please wait"]}
+ <DataTableDefaultView
+ icon={PendingIcon}
+ messages={["Loading data, please wait"]}
/>
);
} else {
/>
);
} else {