mirror of
https://github.com/plankanban/planka.git
synced 2025-07-19 13:19:44 +02:00
Initial commit
This commit is contained in:
commit
36fe34e8e1
583 changed files with 91539 additions and 0 deletions
110
client/src/containers/CardModalContainer.js
Executable file
110
client/src/containers/CardModalContainer.js
Executable file
|
@ -0,0 +1,110 @@
|
|||
import { bindActionCreators } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { push } from 'connected-react-router';
|
||||
import omit from 'lodash/omit';
|
||||
|
||||
import {
|
||||
actionsForCurrentCardSelector,
|
||||
currentCardSelector,
|
||||
currentUserSelector,
|
||||
labelsForCurrentBoardSelector,
|
||||
labelsForCurrentCardSelector,
|
||||
membershipsForCurrentProjectSelector,
|
||||
tasksForCurrentCardSelector,
|
||||
usersForCurrentCardSelector,
|
||||
} from '../selectors';
|
||||
import {
|
||||
addLabelToCurrentCard,
|
||||
addUserToCurrentCard,
|
||||
createCommentActionInCurrentCard,
|
||||
createLabelInCurrentBoard,
|
||||
createTaskInCurrentCard,
|
||||
deleteCommentAction,
|
||||
deleteCurrentCard,
|
||||
deleteLabel,
|
||||
deleteTask,
|
||||
fetchActionsInCurrentCard,
|
||||
removeLabelFromCurrentCard,
|
||||
removeUserFromCurrentCard,
|
||||
updateCommentAction,
|
||||
updateCurrentCard,
|
||||
updateLabel,
|
||||
updateTask,
|
||||
} from '../actions/entry';
|
||||
import Paths from '../constants/Paths';
|
||||
import CardModal from '../components/CardModal';
|
||||
|
||||
const mapStateToProps = (state) => {
|
||||
const { isAdmin } = currentUserSelector(state);
|
||||
const allProjectMemberships = membershipsForCurrentProjectSelector(state);
|
||||
const allLabels = labelsForCurrentBoardSelector(state);
|
||||
|
||||
const {
|
||||
name,
|
||||
description,
|
||||
deadline,
|
||||
timer,
|
||||
isSubscribed,
|
||||
isActionsFetching,
|
||||
isAllActionsFetched,
|
||||
boardId,
|
||||
} = currentCardSelector(state);
|
||||
|
||||
const users = usersForCurrentCardSelector(state);
|
||||
const labels = labelsForCurrentCardSelector(state);
|
||||
const tasks = tasksForCurrentCardSelector(state);
|
||||
const actions = actionsForCurrentCardSelector(state);
|
||||
|
||||
return {
|
||||
name,
|
||||
description,
|
||||
deadline,
|
||||
timer,
|
||||
isSubscribed,
|
||||
isActionsFetching,
|
||||
isAllActionsFetched,
|
||||
users,
|
||||
labels,
|
||||
tasks,
|
||||
actions,
|
||||
allProjectMemberships,
|
||||
allLabels,
|
||||
boardId,
|
||||
isEditable: isAdmin,
|
||||
};
|
||||
};
|
||||
|
||||
const mapDispatchToProps = (dispatch) => bindActionCreators(
|
||||
{
|
||||
onUpdate: updateCurrentCard,
|
||||
onDelete: deleteCurrentCard,
|
||||
onUserAdd: addUserToCurrentCard,
|
||||
onUserRemove: removeUserFromCurrentCard,
|
||||
onLabelAdd: addLabelToCurrentCard,
|
||||
onLabelRemove: removeLabelFromCurrentCard,
|
||||
onLabelCreate: createLabelInCurrentBoard,
|
||||
onLabelUpdate: updateLabel,
|
||||
onLabelDelete: deleteLabel,
|
||||
onTaskCreate: createTaskInCurrentCard,
|
||||
onTaskUpdate: updateTask,
|
||||
onTaskDelete: deleteTask,
|
||||
onActionsFetch: fetchActionsInCurrentCard,
|
||||
onCommentActionCreate: createCommentActionInCurrentCard,
|
||||
onCommentActionUpdate: updateCommentAction,
|
||||
onCommentActionDelete: deleteCommentAction,
|
||||
push,
|
||||
},
|
||||
dispatch,
|
||||
);
|
||||
|
||||
const mergeProps = (stateProps, dispatchProps) => ({
|
||||
...omit(stateProps, 'boardId'),
|
||||
...omit(dispatchProps, 'push'),
|
||||
onClose: () => dispatchProps.push(Paths.BOARDS.replace(':id', stateProps.boardId)),
|
||||
});
|
||||
|
||||
export default connect(
|
||||
mapStateToProps,
|
||||
mapDispatchToProps,
|
||||
mergeProps,
|
||||
)(CardModal);
|
Loading…
Add table
Add a link
Reference in a new issue