Skip to content

Commit e2a3078

Browse files
committed
feat: add submitting, submitted state
Resolves #2
1 parent edfdd59 commit e2a3078

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

src/netlify-form-reducer.js

+10-2
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,17 @@ export default function (state, action) {
1919
}
2020
}
2121
case 'SET_SUCCESS':
22-
return { ...state, success: true, error: false }
22+
return {
23+
...state,
24+
success: true,
25+
error: false,
26+
submitting: false,
27+
submitted: true
28+
}
2329
case 'SET_ERROR':
24-
return { ...state, success: false, error: true }
30+
return { ...state, success: false, error: true, submitting: false }
31+
case 'SET_SUBMITTING':
32+
return { ...state, submitting: true }
2533
case 'SET_HONEYPOT_NAME':
2634
return { ...state, honeypotName: payload }
2735
case 'ENABLE_RECAPTCHA':

src/netlify-form.js

+4
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ export const useNetlifyForm = ({
1616
const initialState = {
1717
success: false,
1818
error: false,
19+
submitting: false,
20+
submitted: false,
1921
response: null,
2022
values: initialValues,
2123
formName: name,
@@ -69,6 +71,8 @@ export const useNetlifyForm = ({
6971
formData['g-recaptcha-response'] = recaptchaValue
7072
}
7173

74+
dispatch({ type: 'SET_SUBMITTING' })
75+
7276
const response = await fetch('/', {
7377
method: 'POST',
7478
body: encodeFormData(formData)

0 commit comments

Comments
 (0)