diff --git a/packages/component-faraday-selectors/src/index.js b/packages/component-faraday-selectors/src/index.js index 601eb286e4f10adfac31217342830e1b784ad802..48940b4c690647c56b7dc4262c263270de30b074 100644 --- a/packages/component-faraday-selectors/src/index.js +++ b/packages/component-faraday-selectors/src/index.js @@ -175,8 +175,14 @@ export const pendingHEInvitation = (state, collectionId) => !i.hasAnswer, ) +const parseInvitedHE = (handlingEditor = {}, state, collectionId) => ({ + ...handlingEditor, + name: pendingHEInvitation(state, collectionId) + ? 'Invited' + : handlingEditor.name, +}) const hideCustomIdStatuses = ['draft', 'technicalChecks'] -export const newestFirstParseCustomId = items => +export const newestFirstParseDashboard = (state, items) => chain(items) .orderBy(['created'], ['desc']) .map(item => ({ @@ -184,5 +190,6 @@ export const newestFirstParseCustomId = items => customId: !hideCustomIdStatuses.includes(get(item, 'status', 'draft')) && item.customId, + handlingEditor: parseInvitedHE(item.handlingEditor, state, item.id), })) .value() diff --git a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js index 6927e7ba41b1ffb70b1158a9382b06651d4c0c46..26afbcc9d9a772aa80e6ffbbeef4d29e58de804b 100644 --- a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js +++ b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js @@ -101,9 +101,12 @@ export default compose( revokeInvitation, pendingInvitation, handlingEditors = [], - currentUser: { canAssignHE }, + currentUser: { canAssignHE, id: currentUserId }, collection: { handlingEditor }, }) => () => { + if (pendingInvitation.userId === currentUserId) { + return <Text ml={1}>Invited</Text> + } if (pendingInvitation) { const person = chain(handlingEditors) .filter(he => he.id === pendingInvitation.userId) diff --git a/packages/components-faraday/src/components/Dashboard/DashboardPage.js b/packages/components-faraday/src/components/Dashboard/DashboardPage.js index 6831dbc0265ec953396fafa62fe49e8bae853af9..646720b8ab16883694bfd66caae03cf779b786ba 100644 --- a/packages/components-faraday/src/components/Dashboard/DashboardPage.js +++ b/packages/components-faraday/src/components/Dashboard/DashboardPage.js @@ -9,7 +9,7 @@ import { selectCurrentUser } from 'xpub-selectors' import { getUserPermissions, - newestFirstParseCustomId, + newestFirstParseDashboard, } from 'pubsweet-component-faraday-selectors' import { Dashboard } from './' @@ -21,7 +21,7 @@ export default compose( state => { const { collections, conversion } = state const currentUser = selectCurrentUser(state) - const dashboard = newestFirstParseCustomId(collections) + const dashboard = newestFirstParseDashboard(state, collections) const userPermissions = getUserPermissions(state) return {