Skip to content
This repository was archived by the owner on Feb 27, 2024. It is now read-only.

Commit 50e7c97

Browse files
committed
Save file data to state
1 parent fd15c3b commit 50e7c97

File tree

3 files changed

+19
-10
lines changed

3 files changed

+19
-10
lines changed

components/molecules/Form/Form.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ export default function Form({
4646
}
4747

4848
Form.propTypes = {
49-
children: PropTypes.object,
49+
children: PropTypes.oneOfType([PropTypes.func, PropTypes.element]),
5050
className: PropTypes.string,
5151
formDefaults: PropTypes.object,
5252
id: PropTypes.string,

components/molecules/GravityForm/Fields/Fields.js

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
import PropTypes from 'prop-types'
22
import * as GfFields from '.'
33

4-
import {Field} from 'formik'
5-
import InputError from '@/components/atoms/Inputs/InputError'
4+
// import {Field} from 'formik'
5+
// import InputError from '@/components/atoms/Inputs/InputError'
66

77
/**
88
* Render the Fields component.
99
*
1010
* @author WebDevStudios
11-
* @param {object} props The component attributes as props.
12-
* @param {Array} props.fields GravityForm fields data.
13-
* @return {Element} The Fields component.
11+
* @param {object} props The component attributes as props.
12+
* @param {Array} props.fields GravityForm fields data.
13+
* @param {object} props.formikProps Props available to Formik components.
14+
* @return {Element} The Fields component.
1415
*/
15-
export default function Fields({fields}) {
16+
export default function Fields({fields, formikProps}) {
1617
return (
1718
<>
1819
{fields.length > 0 &&
@@ -46,7 +47,13 @@ export default function Fields({fields}) {
4647
break
4748

4849
case 'fileupload':
49-
fieldToRender = <GfFields.File {...field.node} key={id} />
50+
fieldToRender = (
51+
<GfFields.File
52+
{...field.node}
53+
setFieldValue={formikProps.setFieldValue}
54+
key={id}
55+
/>
56+
)
5057
break
5158

5259
default:
@@ -65,7 +72,8 @@ export default function Fields({fields}) {
6572

6673
Fields.propTypes = {
6774
fields: PropTypes.array,
68-
setFormValidation: PropTypes.func
75+
setFormValidation: PropTypes.func,
76+
formikProps: PropTypes.object
6977
}
7078

7179
Fields.defaultProps = {

components/molecules/GravityForm/Fields/File.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,8 @@ export default function File({
4545
required={isRequired}
4646
type="file"
4747
onChange={(e) => {
48-
setFieldValue(fieldId, e.currentTarget.files[0])
48+
// Save to _filedata here so we don't corrupt state
49+
setFieldValue(`${fieldId}_filedata`, e.currentTarget.files[0])
4950
}}
5051
/>
5152
{description && <p>{description}</p>}

0 commit comments

Comments
 (0)