import {connect} from "react-redux"; import {goFromRackToMachine} from "../../../../../actions/interaction-level"; import MachineComponent from "../../../../../components/app/sidebars/topology/rack/MachineComponent"; import {getStateLoad} from "../../../../../util/simulation-load"; const mapStateToProps = (state, ownProps) => { const machine = state.objects.machine[ownProps.machineId]; const inSimulation = state.currentExperimentId !== -1; let machineLoad = undefined; if (inSimulation) { if (state.states.machine[state.currentTick] && state.states.machine[state.currentTick][machine.id]) { machineLoad = getStateLoad(state.loadMetric, state.states.machine[state.currentTick][machine.id]); } } return { machine, inSimulation, machineLoad }; }; const mapDispatchToProps = (dispatch, ownProps) => { return { onClick: () => dispatch(goFromRackToMachine(ownProps.position)), }; }; const MachineContainer = connect( mapStateToProps, mapDispatchToProps )(MachineComponent); export default MachineContainer;