import React from 'react'; import { Link } from 'react-router-dom'; import { createStyles, Theme, makeStyles } from '@material-ui/core/styles'; import { ListItemText, ListItemIcon, ListItem, Divider, List, Drawer, Link as MUILink } from '@material-ui/core'; import { OpenInNewSharp } from '@material-ui/icons'; import { Activity, FileText, DollarSign, Share2, Settings } from 'react-feather'; import SwarmLogoOrange from '../assets/swarm-logo-orange.svg' const drawerWidth = 240; const navBarItems = [ { 'label': 'Status', 'id': 'status', 'path': '/', 'icon': 'activity' }, { 'label': 'Files', 'id': 'files', 'path': '/files/', 'icon': 'file-text' }, { 'label': 'Accounting', 'id': 'accounting', 'path': '/accounting/', 'icon': 'dollar-sign' }, { 'label': 'Peers', 'id': 'peers', 'path': '/peers/', 'icon': 'share-2' }, { 'label': 'Settings', 'id': 'settings', 'path': '/settings/', 'icon': 'settings' } ] const useStyles = makeStyles((theme: Theme) => createStyles({ root: { display: 'flex', }, appBar: { width: `calc(100% - ${drawerWidth}px)`, marginLeft: drawerWidth, }, logo: { padding: 1, marginTop: 20, }, drawer: { width: drawerWidth, flexShrink: 0, }, drawerPaper: { width: drawerWidth, }, activeSideBar: { color: '#dd7700', }, activeSideBarItem: { borderLeft: '4px solid #dd7700', backgroundColor: 'inherit !important' }, toolbar: theme.mixins.toolbar, }), ); const getIcon = (iconPath: string) => { switch (iconPath) { case 'activity': return case 'file-text': return case 'dollar-sign': return case 'share-2': return case 'settings': return } } export default function SideBar(props: any) { const classes = useStyles(); return (
swarm
{navBarItems.map(item => ( {getIcon(item.icon)} ))}
API
Debug API
); }