From: Michal Klobukowski Date: Mon, 25 Jun 2018 13:34:30 +0000 (+0200) Subject: Merge branch 'master' X-Git-Tag: 1.2.0~63^2~12 X-Git-Url: https://git.arvados.org/arvados-workbench2.git/commitdiff_plain/75b209b2cbd37e3510fd726e737fa5457a6a8d77 Merge branch 'master' Feature #13678 Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski --- 75b209b2cbd37e3510fd726e737fa5457a6a8d77 diff --cc src/store/store.ts index 9d2a9535,6089caf3..7092c1d9 --- a/src/store/store.ts +++ b/src/store/store.ts @@@ -6,10 -6,11 +6,12 @@@ import { createStore, applyMiddleware, import { routerMiddleware, routerReducer, RouterState } from "react-router-redux"; import thunkMiddleware from 'redux-thunk'; import { History } from "history"; + import projectsReducer, { ProjectState } from "./project/project-reducer"; + import sidePanelReducer, { SidePanelState } from './side-panel/side-panel-reducer'; import authReducer, { AuthState } from "./auth/auth-reducer"; import collectionsReducer from "./collection/collection-reducer"; +import dataExplorerReducer, { DataExplorerState } from './data-explorer/data-explorer-reducer'; const composeEnhancers = (process.env.NODE_ENV === 'development' && @@@ -20,7 -21,7 +22,8 @@@ export interface RootState auth: AuthState; projects: ProjectState; router: RouterState; + dataExplorer: DataExplorerState; + sidePanel: SidePanelState; } const rootReducer = combineReducers({ @@@ -28,7 -29,7 +31,8 @@@ projects: projectsReducer, collections: collectionsReducer, router: routerReducer, - dataExplorer: dataExplorerReducer ++ dataExplorer: dataExplorerReducer, + sidePanel: sidePanelReducer }); diff --cc src/views/workbench/workbench.tsx index 6a8698fd,4f9843cb..a05d4db5 --- a/src/views/workbench/workbench.tsx +++ b/src/views/workbench/workbench.tsx @@@ -19,10 -17,11 +18,13 @@@ import projectActions, { getProjectLis import ProjectTree from '../../views-components/project-tree/project-tree'; import { TreeItem, TreeItemStatus } from "../../components/tree/tree"; import { Project } from "../../models/project"; -import { getTreePath } from '../../store/project/project-reducer'; +import { getTreePath, findTreeItem } from '../../store/project/project-reducer'; import ProjectPanel from '../project-panel/project-panel'; +import { PROJECT_EXPLORER_ID } from '../../views-components/project-explorer/project-explorer'; +import { ProjectExplorerItem } from '../../views-components/project-explorer/project-explorer-item'; + import sidePanelActions from '../../store/side-panel/side-panel-action'; + import { projectService } from '../../services/services'; + import SidePanel, { SidePanelItem } from '../../components/side-panel/side-panel'; const drawerWidth = 240; const appBarHeight = 102; @@@ -155,20 -187,8 +190,20 @@@ class Workbench extends React.Component status: item.status })) }); - this.props.dispatch(projectActions.TOGGLE_PROJECT_TREE_ITEM(itemId)); + this.props.dispatch(projectActions.TOGGLE_PROJECT_TREE_ITEM_ACTIVE(itemId)); this.props.dispatch(push(`/project/${itemId}`)); + + const project = findTreeItem(this.props.projects, itemId); + const items: ProjectExplorerItem[] = project && project.items + ? project.items.map(({ data }) => ({ + uuid: data.uuid, + name: data.name, + type: data.kind, + owner: data.ownerUuid, + lastModified: data.modifiedAt + })) + : []; + this.props.dispatch(dataExplorerActions.SET_ITEMS({ id: PROJECT_EXPLORER_ID, items })); } render() {