Skip to content
Snippets Groups Projects
Commit dcae80b5 authored by Jure's avatar Jure
Browse files

feat: display custom metadata in decision page

parent 21f6168f
No related branches found
No related tags found
No related merge requests found
Showing with 50 additions and 52 deletions
......@@ -18,7 +18,7 @@ const rootEl = document.getElementById('root')
ReactDOM.render(
<XpubProvider>
<JournalProvider journal={journal}>
<JournalProvider journal={JSON.parse(JSON.stringify(journal))}>
<Root history={history} routes={routes} theme={theme} />
</JournalProvider>
</XpubProvider>,
......
......@@ -96,6 +96,7 @@ const fragmentFields = `
}
keywords
}
submission
suggestions {
reviewers {
opposed
......
......@@ -8,7 +8,9 @@ const Root = styled.div``
const Title = styled.div``
const AssignEditorsReviewers = ({ manuscript, AssignEditor }) => {
// TODO:
const journal = useContext(JournalContext)
// const journal = { id: 'temp' }
return (
<Root>
<Title>Assign Editors</Title>
......
......@@ -3,7 +3,7 @@ import styled from 'styled-components'
const Columns = styled.div`
display: grid;
grid-column-gap: 2em;
grid-template-areas: 'manuscript admin';
grid-template-areas: 'manuscript chat';
grid-template-columns: minmax(200px, 80ch) minmax(200px, 50ch);
justify-content: center;
`
......@@ -12,8 +12,8 @@ const Manuscript = styled.div`
grid-area: manuscript;
`
const Admin = styled.div`
grid-area: admin;
const Chat = styled.div`
grid-area: chat;
`
export { Columns, Manuscript, Admin }
export { Columns, Manuscript, Chat }
......@@ -8,15 +8,15 @@ import AssignEditorsReviewers from '../assignEditors/AssignEditorsReviewers'
import AssignEditor from '../assignEditors/AssignEditor'
import ReviewMetadata from '../metadata/ReviewMetadata'
import Decision from './Decision'
import EditorSection from './EditorSection'
import { Columns, Manuscript, Admin } from '../atoms/Columns'
// import EditorSection from './EditorSection'
import { Columns, Manuscript, Chat } from '../atoms/Columns'
import AdminSection from '../atoms/AdminSection'
const addEditor = (manuscript, label) => ({
content: <EditorSection manuscript={manuscript} />,
key: manuscript.id,
label,
})
// const addEditor = (manuscript, label) => ({
// content: <EditorSection manuscript={manuscript} />,
// key: manuscript.id,
// label,
// })
const DecisionLayout = ({
handleSubmit,
......@@ -46,7 +46,7 @@ const DecisionLayout = ({
label,
})
editorSections.push(addEditor(manuscript, label))
// editorSections.push(addEditor(manuscript, label))
}, [])
const submittedMoment = moment()
......@@ -81,26 +81,26 @@ const DecisionLayout = ({
label,
})
editorSections.push(addEditor(manuscript, label))
// editorSections.push(addEditor(manuscript, label))
}
return (
<Columns>
<Manuscript>
<Tabs
Temp
{/* <Tabs
activeKey={editorSections[editorSections.length - 1].key}
sections={editorSections}
title="Versions"
/>
</Manuscript>
<Admin>
/> */}
<Tabs
activeKey={decisionSections[decisionSections.length - 1].key}
sections={decisionSections}
title="Versions"
/>
</Admin>
</Manuscript>
<Chat></Chat>
</Columns>
)
}
......
......@@ -51,6 +51,7 @@ const filesToAttachment = file => ({
const ReviewMetadata = ({ manuscript }) => (
<Root>
<Title>Metadata</Title>
<Metadata>
<div>
<Heading>Open Peer Review :</Heading>
......@@ -137,6 +138,9 @@ const ReviewMetadata = ({ manuscript }) => (
)}
</div>
)}
<Title>Additional metadata</Title>
{// TODO
JSON.stringify(JSON.parse(manuscript.submission), null, 2)}
</Metadata>
</Root>
)
......
import React from 'react'
import PropTypes from 'prop-types'
import { withContext, getContext } from 'recompose'
export const JournalProvider = withContext(
{ journal: PropTypes.object },
({ journal }) => ({ journal }),
)(props => React.Children.only(props.children))
export const withJournal = getContext({
journal: PropTypes.object,
})
export { JournalProvider, withJournal } from './JournalProvider'
......@@ -8,12 +8,6 @@
"component": "TextField",
"name": "submission.name",
"placeholder": "Enter your name",
"validate": [
"required"
],
"validateValue": {
"minChars": "10"
},
"order": "1"
},
{
......@@ -22,12 +16,6 @@
"component": "TextField",
"name": "submission.affiliation",
"placeholder": "Enter your affiliation",
"validate": [
"required"
],
"validateValue": {
"minChars": "10"
},
"order": "2"
},
{
......@@ -46,10 +34,25 @@
"placeholder": "Enter keywords...",
"parse": "split",
"format": "join",
"order": "20",
"validateValue": {
"minChars": "4",
"maxChars": "6"
},
"validate": [
"required"
],
"order": "20"
{
"value": "minChars",
"label": "minimum Characters"
},
{
"value": "maxChars",
"label": "maximum Characters"
},
{
"value": "required",
"label": "Required"
}
]
},
{
"title": "Type of Research Object",
......@@ -74,9 +77,6 @@
"label": "Registered Report"
}
],
"validate": [
"required"
],
"order": "7"
},
{
......
......@@ -10,7 +10,7 @@ const clearDb = async () => {
`)
if (rows.length) {
logger.info('Overwriting existing database due to clobber option')
logger.info('Overwriting existing database')
// TODO this is dangerous, change it
let dropQuery = rows.map(
row => `DROP TABLE ${row.schemaname}.${row.tablename} CASCADE`,
......
......@@ -66,6 +66,10 @@ module.exports = webpackEnv => {
resolve: {
alias: {
'wax-prosemirror-themes': path.resolve(__dirname, '../app/theme'),
'xpub-journal': path.resolve(
__dirname,
'../app/components/xpub-journal',
),
joi: 'joi-browser',
config: clientConfigPath,
},
......
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