34 lines
975 B
JavaScript
34 lines
975 B
JavaScript
import React from "react"
|
|
import PropTypes from "prop-types"
|
|
import { connect } from "react-redux"
|
|
import { bindActionCreators } from "redux"
|
|
import { updateUser } from "../../actions/admins"
|
|
|
|
import Modules from "../modules/modules"
|
|
import { UserList } from "./users"
|
|
import { Stats } from "./stats"
|
|
|
|
const AdminPanel = props => (
|
|
<React.Fragment>
|
|
<Stats stats={props.stats}/>
|
|
<UserList users={props.users} updateUser={props.updateUser}/>
|
|
<Modules modules={props.modules}/>
|
|
</React.Fragment>
|
|
)
|
|
AdminPanel.propTypes = {
|
|
stats: PropTypes.object,
|
|
users: PropTypes.object,
|
|
modules: PropTypes.object,
|
|
updateUser: PropTypes.func,
|
|
};
|
|
|
|
const mapStateToProps = state => ({
|
|
users: state.adminStore.get("users"),
|
|
stats: state.adminStore.get("stats"),
|
|
modules: state.adminStore.get("modules"),
|
|
});
|
|
const mapDispatchToProps = dipatch =>
|
|
bindActionCreators({ updateUser }, dipatch)
|
|
|
|
export default connect(mapStateToProps, mapDispatchToProps)(AdminPanel);
|