diff --git a/packages/components-faraday/src/components/Dashboard/ReviewerDecision.js b/packages/components-faraday/src/components/Dashboard/ReviewerDecision.js index 45a32fdb91a2d83c174d77729f3c76c77bef9118..18c03e7e05ed9c49e8393e96d4d77cfb6f1b6fd1 100644 --- a/packages/components-faraday/src/components/Dashboard/ReviewerDecision.js +++ b/packages/components-faraday/src/components/Dashboard/ReviewerDecision.js @@ -30,16 +30,14 @@ const ModalComponent = connect(state => ({ export default compose( connect(null, { reviewerDecision, - getFragments: actions.getFragments, - getCollections: actions.getCollections, + getCollection: actions.getCollection, }), withModal(props => ({ modalComponent: ModalComponent, })), withHandlers({ - decisionSuccess: ({ getFragments, getCollections, hideModal }) => () => { - getCollections() - getFragments() + decisionSuccess: ({ project, hideModal, getCollection }) => () => { + getCollection(project) hideModal() }, }), diff --git a/packages/components-faraday/src/components/Invitations/ReviewerBreakdown.js b/packages/components-faraday/src/components/Invitations/ReviewerBreakdown.js index d67820dc3764e31d5e71fd0ce0275185d662427d..5786effa12c417d9eeb401b5b728d467f254a63b 100644 --- a/packages/components-faraday/src/components/Invitations/ReviewerBreakdown.js +++ b/packages/components-faraday/src/components/Invitations/ReviewerBreakdown.js @@ -1,8 +1,9 @@ import React from 'react' +import { get } from 'lodash' import { th } from '@pubsweet/ui' import { connect } from 'react-redux' import styled, { css } from 'styled-components' -import { compose, withHandlers } from 'recompose' +import { compose, withHandlers, withProps } from 'recompose' import { selectFragment, selectCollection } from 'xpub-selectors' import { selectReviewers } from 'pubsweet-components-faraday/src/redux/reviewers' @@ -30,8 +31,12 @@ export default compose( fragment: selectFragment(state, versionId), collection: selectCollection(state, collectionId), })), + withProps(({ fragment }) => ({ + invitations: get(fragment, 'invitations', []), + recommendations: get(fragment, 'recommendations', []), + })), withHandlers({ - getCompactReport: ({ fragment: { invitations = [] } }) => () => { + getCompactReport: ({ invitations }) => () => { const reviewerInvitations = invitations.filter(roleFilter('reviewer')) const accepted = reviewerInvitations.filter(acceptedInvitationFilter) .length @@ -41,10 +46,7 @@ export default compose( </ReviewerText> ) }, - getExtendedReport: ({ - fragment: { recommendations = [] }, - reviewers = [], - }) => () => { + getExtendedReport: ({ recommendations, reviewers = [] }) => () => { const mappedValues = reviewers.map(r => ({ ...r, review: recommendations.find(rec => rec.userId === r.userId), diff --git a/packages/components-faraday/src/components/Reviewers/InviteReviewers.js b/packages/components-faraday/src/components/Reviewers/InviteReviewers.js index b6087f87534c4a756da957e77144c91b7d026286..3f3df1eca290253f9a79374ed83cd2182581e4dd 100644 --- a/packages/components-faraday/src/components/Reviewers/InviteReviewers.js +++ b/packages/components-faraday/src/components/Reviewers/InviteReviewers.js @@ -32,16 +32,22 @@ const InviteReviewersModal = compose( fetchingInvite: selectFetchingInvite(state), fetchingReviewers: selectFetchingReviewers(state), }), - { getCollectionReviewers, getCollections: actions.getCollections }, + { + getCollectionReviewers, + getFragment: actions.getFragment, + getCollections: actions.getCollections, + }, ), withHandlers({ getReviewers: ({ versionId, + getFragment, collectionId, setReviewers, getCollectionReviewers, }) => () => { getCollectionReviewers(collectionId, versionId) + getFragment({ id: collectionId }, { id: versionId }) }, closeModal: ({ getCollections, hideModal }) => () => { getCollections() @@ -50,8 +56,8 @@ const InviteReviewersModal = compose( }), lifecycle({ componentDidMount() { - const { getReviewers } = this.props - getReviewers() + const { getCollectionReviewers, collectionId, versionId } = this.props + getCollectionReviewers(collectionId, versionId) }, }), )(