X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/bfaee40696c3c15556ef089e69da47bb832b08db..d53fb37a98b7d23cfefd6fe191ee182cdbf9ec91:/services/workbench2/src/views-components/details-panel/details-panel.tsx diff --git a/services/workbench2/src/views-components/details-panel/details-panel.tsx b/services/workbench2/src/views-components/details-panel/details-panel.tsx index e9175f57ba..d8c8be09fd 100644 --- a/services/workbench2/src/views-components/details-panel/details-panel.tsx +++ b/services/workbench2/src/views-components/details-panel/details-panel.tsx @@ -28,6 +28,7 @@ import { toggleDetailsPanel, SLIDE_TIMEOUT, openDetailsPanel } from 'store/detai import { FileDetails } from 'views-components/details-panel/file-details'; import { getNode } from 'models/tree'; import { resourceIsFrozen } from 'common/frozen-resources'; +import { CLOSE_DRAWER } from 'store/details-panel/details-panel-action'; type CssRules = 'root' | 'container' | 'opened' | 'headerContainer' | 'headerIcon' | 'tabContainer'; @@ -83,8 +84,9 @@ const getItem = (res: DetailsResource): DetailsData => { } }; -const mapStateToProps = ({ auth, detailsPanel, resources, collectionPanelFiles }: RootState) => { - const resource = getResource(detailsPanel.resourceUuid)(resources) as DetailsResource | undefined; +const mapStateToProps = ({ auth, detailsPanel, resources, collectionPanelFiles, selectedResourceUuid: selectedResource }: RootState) => { + const currentItemUuid = selectedResource; + const resource = getResource(currentItemUuid)(resources) as DetailsResource | undefined; const file = resource ? undefined : getNode(detailsPanel.resourceUuid)(collectionPanelFiles); @@ -100,12 +102,13 @@ const mapStateToProps = ({ auth, detailsPanel, resources, collectionPanelFiles } isOpened: detailsPanel.isOpened, tabNr: detailsPanel.tabNr, res: resource || (file && file.value) || EMPTY_RESOURCE, + currentItemUuid }; }; const mapDispatchToProps = (dispatch: Dispatch) => ({ - onCloseDrawer: () => { - dispatch(toggleDetailsPanel()); + onCloseDrawer: (currentItemId) => { + dispatch(toggleDetailsPanel(currentItemId)); }, setActiveTab: (tabNr: number) => { dispatch(openDetailsPanel(undefined, tabNr)); @@ -113,7 +116,7 @@ const mapDispatchToProps = (dispatch: Dispatch) => ({ }); export interface DetailsPanelDataProps { - onCloseDrawer: () => void; + onCloseDrawer: (currentItemId) => void; setActiveTab: (tabNr: number) => void; authConfig: Config; isOpened: boolean; @@ -196,7 +199,7 @@ export const DetailsPanel = withStyles(styles)( - + onCloseDrawer(CLOSE_DRAWER)}>