qtools_profiler-8.x-1.x-dev/react-app/src/ui/components/RequestsList.js

react-app/src/ui/components/RequestsList.js
import React from 'react'
import { connect } from 'react-redux';
import Box from '@material-ui/core/Box';
import List from '@material-ui/core/List';
import ListItem from '@material-ui/core/ListItem';
import ListItemIcon from '@material-ui/core/ListItemIcon';
import ListItemText from '@material-ui/core/ListItemText';
import { withStyles } from '@material-ui/styles';

import RequestSummary from './RequestSummary';

const styles = theme => ({
  noPadding: {
    padding: 0,
    height: '100vh',
    backgroundColor: theme.palette.background.paper
  }
});

const RequestsList = ({ classes, requests, currentRequest, showSummary, selectRequest }) => {

  function handleChange(trackingId) {
    selectRequest(trackingId);
  }

  return (
    <List dense={true} className={classes.noPadding}>
      {requests.map((item, index) =>
        <ListItem button key={index} selected={item.trackingId === currentRequest} onClick={handleChange.bind(null, item.trackingId)}>
          <RequestSummary request={item} showSummary={showSummary} />
        </ListItem>
      )}
    </List>
  )
}

export default connect(
  state => ({
    requests: state.requests,
    currentRequest: state.currentRequest
    // showSummary: (state.currentReport === '_')
  }),
  dispatch => ({
    selectRequest: (trackingId) => {
      dispatch({ type: 'SELECT_REQUEST', data: trackingId});
    }
  })
)(withStyles(styles)(RequestsList));

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc