1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-26 00:29:48 +02:00
planka/client/src/containers/BoardKanbanContainer.js

32 lines
1,003 B
JavaScript
Raw Normal View History

2019-08-31 04:07:25 +05:00
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
2022-08-04 13:31:14 +02:00
import selectors from '../selectors';
import entryActions from '../entry-actions';
import { BoardMembershipRoles } from '../constants/Enums';
import BoardKanban from '../components/BoardKanban';
2019-08-31 04:07:25 +05:00
2020-03-25 00:15:47 +05:00
const mapStateToProps = (state) => {
2022-08-04 13:31:14 +02:00
const { cardId } = selectors.selectPath(state);
const currentUserMembership = selectors.selectCurrentUserMembershipForCurrentBoard(state);
2022-08-04 13:31:14 +02:00
const listIds = selectors.selectListIdsForCurrentBoard(state);
2019-08-31 04:07:25 +05:00
return {
listIds,
isCardModalOpened: !!cardId,
canEdit: !!currentUserMembership && currentUserMembership.role === BoardMembershipRoles.EDITOR,
2019-08-31 04:07:25 +05:00
};
};
2020-03-25 00:15:47 +05:00
const mapDispatchToProps = (dispatch) =>
bindActionCreators(
{
2022-08-04 13:31:14 +02:00
onListCreate: entryActions.createListInCurrentBoard,
onListMove: entryActions.moveList,
onCardMove: entryActions.moveCard,
},
dispatch,
);
2019-08-31 04:07:25 +05:00
export default connect(mapStateToProps, mapDispatchToProps)(BoardKanban);