// Copyright (C) The Arvados Authors. All rights reserved. // // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; import { StyleRulesCallback, Theme, WithStyles, withStyles } from '@material-ui/core/styles'; import Drawer from '@material-ui/core/Drawer'; import AppBar from '@material-ui/core/AppBar'; import Toolbar from '@material-ui/core/Toolbar'; import Typography from '@material-ui/core/Typography'; import { connect } from "react-redux"; import Tree from "../../components/tree/tree"; import { Project } from "../../models/project"; import { RootState } from "../../store/root-reducer"; import ProjectList from "../../components/project-list/project-list"; import { Route, Switch } from "react-router"; import { Link } from "react-router-dom"; const drawerWidth = 240; type CssRules = 'root' | 'appBar' | 'drawerPaper' | 'content' | 'toolbar'; const styles: StyleRulesCallback = (theme: Theme) => ({ root: { flexGrow: 1, zIndex: 1, overflow: 'hidden', position: 'relative', display: 'flex', width: '100%', height: '100%' }, appBar: { zIndex: theme.zIndex.drawer + 1, backgroundColor: '#692498' }, drawerPaper: { position: 'relative', width: drawerWidth, }, content: { flexGrow: 1, backgroundColor: theme.palette.background.default, padding: theme.spacing.unit * 3, minWidth: 0, }, toolbar: theme.mixins.toolbar }); interface WorkbenchProps { projects: Project[] } interface WorkbenchState { } class Workbench extends React.Component, WorkbenchState> { render() { const {classes} = this.props; return (
Arvados
Workbench 2
{p.name} }/>
Hello new workbench!
); } } export default connect( (state: RootState) => ({ projects: state.projects }) )( withStyles(styles)(Workbench) );