Skip to content
Snippets Groups Projects
Commit 8197ff9b authored by Bogdan Cochior's avatar Bogdan Cochior
Browse files

refactor(manuscript-files): extract one file section into a separate component

parent d0d81db5
No related branches found
No related tags found
1 merge request!43Sprint #19
import React, { Fragment } from 'react' import React, { Fragment } from 'react'
import { Text, FileItem, Item, Row } from 'pubsweet-component-faraday-ui' import { ManuscriptFileSection } from 'pubsweet-component-faraday-ui'
import { withFilePreview, withFileDownload } from '../helpers' import { withFilePreview, withFileDownload } from '../helpers'
...@@ -10,84 +10,27 @@ const ManuscriptFileList = ({ ...@@ -10,84 +10,27 @@ const ManuscriptFileList = ({
...rest ...rest
}) => ( }) => (
<Fragment> <Fragment>
{!!manuscripts.length && ( <ManuscriptFileSection
<Fragment> label="MAIN MANUSCRIPT"
<Text labelLine mb={1} mt={1}> list={manuscripts}
MAIN MANUSCRIPT onDownload={downloadFile}
</Text> onPreview={previewFile}
<Row justify="flex-start" mb={1}> {...rest}
{manuscripts.map(file => ( />
<Item <ManuscriptFileSection
alignItems="flex-start" label="SUPPLEMENTARY FILES"
flex={0} list={supplementary}
key={file.id} onDownload={downloadFile}
mr={1} onPreview={previewFile}
vertical {...rest}
> />
<FileItem <ManuscriptFileSection
item={file} label="COVER LETTER"
onDownload={downloadFile} list={coverLetter}
onPreview={previewFile} onDownload={downloadFile}
{...rest} onPreview={previewFile}
mb={1} {...rest}
/> />
</Item>
))}
</Row>
</Fragment>
)}
{!!supplementary.length && (
<Fragment>
<Text labelLine mb={1} mt={2}>
SUPPLEMENTARY FILES
</Text>
<Row justify="flex-start" mb={1}>
{supplementary.map(file => (
<Item
alignItems="flex-start"
flex={0}
key={file.id}
mr={1}
vertical
>
<FileItem
item={file}
onDownload={downloadFile}
onPreview={previewFile}
{...rest}
mb={1}
/>
</Item>
))}
</Row>
</Fragment>
)}
{!!coverLetter.length && (
<Fragment>
<Text labelLine mb={1} mt={2}>
COVER LETTER
</Text>
<Row justify="flex-start" mb={1}>
{coverLetter.map(file => (
<Item
alignItems="flex-start"
flex={0}
key={file.id}
mr={1}
vertical
>
<FileItem
item={file}
onDownload={downloadFile}
onPreview={previewFile}
{...rest}
mb={1}
/>
</Item>
))}
</Row>
</Fragment>
)}
</Fragment> </Fragment>
) )
......
import React, { Fragment } from 'react'
import { Text, FileItem, Item, Row } from 'pubsweet-component-faraday-ui'
const ManuscriptFileSection = ({ list = [], label = '', ...rest }) => (
<Fragment>
{!!list.length && (
<Fragment>
<Text labelLine mb={1} mt={1}>
{label}
</Text>
<Row justify="flex-start" mb={1}>
{list.map(file => (
<Item
alignItems="flex-start"
flex={0}
key={file.id}
mr={1}
vertical
>
<FileItem item={file} {...rest} mb={1} />
</Item>
))}
</Row>
</Fragment>
)}
</Fragment>
)
export default ManuscriptFileSection
Manuscript file section that appears in ManuscriptFilesList
```js
const files = {
supplementary: [
{
id:
'8dca903a-05b9-45ab-89b9-9cb99a9a29c6/02db6c5e-2938-45ac-a5ee-67ae63919bb2',
name: 'Supplementary File 1.jpg',
size: 59621,
originalName: 'Supplementary File 1.jpg',
},
{
id:
'8dca903a-05b9-45ab-89b9-9cb99a9a29c6/5e69e3d9-7f9d-4e8d-b649-6e6a45658d75',
name: 'Supplementary File 2.docx',
size: 476862,
originalName: 'Supplementary File 2.docx',
},
]
}
;<ManuscriptFileSection
list={files.supplementary}
label="Supplementary files"
onDownload={() => alert('downloading')}
onPreview={() => alert('No preview')}
/>
```
...@@ -3,4 +3,5 @@ export { default as ManuscriptVersion } from './ManuscriptVersion' ...@@ -3,4 +3,5 @@ export { default as ManuscriptVersion } from './ManuscriptVersion'
export { default as ManuscriptHeader } from './ManuscriptHeader' export { default as ManuscriptHeader } from './ManuscriptHeader'
export { default as ManuscriptMetadata } from './ManuscriptMetadata' export { default as ManuscriptMetadata } from './ManuscriptMetadata'
export { default as ManuscriptFileList } from './ManuscriptFileList' export { default as ManuscriptFileList } from './ManuscriptFileList'
export { default as ManuscriptFileSection } from './ManuscriptFileSection'
export { default as ManuscriptAssignHE } from './ManuscriptAssignHE' export { default as ManuscriptAssignHE } from './ManuscriptAssignHE'
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment