diff --git a/packages/component-submit/src/components/Declarations.js b/packages/component-submit/src/components/Declarations.js index c7e08e81ffc4ed4a6645e689c6dd09924867db75..0be709c5686ec531b263d79b1579296bc2e768f8 100644 --- a/packages/component-submit/src/components/Declarations.js +++ b/packages/component-submit/src/components/Declarations.js @@ -2,6 +2,7 @@ import React from 'react' import classnames from 'classnames' import { FormSection, Field } from 'redux-form' import { YesOrNo } from 'xpub-ui' +import { required } from '../lib/validators' import classes from './Declarations.local.css' const Declarations = ({ journal }) => ( @@ -17,6 +18,8 @@ const Declarations = ({ journal }) => ( <Field name={question.id} + required + validate={[required]} component={props => <YesOrNo inline={true} {...props.input}/>}/> </div> ))} diff --git a/packages/component-submit/src/components/Metadata.js b/packages/component-submit/src/components/Metadata.js index 5248a19f119bcdee767bdb6cbea27fba002bfce9..288156a660cf6fd3b319eef5ab0642f2ab67c646 100644 --- a/packages/component-submit/src/components/Metadata.js +++ b/packages/component-submit/src/components/Metadata.js @@ -10,6 +10,7 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.section} id="metadata.title"> <Field name="title" + required validate={[minChars(20), maxChars(500)]} component={props => <ValidatedField {...props.meta}> @@ -24,6 +25,7 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.section} id="metadata.abstract"> <Field name="abstract" + required validate={[minChars(100), maxChars(5000)]} component={props => <ValidatedField {...props.meta}> @@ -39,6 +41,7 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.label}>Authors</div> <Field name="authors" + required validate={[minSize(1)]} component={props => <ValidatedField {...props.meta}> @@ -53,6 +56,7 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.label}>Keywords</div> <Field name="keywords" + required validate={[minSize(1)]} component={props => <ValidatedField {...props.meta}> @@ -67,7 +71,8 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.label}>Type of article</div> <Field name="articleType" - warn={[required]} + required + validate={[required]} component={props => <ValidatedField {...props.meta}> <Menu options={journal.articleTypes} {...props.input}/> @@ -79,6 +84,7 @@ const Metadata = ({ journal, validators }) => ( <div className={classes.label}>Section</div> <Field name="articleSection" + required validate={[required]} component={props => <ValidatedField {...props.meta}> diff --git a/packages/component-submit/src/components/Notes.js b/packages/component-submit/src/components/Notes.js index e33cfa3788061ab9070ebe7ca1576ca173f7c1e1..e9020e1e0c76e02f22683df2c971c78f0ab18e04 100644 --- a/packages/component-submit/src/components/Notes.js +++ b/packages/component-submit/src/components/Notes.js @@ -2,6 +2,7 @@ import React from 'react' import { FormSection, Field } from 'redux-form' import { NoteEditor } from 'xpub-edit' import { ValidatedField } from 'xpub-ui' +import { required } from '../lib/validators' import classes from './Metadata.local.css' const Notes = () => ( @@ -9,6 +10,7 @@ const Notes = () => ( <div className={classes.section} id="notes.fundingAcknowledgement"> <Field name="fundingAcknowledgement" + validate={[required]} component={props => <ValidatedField {...props.meta}> <NoteEditor