diff --git a/packages/component-faraday-ui/src/PublonsTable.js b/packages/component-faraday-ui/src/PublonsTable.js index 964baad4aeb62027b628dc42c51609b3ece1f59c..015f7e76e43306545f2b948944a96cb1c726db1a 100644 --- a/packages/component-faraday-ui/src/PublonsTable.js +++ b/packages/component-faraday-ui/src/PublonsTable.js @@ -3,7 +3,7 @@ import styled from 'styled-components' import { th } from '@pubsweet/ui-toolkit' import { Button } from '@pubsweet/ui' import { get } from 'lodash' -import { compose, withHandlers } from 'recompose' +import { compose, withHandlers, withProps } from 'recompose' import { Label, OpenModal, Text, withFetching } from '../' @@ -64,6 +64,9 @@ const PublonsTable = ({ export default compose( withFetching, + withProps(({ reviewers = [] }) => ({ + reviewers, + })), withHandlers({ onInviteReviewer: ({ onInviteReviwer }) => (reviewer, modalProps) => { onInviteReviwer(reviewer, modalProps) diff --git a/packages/component-faraday-ui/src/contextualBoxes/ReviewerDetails.js b/packages/component-faraday-ui/src/contextualBoxes/ReviewerDetails.js index d1a1b48165bb8e5f022750928f095637b1330abb..aae2c213ffeb39ff483a628ce96c4bce9df31a54 100644 --- a/packages/component-faraday-ui/src/contextualBoxes/ReviewerDetails.js +++ b/packages/component-faraday-ui/src/contextualBoxes/ReviewerDetails.js @@ -20,41 +20,12 @@ import { withFileDownload, } from '../' -const publons = [ - { - id: 0, - email: 'email1@email.com', - publishingName: 'Name1', - recentOrganizations: { - name: 'Org1', - }, - numVerifiedReviews: '100', - }, - { - id: 1, - email: 'email2@email.com', - publishingName: 'Name2', - recentOrganizations: { - name: 'Org2', - }, - numVerifiedReviews: '200', - }, - { - id: 2, - email: 'email3@email.com', - publishingName: 'Name3', - recentOrganizations: { - name: 'Org3', - }, - numVerifiedReviews: '300', - }, -] - const ReviewerDetails = ({ journal, reports, fragment, invitations, + publons, previewFile, downloadFile, canInviteReviewers, @@ -122,7 +93,9 @@ const ReviewerDetails = ({ {publons.length === 0 && ( <Text align="center">No suggestions yet.</Text> )} - <PublonsTable reviewers={publons} /> + {console.log('------------------------', publons) || ( + <PublonsTable reviewers={publons} /> + )} </Fragment> )} {selectedTab === 2 && ( @@ -153,14 +126,22 @@ const ReviewerDetails = ({ export default compose( withFilePreview, withFileDownload, - withProps(({ invitations = [], reviewerReports = [], currentUser }) => ({ - token: get(currentUser, 'token', ''), - invitations: invitations.map(i => ({ - ...i, - review: reviewerReports.find(r => r.userId === i.userId), - })), - reports: reviewerReports.filter(r => r.submittedOn), - })), + withProps( + ({ + invitations = [], + publons = [], + reviewerReports = [], + currentUser, + }) => ({ + token: get(currentUser, 'token', ''), + publons, + invitations: invitations.map(i => ({ + ...i, + review: reviewerReports.find(r => r.userId === i.userId), + })), + reports: reviewerReports.filter(r => r.submittedOn), + }), + ), withProps(({ currentUser }) => ({ canInviteReviewers: get(currentUser, 'permissions.canInviteReviewers'), canViewReviewersDetails: get( diff --git a/packages/component-manuscript/src/components/ManuscriptLayout.js b/packages/component-manuscript/src/components/ManuscriptLayout.js index 9fb417e47a1564381e9d242ac0ed9ac86e6b08fc..f2bc74eb32ac523468a426ec8cdec5976213312c 100644 --- a/packages/component-manuscript/src/components/ManuscriptLayout.js +++ b/packages/component-manuscript/src/components/ManuscriptLayout.js @@ -56,6 +56,7 @@ const ManuscriptLayout = ({ onRevokeReviewerInvite, toggleReviewerResponse, invitationsWithReviewers, + publonReviewers, reviewerResponseExpanded, pendingOwnRecommendation, toggleReviewerRecommendations, @@ -176,6 +177,7 @@ const ManuscriptLayout = ({ currentUser={currentUser} fragment={fragment} getSignedUrl={getSignedUrl} + publons={publonReviewers} invitations={invitationsWithReviewers} journal={journal} onInvitePublonReviewer={onInvitePublonReviewer} diff --git a/packages/component-manuscript/src/components/ManuscriptPage.js b/packages/component-manuscript/src/components/ManuscriptPage.js index 8105d1f7d4c99a33549d3855d00b5c1d3327ce12..93ec5ed2e35b71721ad204108735e02bc45e6076 100644 --- a/packages/component-manuscript/src/components/ManuscriptPage.js +++ b/packages/component-manuscript/src/components/ManuscriptPage.js @@ -25,6 +25,7 @@ import { inviteReviewer, revokeReviewer, reviewerDecision, + getPublonReviewers, } from 'pubsweet-components-faraday/src/redux/reviewers' import { hasManuscriptFailure, @@ -167,6 +168,7 @@ export default compose( state, get(fragment, 'id', ''), ), + publonReviewers: getPublonReviewers(get(fragment, 'id', ''))(state), }), ), ConnectPage(({ currentUser }) => { diff --git a/packages/components-faraday/src/redux/reviewers.js b/packages/components-faraday/src/redux/reviewers.js index 9d2ee9b6333822535652d83f30b1802a21a879df..967de18d0f83e73b65f3ff175fdbc2efc270af64 100644 --- a/packages/components-faraday/src/redux/reviewers.js +++ b/packages/components-faraday/src/redux/reviewers.js @@ -57,6 +57,9 @@ export const getCollectionReviewers = (collectionId, fragmentId) => dispatch => apiGet( `/collections/${collectionId}/fragments/${fragmentId}/invitations?role=reviewer`, ) + +export const getPublonReviewers = fragmentId => dispatch => + apiGet(`/fragments/${fragmentId}/publons`) // #endregion export const inviteReviewer = ({