1
0
mirror of https://github.com/yldio/copilot.git synced 2024-12-04 00:50:09 +02:00
copilot/frontend/src/containers/org/people.js

58 lines
1.4 KiB
JavaScript
Raw Normal View History

import React from 'react';
import { connect } from 'react-redux';
import PeopleSection from '@components/people-list';
import Section from './section';
2016-12-15 16:10:36 +02:00
import {
peopleByOrgIdSelector,
2017-01-23 17:47:45 +02:00
orgUISelector,
orgIndexSelector,
2017-02-20 16:51:54 +02:00
membersSelector
} from '@state/selectors';
import {
addMemberToOrg,
orgHandleInviteToggle,
orgHandlePeopleRoleTooltip,
orgHandlePeopleStatusTooltip,
orgHandleMemberUpdate,
2017-02-20 16:51:54 +02:00
orgRemoveMember
} from '@state/actions';
const People = (props) => (
<Section {...props}>
<PeopleSection {...props} />
</Section>
);
2016-12-15 16:10:36 +02:00
const mapStateToProps = (state, {
2017-02-07 11:55:18 +02:00
match = {
params: {}
}
}) => ({
2017-02-06 20:27:10 +02:00
people: peopleByOrgIdSelector(match.params.org)(state),
UI: orgUISelector(state),
2017-02-06 20:27:10 +02:00
parentIndex: orgIndexSelector(match.params.org)(state),
2017-01-23 17:47:45 +02:00
platformMembers: membersSelector(state)
});
2016-12-15 16:10:36 +02:00
const mapDispatchToProps = (dispatch) => ({
addMemember: (member, callback) =>
dispatch(addMemberToOrg(member, callback)),
2017-02-20 18:15:36 +02:00
handleToggle: () =>
dispatch(orgHandleInviteToggle()),
handleStatusTooltip: (id) =>
dispatch(orgHandlePeopleStatusTooltip(id)),
handleRoleTooltip: (id) =>
dispatch(orgHandlePeopleRoleTooltip(id)),
handleMemberUpdate: (updatedMember) =>
2017-02-20 18:15:36 +02:00
dispatch(orgHandleMemberUpdate(updatedMember)),
2017-01-25 18:37:26 +02:00
removeMember: (removeData) =>
2017-02-20 18:15:36 +02:00
dispatch(orgRemoveMember(removeData))
});
2016-12-15 16:10:36 +02:00
export default connect(
mapStateToProps,
mapDispatchToProps
)(People);