From b9f3049167bc2fe3ef8aa34bc4434ac4892dcd5e Mon Sep 17 00:00:00 2001
From: Ben Whitmore <ben.whitmore0@gmail.com>
Date: Mon, 12 Apr 2021 13:09:57 +1200
Subject: [PATCH] fix(manuscript): fix page crash on viewing accepted
 submission

---
 .../src/components/CurrentVersion.js          | 41 -------------------
 .../component-submit/src/components/Submit.js | 30 ++++++++++++--
 2 files changed, 26 insertions(+), 45 deletions(-)
 delete mode 100644 app/components/component-submit/src/components/CurrentVersion.js

diff --git a/app/components/component-submit/src/components/CurrentVersion.js b/app/components/component-submit/src/components/CurrentVersion.js
deleted file mode 100644
index c2ae538d4b..0000000000
--- a/app/components/component-submit/src/components/CurrentVersion.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import React from 'react'
-// import styled from 'styled-components'
-// import { Link } from 'react-router-dom'
-// import { Attachment } from '@pubsweet/ui'
-// import { th } from '@pubsweet/ui-toolkit'
-// import Metadata from './MetadataFields'
-// import Declarations from './Declarations'
-// import Suggestions from './Suggestions'
-// import SupplementaryFiles from './SupplementaryFiles'
-import Metadata from '../../../component-review/src/components/metadata/ReviewMetadata'
-// import { Legend } from '../style'
-
-// import {
-//   Section,
-//   SectionHeader,
-//   SectionContent,
-//   SectionRow,
-//   Title,
-// } from '../../../shared'
-
-// const filterFileManuscript = files =>
-//   files.filter(
-//     file =>
-//       file.type === 'manuscript' &&
-//       file.mimeType ===
-//         'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
-//   )
-
-// Due to migration to new Data Model
-// Attachement component needs different data structure to work
-// needs to change the pubsweet ui Attachement to support the new Data Model
-// const filesToAttachment = file => ({
-//   name: file.filename,
-//   url: file.url,
-// })
-
-const CurrentVersion = ({ journal, forms, manuscript }) => (
-  <Metadata manuscript={manuscript} />
-)
-
-export default CurrentVersion
diff --git a/app/components/component-submit/src/components/Submit.js b/app/components/component-submit/src/components/Submit.js
index 9b435b6ef0..22b1a42982 100644
--- a/app/components/component-submit/src/components/Submit.js
+++ b/app/components/component-submit/src/components/Submit.js
@@ -2,10 +2,10 @@ import React from 'react'
 import PropTypes from 'prop-types'
 import { Formik } from 'formik'
 import { set } from 'lodash'
-import CurrentVersion from './CurrentVersion'
 import DecisionAndReviews from './DecisionAndReviews'
 import CreateANewVersion from './CreateANewVersion'
 import FormTemplate from './FormTemplate'
+import ReviewMetadata from '../../../component-review/src/components/metadata/ReviewMetadata'
 import MessageContainer from '../../../component-chat/src'
 import {
   SectionContent,
@@ -20,7 +20,12 @@ import {
 // TODO: Improve the import, perhaps a shared component?
 import EditorSection from '../../../component-review/src/components/decision/EditorSection'
 
-const SubmittedVersion = ({ manuscript, currentVersion, createNewVersion }) => {
+const SubmittedVersion = ({
+  manuscript,
+  currentVersion,
+  createNewVersion,
+  form,
+}) => {
   const reviseDecision = currentVersion && manuscript.status === 'revise'
   return (
     <>
@@ -32,7 +37,7 @@ const SubmittedVersion = ({ manuscript, currentVersion, createNewVersion }) => {
         />
       )}
       <DecisionAndReviews manuscript={manuscript} noGap={!reviseDecision} />
-      <CurrentVersion manuscript={manuscript} />
+      <ReviewMetadata form={form} manuscript={manuscript} />
     </>
   )
 }
@@ -41,6 +46,17 @@ SubmittedVersion.propTypes = {
   manuscript: PropTypes.objectOf(PropTypes.any),
   currentVersion: PropTypes.bool.isRequired,
   createNewVersion: PropTypes.func.isRequired,
+  form: PropTypes.shape({
+    children: PropTypes.arrayOf(
+      PropTypes.shape({
+        id: PropTypes.string.isRequired,
+        name: PropTypes.string.isRequired,
+        component: PropTypes.string.isRequired,
+        title: PropTypes.string.isRequired,
+        shortDescription: PropTypes.string,
+      }).isRequired,
+    ).isRequired,
+  }).isRequired,
 }
 SubmittedVersion.defaultProps = {
   manuscript: undefined,
@@ -83,7 +99,9 @@ const Submit = ({
     const editorSection = addEditor(manuscript, 'Manuscript text')
     let decisionSection
 
-    if (['new', 'revising', 'submitted', 'evaluated'].includes(manuscript.status)) {
+    if (
+      ['new', 'revising', 'submitted', 'evaluated'].includes(manuscript.status)
+    ) {
       Object.assign(submissionValues, JSON.parse(manuscript.submission))
 
       const versionValues = {
@@ -134,6 +152,7 @@ const Submit = ({
           <SubmittedVersion
             createNewVersion={createNewVersion}
             currentVersion={version === currentVersion}
+            form={form}
             manuscript={manuscript}
           />
         ),
@@ -220,6 +239,9 @@ Submit.propTypes = {
   }),
   onChange: PropTypes.func.isRequired,
   onSubmit: PropTypes.func.isRequired,
+  match: PropTypes.shape({
+    url: PropTypes.string.isRequired,
+  }).isRequired,
 }
 Submit.defaultProps = {
   parent: undefined,
-- 
GitLab