X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/100b8b28ea7be77853edcf05d56fea85eac94667..ba0c5cf6838e36740881c4dd9639043b527bf82d:/src/views-components/data-explorer/data-explorer.tsx diff --git a/src/views-components/data-explorer/data-explorer.tsx b/src/views-components/data-explorer/data-explorer.tsx index 48046987ea..d5a9977a71 100644 --- a/src/views-components/data-explorer/data-explorer.tsx +++ b/src/views-components/data-explorer/data-explorer.tsx @@ -9,9 +9,10 @@ import { getDataExplorer } from "store/data-explorer/data-explorer-reducer"; import { Dispatch } from "redux"; import { dataExplorerActions } from "store/data-explorer/data-explorer-action"; import { DataColumn } from "components/data-table/data-column"; -import { DataColumns } from "components/data-table/data-table"; -import { DataTableFilters } from 'components/data-table-filters/data-table-filters-tree'; +import { DataColumns, TCheckedList } from "components/data-table/data-table"; +import { DataTableFilters } from "components/data-table-filters/data-table-filters-tree"; import { LAST_REFRESH_TIMESTAMP } from "components/refresh-button/refresh-button"; +import { toggleMSToolbar, setCheckedListOnStore } from "store/multiselect/multiselect-actions"; interface Props { id: string; @@ -24,9 +25,10 @@ interface Props { const mapStateToProps = (state: RootState, { id }: Props) => { const progress = state.progressIndicator.find(p => p.id === id); const dataExplorerState = getDataExplorer(state.dataExplorer, id); - const currentRoute = state.router.location ? state.router.location.pathname : ''; - const currentRefresh = localStorage.getItem(LAST_REFRESH_TIMESTAMP) || ''; - const currentItemUuid = currentRoute === '/workflows' ? state.properties.workflowPanelDetailsUuid : state.detailsPanel.resourceUuid; + const currentRoute = state.router.location ? state.router.location.pathname : ""; + const currentRefresh = localStorage.getItem(LAST_REFRESH_TIMESTAMP) || ""; + const currentItemUuid = currentRoute === "/workflows" ? state.properties.workflowPanelDetailsUuid : state.detailsPanel.resourceUuid; + const isMSToolbarVisible = state.multiselect.isVisible; return { ...dataExplorerState, working: !!progress?.working, @@ -34,12 +36,14 @@ const mapStateToProps = (state: RootState, { id }: Props) => { currentRoute: currentRoute, paperKey: currentRoute, currentItemUuid, + isMSToolbarVisible, + checkedList: state.multiselect.checkedList, }; }; -const mapDispatchToProps = () => { +const mapDispatchToProps = dispatchFn => { return (dispatch: Dispatch, { id, onRowClick, onRowDoubleClick, onContextMenu }: Props) => ({ - onSetColumns: (columns: DataColumns) => { + onSetColumns: (columns: DataColumns) => { dispatch(dataExplorerActions.SET_COLUMNS({ id, columns })); }, @@ -47,15 +51,15 @@ const mapDispatchToProps = () => { dispatch(dataExplorerActions.SET_EXPLORER_SEARCH_VALUE({ id, searchValue })); }, - onColumnToggle: (column: DataColumn) => { + onColumnToggle: (column: DataColumn) => { dispatch(dataExplorerActions.TOGGLE_COLUMN({ id, columnName: column.name })); }, - onSortToggle: (column: DataColumn) => { + onSortToggle: (column: DataColumn) => { dispatch(dataExplorerActions.TOGGLE_SORT({ id, columnName: column.name })); }, - onFiltersChange: (filters: DataTableFilters, column: DataColumn) => { + onFiltersChange: (filters: DataTableFilters, column: DataColumn) => { dispatch(dataExplorerActions.SET_FILTERS({ id, columnName: column.name, filters })); }, @@ -71,6 +75,14 @@ const mapDispatchToProps = () => { dispatch(dataExplorerActions.SET_PAGE({ id, page })); }, + toggleMSToolbar: (isVisible: boolean) => { + dispatch(toggleMSToolbar(isVisible)); + }, + + setCheckedListOnStore: (checkedList: TCheckedList) => { + dispatch(setCheckedListOnStore(checkedList)); + }, + onRowClick, onRowDoubleClick, @@ -80,4 +92,3 @@ const mapDispatchToProps = () => { }; export const DataExplorer = connect(mapStateToProps, mapDispatchToProps)(DataExplorerComponent); -