From c74d7d582a499199fce8427719a1ee4521f16220 Mon Sep 17 00:00:00 2001 From: Bogdan Cochior <bogdan.cochior@thinslices.com> Date: Thu, 19 Apr 2018 18:35:45 +0300 Subject: [PATCH] fix: fix reviewers list --- .../src/components/Dashboard/DashboardCard.js | 5 ++++- .../src/components/Dashboard/ReviewerReports.js | 2 +- .../src/components/Reviewers/InviteReviewers.js | 6 +++--- .../src/components/Reviewers/ReviewerList.js | 4 +++- packages/components-faraday/src/redux/reviewers.js | 3 ++- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/components-faraday/src/components/Dashboard/DashboardCard.js b/packages/components-faraday/src/components/Dashboard/DashboardCard.js index 3352e82c3..d9ce07889 100644 --- a/packages/components-faraday/src/components/Dashboard/DashboardCard.js +++ b/packages/components-faraday/src/components/Dashboard/DashboardCard.js @@ -38,6 +38,7 @@ const DashboardCard = ({ const { submitted, title, type } = parseVersion(version) const metadata = get(version, 'metadata') const files = get(version, 'files') + const invitations = get(project, 'invitations') || [] const customId = project.customId || project.id.split('-')[0] const hasFiles = files ? Object.values(files).some(f => f.length > 0) : false const journalIssueType = parseJournalIssue(journal, metadata) @@ -159,7 +160,9 @@ const DashboardCard = ({ </LeftDetails> {canInviteReviewers() && ( <RightDetails flex={4}> - <ReviewerReports project={project} /> + <ReviewerReports + invitations={invitations.filter(i => i.role === 'reviewer')} + /> <InviteReviewers modalKey={`invite-reviewers-${project.id}`} project={project} diff --git a/packages/components-faraday/src/components/Dashboard/ReviewerReports.js b/packages/components-faraday/src/components/Dashboard/ReviewerReports.js index ae3b7cdf0..b7adb7ede 100644 --- a/packages/components-faraday/src/components/Dashboard/ReviewerReports.js +++ b/packages/components-faraday/src/components/Dashboard/ReviewerReports.js @@ -2,7 +2,7 @@ import React from 'react' import { th } from '@pubsweet/ui' import styled, { css } from 'styled-components' -const ReviewerReports = ({ project: { invitations = [] } }) => { +const ReviewerReports = ({ invitations }) => { const accepted = invitations.filter(i => i.isAccepted).length return ( <ReviewerText>{`Reviewer reports (${accepted}/${ diff --git a/packages/components-faraday/src/components/Reviewers/InviteReviewers.js b/packages/components-faraday/src/components/Reviewers/InviteReviewers.js index e245a2906..15895bc3c 100644 --- a/packages/components-faraday/src/components/Reviewers/InviteReviewers.js +++ b/packages/components-faraday/src/components/Reviewers/InviteReviewers.js @@ -13,7 +13,7 @@ import { getCollectionReviewers, selectReviewers, selectFetchingReviewers, - selectFechingInvite, + selectFetchingInvite, } from '../../redux/reviewers' const InviteReviewers = ({ showInviteModal }) => ( @@ -26,7 +26,7 @@ const InviteReviewersModal = compose( state => ({ reviewers: selectReviewers(state), fetchingReviewers: selectFetchingReviewers(state), - fetchingInvite: selectFechingInvite(state), + fetchingInvite: selectFetchingInvite(state), }), { getCollectionReviewers }, ), @@ -86,7 +86,7 @@ const InviteReviewersModal = compose( const ModalSwitcher = compose( connect(state => ({ - fetchingInvite: selectFechingInvite(state), + fetchingInvite: selectFetchingInvite(state), })), )(({ type, fetchingInvite, ...rest }) => { switch (type) { diff --git a/packages/components-faraday/src/components/Reviewers/ReviewerList.js b/packages/components-faraday/src/components/Reviewers/ReviewerList.js index 13c092285..4dcf29933 100644 --- a/packages/components-faraday/src/components/Reviewers/ReviewerList.js +++ b/packages/components-faraday/src/components/Reviewers/ReviewerList.js @@ -47,12 +47,14 @@ const ReviewersList = ({ <StatusText>{r.status}</StatusText> <DateText>{renderTimestamp(r.timestamp)}</DateText> </Column> - {r.status !== 'accepted' && ( + {r.status !== 'accepted' ? ( <ResendRevoke showConfirmResend={showConfirmResend(r)} showConfirmRevoke={showConfirmRevoke(r.invitationId)} status={r.status} /> + ) : ( + <Column /> )} </ReviewerItem> ))} diff --git a/packages/components-faraday/src/redux/reviewers.js b/packages/components-faraday/src/redux/reviewers.js index 1be269eac..1a7cd5004 100644 --- a/packages/components-faraday/src/redux/reviewers.js +++ b/packages/components-faraday/src/redux/reviewers.js @@ -69,7 +69,7 @@ const initialState = { export const selectReviewers = state => get(state, 'reviewers.reviewers') || [] export const selectFetchingReviewers = state => get(state, 'reviewers.fetching.reviewers') || false -export const selectFechingInvite = state => +export const selectFetchingInvite = state => get(state, 'reviewers.fetching.invite') || false export const selectFetchingDecision = state => get(state, 'reviewers.fetching.decision') || false @@ -146,6 +146,7 @@ export default (state = initialState, action = {}) => { ...state.fetching, reviewers: true, }, + reviewers: [], } case GET_REVIEWERS_ERROR: return { -- GitLab