@jcoreio/zod-forms 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FieldPath.d.ts +26 -0
- package/FieldPath.d.ts.map +1 -0
- package/FieldPath.js +155 -0
- package/FieldPath.js.map +1 -0
- package/FieldPath.mjs +138 -0
- package/FieldPath.mjs.map +1 -0
- package/FormAction.d.ts +15 -0
- package/FormAction.d.ts.map +1 -0
- package/FormAction.js +6 -0
- package/FormAction.js.map +1 -0
- package/FormAction.mjs +2 -0
- package/FormAction.mjs.map +1 -0
- package/FormContext.d.ts +39 -0
- package/FormContext.d.ts.map +1 -0
- package/FormContext.js +10 -0
- package/FormContext.js.map +1 -0
- package/FormContext.mjs +3 -0
- package/FormContext.mjs.map +1 -0
- package/FormState.d.ts +31 -0
- package/FormState.d.ts.map +1 -0
- package/FormState.js +6 -0
- package/FormState.js.map +1 -0
- package/FormState.mjs +2 -0
- package/FormState.mjs.map +1 -0
- package/FormStateContext.d.ts +8 -0
- package/FormStateContext.d.ts.map +1 -0
- package/FormStateContext.js +10 -0
- package/FormStateContext.js.map +1 -0
- package/FormStateContext.mjs +3 -0
- package/FormStateContext.mjs.map +1 -0
- package/LICENSE.md +21 -0
- package/README.md +154 -0
- package/actions/addHandlers.d.ts +15 -0
- package/actions/addHandlers.d.ts.map +1 -0
- package/actions/addHandlers.js +16 -0
- package/actions/addHandlers.js.map +1 -0
- package/actions/addHandlers.mjs +7 -0
- package/actions/addHandlers.mjs.map +1 -0
- package/actions/arrayActions.d.ts +113 -0
- package/actions/arrayActions.d.ts.map +1 -0
- package/actions/arrayActions.js +146 -0
- package/actions/arrayActions.js.map +1 -0
- package/actions/arrayActions.mjs +120 -0
- package/actions/arrayActions.mjs.map +1 -0
- package/actions/initialize.d.ts +13 -0
- package/actions/initialize.d.ts.map +1 -0
- package/actions/initialize.js +16 -0
- package/actions/initialize.js.map +1 -0
- package/actions/initialize.mjs +7 -0
- package/actions/initialize.mjs.map +1 -0
- package/actions/removeHandlers.d.ts +10 -0
- package/actions/removeHandlers.d.ts.map +1 -0
- package/actions/removeHandlers.js +16 -0
- package/actions/removeHandlers.js.map +1 -0
- package/actions/removeHandlers.mjs +7 -0
- package/actions/removeHandlers.mjs.map +1 -0
- package/actions/setMeta.d.ts +9 -0
- package/actions/setMeta.d.ts.map +1 -0
- package/actions/setMeta.js +14 -0
- package/actions/setMeta.js.map +1 -0
- package/actions/setMeta.mjs +8 -0
- package/actions/setMeta.mjs.map +1 -0
- package/actions/setMounted.d.ts +6 -0
- package/actions/setMounted.d.ts.map +1 -0
- package/actions/setMounted.js +13 -0
- package/actions/setMounted.js.map +1 -0
- package/actions/setMounted.mjs +7 -0
- package/actions/setMounted.mjs.map +1 -0
- package/actions/setRawValue.d.ts +9 -0
- package/actions/setRawValue.d.ts.map +1 -0
- package/actions/setRawValue.js +14 -0
- package/actions/setRawValue.js.map +1 -0
- package/actions/setRawValue.mjs +8 -0
- package/actions/setRawValue.mjs.map +1 -0
- package/actions/setSubmitStatus.d.ts +14 -0
- package/actions/setSubmitStatus.d.ts.map +1 -0
- package/actions/setSubmitStatus.js +16 -0
- package/actions/setSubmitStatus.js.map +1 -0
- package/actions/setSubmitStatus.mjs +7 -0
- package/actions/setSubmitStatus.mjs.map +1 -0
- package/actions/setValue.d.ts +12 -0
- package/actions/setValue.d.ts.map +1 -0
- package/actions/setValue.js +18 -0
- package/actions/setValue.js.map +1 -0
- package/actions/setValue.mjs +9 -0
- package/actions/setValue.mjs.map +1 -0
- package/actions/submit.d.ts +5 -0
- package/actions/submit.d.ts.map +1 -0
- package/actions/submit.js +12 -0
- package/actions/submit.js.map +1 -0
- package/actions/submit.mjs +6 -0
- package/actions/submit.mjs.map +1 -0
- package/actions/submitSucceeded.d.ts +5 -0
- package/actions/submitSucceeded.d.ts.map +1 -0
- package/actions/submitSucceeded.js +12 -0
- package/actions/submitSucceeded.js.map +1 -0
- package/actions/submitSucceeded.mjs +6 -0
- package/actions/submitSucceeded.mjs.map +1 -0
- package/createFormMiddleware.d.ts +6 -0
- package/createFormMiddleware.d.ts.map +1 -0
- package/createFormMiddleware.js +186 -0
- package/createFormMiddleware.js.map +1 -0
- package/createFormMiddleware.mjs +53 -0
- package/createFormMiddleware.mjs.map +1 -0
- package/createFormProvider.d.ts +7 -0
- package/createFormProvider.d.ts.map +1 -0
- package/createFormProvider.js +85 -0
- package/createFormProvider.js.map +1 -0
- package/createFormProvider.mjs +63 -0
- package/createFormProvider.mjs.map +1 -0
- package/createFormReducer.d.ts +9 -0
- package/createFormReducer.d.ts.map +1 -0
- package/createFormReducer.js +95 -0
- package/createFormReducer.js.map +1 -0
- package/createFormReducer.mjs +84 -0
- package/createFormReducer.mjs.map +1 -0
- package/createSelectFieldErrorMap.d.ts +32 -0
- package/createSelectFieldErrorMap.d.ts.map +1 -0
- package/createSelectFieldErrorMap.js +43 -0
- package/createSelectFieldErrorMap.js.map +1 -0
- package/createSelectFieldErrorMap.mjs +24 -0
- package/createSelectFieldErrorMap.mjs.map +1 -0
- package/createSelectFormStatus.d.ts +89 -0
- package/createSelectFormStatus.d.ts.map +1 -0
- package/createSelectFormStatus.js +54 -0
- package/createSelectFormStatus.js.map +1 -0
- package/createSelectFormStatus.mjs +28 -0
- package/createSelectFormStatus.mjs.map +1 -0
- package/createSelectFormValues.d.ts +45 -0
- package/createSelectFormValues.d.ts.map +1 -0
- package/createSelectFormValues.js +24 -0
- package/createSelectFormValues.js.map +1 -0
- package/createSelectFormValues.mjs +10 -0
- package/createSelectFormValues.mjs.map +1 -0
- package/createZodForm.d.ts +33 -0
- package/createZodForm.d.ts.map +1 -0
- package/createZodForm.js +51 -0
- package/createZodForm.js.map +1 -0
- package/createZodForm.mjs +46 -0
- package/createZodForm.mjs.map +1 -0
- package/index.d.ts +14 -0
- package/index.d.ts.map +1 -0
- package/index.js +76 -0
- package/index.js.map +1 -0
- package/index.mjs +11 -0
- package/index.mjs.map +1 -0
- package/initFormState.d.ts +4 -0
- package/initFormState.d.ts.map +1 -0
- package/initFormState.js +22 -0
- package/initFormState.js.map +1 -0
- package/initFormState.mjs +16 -0
- package/initFormState.mjs.map +1 -0
- package/package.json +49 -0
- package/reducers/addHandlers.d.ts +24 -0
- package/reducers/addHandlers.d.ts.map +1 -0
- package/reducers/addHandlers.js +24 -0
- package/reducers/addHandlers.js.map +1 -0
- package/reducers/addHandlers.mjs +21 -0
- package/reducers/addHandlers.mjs.map +1 -0
- package/reducers/arrayInsert.d.ts +7 -0
- package/reducers/arrayInsert.d.ts.map +1 -0
- package/reducers/arrayInsert.js +16 -0
- package/reducers/arrayInsert.js.map +1 -0
- package/reducers/arrayInsert.mjs +12 -0
- package/reducers/arrayInsert.mjs.map +1 -0
- package/reducers/arrayInsertRaw.d.ts +7 -0
- package/reducers/arrayInsertRaw.d.ts.map +1 -0
- package/reducers/arrayInsertRaw.js +22 -0
- package/reducers/arrayInsertRaw.js.map +1 -0
- package/reducers/arrayInsertRaw.mjs +14 -0
- package/reducers/arrayInsertRaw.mjs.map +1 -0
- package/reducers/arrayMove.d.ts +8 -0
- package/reducers/arrayMove.d.ts.map +1 -0
- package/reducers/arrayMove.js +25 -0
- package/reducers/arrayMove.js.map +1 -0
- package/reducers/arrayMove.mjs +16 -0
- package/reducers/arrayMove.mjs.map +1 -0
- package/reducers/arrayPop.d.ts +7 -0
- package/reducers/arrayPop.d.ts.map +1 -0
- package/reducers/arrayPop.js +13 -0
- package/reducers/arrayPop.js.map +1 -0
- package/reducers/arrayPop.mjs +5 -0
- package/reducers/arrayPop.mjs.map +1 -0
- package/reducers/arrayPush.d.ts +7 -0
- package/reducers/arrayPush.d.ts.map +1 -0
- package/reducers/arrayPush.js +15 -0
- package/reducers/arrayPush.js.map +1 -0
- package/reducers/arrayPush.mjs +11 -0
- package/reducers/arrayPush.mjs.map +1 -0
- package/reducers/arrayPushRaw.d.ts +7 -0
- package/reducers/arrayPushRaw.d.ts.map +1 -0
- package/reducers/arrayPushRaw.js +17 -0
- package/reducers/arrayPushRaw.js.map +1 -0
- package/reducers/arrayPushRaw.mjs +9 -0
- package/reducers/arrayPushRaw.mjs.map +1 -0
- package/reducers/arrayRemove.d.ts +7 -0
- package/reducers/arrayRemove.d.ts.map +1 -0
- package/reducers/arrayRemove.js +21 -0
- package/reducers/arrayRemove.js.map +1 -0
- package/reducers/arrayRemove.mjs +13 -0
- package/reducers/arrayRemove.mjs.map +1 -0
- package/reducers/arrayRemoveAll.d.ts +7 -0
- package/reducers/arrayRemoveAll.d.ts.map +1 -0
- package/reducers/arrayRemoveAll.js +14 -0
- package/reducers/arrayRemoveAll.js.map +1 -0
- package/reducers/arrayRemoveAll.mjs +8 -0
- package/reducers/arrayRemoveAll.mjs.map +1 -0
- package/reducers/arrayShift.d.ts +7 -0
- package/reducers/arrayShift.d.ts.map +1 -0
- package/reducers/arrayShift.js +14 -0
- package/reducers/arrayShift.js.map +1 -0
- package/reducers/arrayShift.mjs +8 -0
- package/reducers/arrayShift.mjs.map +1 -0
- package/reducers/arraySplice.d.ts +7 -0
- package/reducers/arraySplice.d.ts.map +1 -0
- package/reducers/arraySplice.js +20 -0
- package/reducers/arraySplice.js.map +1 -0
- package/reducers/arraySplice.mjs +14 -0
- package/reducers/arraySplice.mjs.map +1 -0
- package/reducers/arraySpliceRaw.d.ts +7 -0
- package/reducers/arraySpliceRaw.d.ts.map +1 -0
- package/reducers/arraySpliceRaw.js +26 -0
- package/reducers/arraySpliceRaw.js.map +1 -0
- package/reducers/arraySpliceRaw.mjs +18 -0
- package/reducers/arraySpliceRaw.mjs.map +1 -0
- package/reducers/arraySwap.d.ts +8 -0
- package/reducers/arraySwap.d.ts.map +1 -0
- package/reducers/arraySwap.js +27 -0
- package/reducers/arraySwap.js.map +1 -0
- package/reducers/arraySwap.mjs +18 -0
- package/reducers/arraySwap.mjs.map +1 -0
- package/reducers/arrayUnshift.d.ts +7 -0
- package/reducers/arrayUnshift.d.ts.map +1 -0
- package/reducers/arrayUnshift.js +15 -0
- package/reducers/arrayUnshift.js.map +1 -0
- package/reducers/arrayUnshift.mjs +11 -0
- package/reducers/arrayUnshift.mjs.map +1 -0
- package/reducers/arrayUnshiftRaw.d.ts +7 -0
- package/reducers/arrayUnshiftRaw.d.ts.map +1 -0
- package/reducers/arrayUnshiftRaw.js +17 -0
- package/reducers/arrayUnshiftRaw.js.map +1 -0
- package/reducers/arrayUnshiftRaw.mjs +9 -0
- package/reducers/arrayUnshiftRaw.mjs.map +1 -0
- package/reducers/initialize.d.ts +46 -0
- package/reducers/initialize.d.ts.map +1 -0
- package/reducers/initialize.js +46 -0
- package/reducers/initialize.js.map +1 -0
- package/reducers/initialize.mjs +38 -0
- package/reducers/initialize.mjs.map +1 -0
- package/reducers/removeHandlers.d.ts +24 -0
- package/reducers/removeHandlers.d.ts.map +1 -0
- package/reducers/removeHandlers.js +24 -0
- package/reducers/removeHandlers.js.map +1 -0
- package/reducers/removeHandlers.mjs +21 -0
- package/reducers/removeHandlers.mjs.map +1 -0
- package/reducers/setMeta.d.ts +6 -0
- package/reducers/setMeta.d.ts.map +1 -0
- package/reducers/setMeta.js +28 -0
- package/reducers/setMeta.js.map +1 -0
- package/reducers/setMeta.mjs +21 -0
- package/reducers/setMeta.mjs.map +1 -0
- package/reducers/setRawValue.d.ts +27 -0
- package/reducers/setRawValue.d.ts.map +1 -0
- package/reducers/setRawValue.js +35 -0
- package/reducers/setRawValue.js.map +1 -0
- package/reducers/setRawValue.mjs +26 -0
- package/reducers/setRawValue.mjs.map +1 -0
- package/reducers/setSubmitStatus.d.ts +24 -0
- package/reducers/setSubmitStatus.d.ts.map +1 -0
- package/reducers/setSubmitStatus.js +18 -0
- package/reducers/setSubmitStatus.js.map +1 -0
- package/reducers/setSubmitStatus.mjs +12 -0
- package/reducers/setSubmitStatus.mjs.map +1 -0
- package/reducers/setValue.d.ts +28 -0
- package/reducers/setValue.d.ts.map +1 -0
- package/reducers/setValue.js +41 -0
- package/reducers/setValue.js.map +1 -0
- package/reducers/setValue.mjs +32 -0
- package/reducers/setValue.mjs.map +1 -0
- package/reducers/submitSucceeded.d.ts +23 -0
- package/reducers/submitSucceeded.d.ts.map +1 -0
- package/reducers/submitSucceeded.js +22 -0
- package/reducers/submitSucceeded.js.map +1 -0
- package/reducers/submitSucceeded.mjs +13 -0
- package/reducers/submitSucceeded.mjs.map +1 -0
- package/reducers/util/getInverseArrayElementSchema.d.ts +3 -0
- package/reducers/util/getInverseArrayElementSchema.d.ts.map +1 -0
- package/reducers/util/getInverseArrayElementSchema.js +14 -0
- package/reducers/util/getInverseArrayElementSchema.js.map +1 -0
- package/reducers/util/getInverseArrayElementSchema.mjs +8 -0
- package/reducers/util/getInverseArrayElementSchema.mjs.map +1 -0
- package/reducers/util/updateRawArray.d.ts +7 -0
- package/reducers/util/updateRawArray.d.ts.map +1 -0
- package/reducers/util/updateRawArray.js +14 -0
- package/reducers/util/updateRawArray.js.map +1 -0
- package/reducers/util/updateRawArray.mjs +8 -0
- package/reducers/util/updateRawArray.mjs.map +1 -0
- package/src/FieldPath.ts +215 -0
- package/src/FormAction.ts +26 -0
- package/src/FormContext.ts +44 -0
- package/src/FormState.ts +36 -0
- package/src/FormStateContext.ts +13 -0
- package/src/actions/addHandlers.ts +23 -0
- package/src/actions/arrayActions.ts +183 -0
- package/src/actions/initialize.ts +16 -0
- package/src/actions/removeHandlers.ts +13 -0
- package/src/actions/setMeta.ts +17 -0
- package/src/actions/setMounted.ts +8 -0
- package/src/actions/setRawValue.ts +17 -0
- package/src/actions/setSubmitStatus.ts +26 -0
- package/src/actions/setValue.ts +21 -0
- package/src/actions/submit.ts +7 -0
- package/src/actions/submitSucceeded.ts +7 -0
- package/src/createFormMiddleware.ts +74 -0
- package/src/createFormProvider.tsx +101 -0
- package/src/createFormReducer.ts +91 -0
- package/src/createSelectFieldErrorMap.ts +47 -0
- package/src/createSelectFormStatus.ts +41 -0
- package/src/createSelectFormValues.ts +16 -0
- package/src/createZodForm.ts +57 -0
- package/src/index.ts +32 -0
- package/src/initFormState.ts +18 -0
- package/src/reducers/addHandlers.ts +21 -0
- package/src/reducers/arrayInsert.ts +19 -0
- package/src/reducers/arrayInsertRaw.ts +22 -0
- package/src/reducers/arrayMove.ts +36 -0
- package/src/reducers/arrayPop.ts +16 -0
- package/src/reducers/arrayPush.ts +20 -0
- package/src/reducers/arrayPushRaw.ts +18 -0
- package/src/reducers/arrayRemove.ts +22 -0
- package/src/reducers/arrayRemoveAll.ts +15 -0
- package/src/reducers/arrayShift.ts +15 -0
- package/src/reducers/arraySplice.ts +17 -0
- package/src/reducers/arraySpliceRaw.ts +30 -0
- package/src/reducers/arraySwap.ts +29 -0
- package/src/reducers/arrayUnshift.ts +16 -0
- package/src/reducers/arrayUnshiftRaw.ts +18 -0
- package/src/reducers/initialize.ts +47 -0
- package/src/reducers/removeHandlers.ts +21 -0
- package/src/reducers/setMeta.ts +26 -0
- package/src/reducers/setRawValue.ts +40 -0
- package/src/reducers/setSubmitStatus.ts +15 -0
- package/src/reducers/setValue.ts +49 -0
- package/src/reducers/submitSucceeded.ts +17 -0
- package/src/reducers/util/getInverseArrayElementSchema.ts +9 -0
- package/src/reducers/util/updateRawArray.ts +25 -0
- package/src/useArrayField.ts +161 -0
- package/src/useField.ts +152 -0
- package/src/useFormContext.ts +11 -0
- package/src/useFormDispatch.ts +13 -0
- package/src/useFormSelector.ts +9 -0
- package/src/useFormStatus.ts +14 -0
- package/src/useFormValues.ts +8 -0
- package/src/useHtmlField.ts +235 -0
- package/src/useInitialize.ts +14 -0
- package/src/useSubmit.ts +29 -0
- package/src/util/PathInSchema.ts +7 -0
- package/src/util/PathInType.ts +26 -0
- package/src/util/SchemaAt.ts +68 -0
- package/src/util/acceptsArray.ts +72 -0
- package/src/util/acceptsBigint.ts +71 -0
- package/src/util/acceptsNumber.ts +71 -0
- package/src/util/bindActionsToField.ts +22 -0
- package/src/util/get.ts +10 -0
- package/src/util/getArrayElementSchema.ts +74 -0
- package/src/util/maybeParse.ts +9 -0
- package/src/util/parsePathstring.ts +119 -0
- package/src/util/pathstring.ts +32 -0
- package/src/util/set.ts +25 -0
- package/src/util/setAdd.ts +6 -0
- package/src/util/setDelete.ts +6 -0
- package/useArrayField.d.ts +34 -0
- package/useArrayField.d.ts.map +1 -0
- package/useArrayField.js +99 -0
- package/useArrayField.js.map +1 -0
- package/useArrayField.mjs +75 -0
- package/useArrayField.mjs.map +1 -0
- package/useField.d.ts +34 -0
- package/useField.d.ts.map +1 -0
- package/useField.js +98 -0
- package/useField.js.map +1 -0
- package/useField.mjs +75 -0
- package/useField.mjs.map +1 -0
- package/useFormContext.d.ts +4 -0
- package/useFormContext.d.ts.map +1 -0
- package/useFormContext.js +17 -0
- package/useFormContext.js.map +1 -0
- package/useFormContext.mjs +10 -0
- package/useFormContext.mjs.map +1 -0
- package/useFormDispatch.d.ts +7 -0
- package/useFormDispatch.d.ts.map +1 -0
- package/useFormDispatch.js +10 -0
- package/useFormDispatch.js.map +1 -0
- package/useFormDispatch.mjs +4 -0
- package/useFormDispatch.mjs.map +1 -0
- package/useFormSelector.d.ts +6 -0
- package/useFormSelector.d.ts.map +1 -0
- package/useFormSelector.js +10 -0
- package/useFormSelector.js.map +1 -0
- package/useFormSelector.mjs +4 -0
- package/useFormSelector.mjs.map +1 -0
- package/useFormStatus.d.ts +13 -0
- package/useFormStatus.d.ts.map +1 -0
- package/useFormStatus.js +15 -0
- package/useFormStatus.js.map +1 -0
- package/useFormStatus.mjs +10 -0
- package/useFormStatus.mjs.map +1 -0
- package/useFormValues.d.ts +8 -0
- package/useFormValues.d.ts.map +1 -0
- package/useFormValues.js +14 -0
- package/useFormValues.js.map +1 -0
- package/useFormValues.mjs +9 -0
- package/useFormValues.mjs.map +1 -0
- package/useHtmlField.d.ts +41 -0
- package/useHtmlField.d.ts.map +1 -0
- package/useHtmlField.js +161 -0
- package/useHtmlField.js.map +1 -0
- package/useHtmlField.mjs +148 -0
- package/useHtmlField.mjs.map +1 -0
- package/useInitialize.d.ts +5 -0
- package/useInitialize.d.ts.map +1 -0
- package/useInitialize.js +18 -0
- package/useInitialize.js.map +1 -0
- package/useInitialize.mjs +11 -0
- package/useInitialize.mjs.map +1 -0
- package/useSubmit.d.ts +5 -0
- package/useSubmit.d.ts.map +1 -0
- package/useSubmit.js +53 -0
- package/useSubmit.js.map +1 -0
- package/useSubmit.mjs +39 -0
- package/useSubmit.mjs.map +1 -0
- package/util/PathInSchema.d.ts +5 -0
- package/util/PathInSchema.d.ts.map +1 -0
- package/util/PathInSchema.js +6 -0
- package/util/PathInSchema.js.map +1 -0
- package/util/PathInSchema.mjs +2 -0
- package/util/PathInSchema.mjs.map +1 -0
- package/util/PathInType.d.ts +11 -0
- package/util/PathInType.d.ts.map +1 -0
- package/util/PathInType.js +6 -0
- package/util/PathInType.js.map +1 -0
- package/util/PathInType.mjs +2 -0
- package/util/PathInType.mjs.map +1 -0
- package/util/SchemaAt.d.ts +5 -0
- package/util/SchemaAt.d.ts.map +1 -0
- package/util/SchemaAt.js +6 -0
- package/util/SchemaAt.js.map +1 -0
- package/util/SchemaAt.mjs +2 -0
- package/util/SchemaAt.mjs.map +1 -0
- package/util/acceptsArray.d.ts +3 -0
- package/util/acceptsArray.d.ts.map +1 -0
- package/util/acceptsArray.js +89 -0
- package/util/acceptsArray.js.map +1 -0
- package/util/acceptsArray.mjs +105 -0
- package/util/acceptsArray.mjs.map +1 -0
- package/util/acceptsBigint.d.ts +3 -0
- package/util/acceptsBigint.d.ts.map +1 -0
- package/util/acceptsBigint.js +88 -0
- package/util/acceptsBigint.js.map +1 -0
- package/util/acceptsBigint.mjs +104 -0
- package/util/acceptsBigint.mjs.map +1 -0
- package/util/acceptsNumber.d.ts +3 -0
- package/util/acceptsNumber.d.ts.map +1 -0
- package/util/acceptsNumber.js +88 -0
- package/util/acceptsNumber.js.map +1 -0
- package/util/acceptsNumber.mjs +104 -0
- package/util/acceptsNumber.mjs.map +1 -0
- package/util/bindActionsToField.d.ts +7 -0
- package/util/bindActionsToField.d.ts.map +1 -0
- package/util/bindActionsToField.js +22 -0
- package/util/bindActionsToField.js.map +1 -0
- package/util/bindActionsToField.mjs +4 -0
- package/util/bindActionsToField.mjs.map +1 -0
- package/util/get.d.ts +2 -0
- package/util/get.d.ts.map +1 -0
- package/util/get.js +12 -0
- package/util/get.js.map +1 -0
- package/util/get.mjs +4 -0
- package/util/get.mjs.map +1 -0
- package/util/getArrayElementSchema.d.ts +3 -0
- package/util/getArrayElementSchema.d.ts.map +1 -0
- package/util/getArrayElementSchema.js +87 -0
- package/util/getArrayElementSchema.js.map +1 -0
- package/util/getArrayElementSchema.mjs +102 -0
- package/util/getArrayElementSchema.mjs.map +1 -0
- package/util/maybeParse.d.ts +3 -0
- package/util/maybeParse.d.ts.map +1 -0
- package/util/maybeParse.js +11 -0
- package/util/maybeParse.js.map +1 -0
- package/util/maybeParse.mjs +5 -0
- package/util/maybeParse.mjs.map +1 -0
- package/util/parsePathstring.d.ts +40 -0
- package/util/parsePathstring.d.ts.map +1 -0
- package/util/parsePathstring.js +55 -0
- package/util/parsePathstring.js.map +1 -0
- package/util/parsePathstring.mjs +35 -0
- package/util/parsePathstring.mjs.map +1 -0
- package/util/pathstring.d.ts +13 -0
- package/util/pathstring.d.ts.map +1 -0
- package/util/pathstring.js +15 -0
- package/util/pathstring.js.map +1 -0
- package/util/pathstring.mjs +7 -0
- package/util/pathstring.mjs.map +1 -0
- package/util/set.d.ts +2 -0
- package/util/set.d.ts.map +1 -0
- package/util/set.js +33 -0
- package/util/set.js.map +1 -0
- package/util/set.mjs +23 -0
- package/util/set.mjs.map +1 -0
- package/util/setAdd.d.ts +2 -0
- package/util/setAdd.d.ts.map +1 -0
- package/util/setAdd.js +13 -0
- package/util/setAdd.js.map +1 -0
- package/util/setAdd.mjs +7 -0
- package/util/setAdd.mjs.map +1 -0
- package/util/setDelete.d.ts +2 -0
- package/util/setDelete.d.ts.map +1 -0
- package/util/setDelete.js +13 -0
- package/util/setDelete.js.map +1 -0
- package/util/setDelete.mjs +7 -0
- package/util/setDelete.mjs.map +1 -0
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.createFormMiddleware = createFormMiddleware;
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
var _setSubmitStatus = require("./actions/setSubmitStatus.js");
|
|
11
|
+
var _submitSucceeded = require("./actions/submitSucceeded.js");
|
|
12
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
13
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
14
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
15
|
+
function createFormMiddleware() {
|
|
16
|
+
return function (store) {
|
|
17
|
+
return function (next) {
|
|
18
|
+
return function (action) {
|
|
19
|
+
var result = next(action);
|
|
20
|
+
var nextState = store.getState();
|
|
21
|
+
if (isSubmitAction(action) && !nextState.submitting) {
|
|
22
|
+
var onSubmit = nextState.onSubmit,
|
|
23
|
+
onSubmitSucceeded = nextState.onSubmitSucceeded,
|
|
24
|
+
onSubmitFailed = nextState.onSubmitFailed,
|
|
25
|
+
values = nextState.values,
|
|
26
|
+
rawValues = nextState.rawValues,
|
|
27
|
+
initialValues = nextState.initialValues;
|
|
28
|
+
var submitPromise = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
29
|
+
var _iterator, _step, fn;
|
|
30
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
31
|
+
while (1) switch (_context.prev = _context.next) {
|
|
32
|
+
case 0:
|
|
33
|
+
if (!nextState.validationError) {
|
|
34
|
+
_context.next = 2;
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
throw nextState.validationError;
|
|
38
|
+
case 2:
|
|
39
|
+
_iterator = _createForOfIteratorHelper(onSubmit);
|
|
40
|
+
_context.prev = 3;
|
|
41
|
+
_iterator.s();
|
|
42
|
+
case 5:
|
|
43
|
+
if ((_step = _iterator.n()).done) {
|
|
44
|
+
_context.next = 11;
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
fn = _step.value;
|
|
48
|
+
_context.next = 9;
|
|
49
|
+
return fn(values, {
|
|
50
|
+
initialValues: initialValues
|
|
51
|
+
});
|
|
52
|
+
case 9:
|
|
53
|
+
_context.next = 5;
|
|
54
|
+
break;
|
|
55
|
+
case 11:
|
|
56
|
+
_context.next = 16;
|
|
57
|
+
break;
|
|
58
|
+
case 13:
|
|
59
|
+
_context.prev = 13;
|
|
60
|
+
_context.t0 = _context["catch"](3);
|
|
61
|
+
_iterator.e(_context.t0);
|
|
62
|
+
case 16:
|
|
63
|
+
_context.prev = 16;
|
|
64
|
+
_iterator.f();
|
|
65
|
+
return _context.finish(16);
|
|
66
|
+
case 19:
|
|
67
|
+
case "end":
|
|
68
|
+
return _context.stop();
|
|
69
|
+
}
|
|
70
|
+
}, _callee, null, [[3, 13, 16, 19]]);
|
|
71
|
+
}))();
|
|
72
|
+
store.dispatch((0, _setSubmitStatus.setSubmitStatus)({
|
|
73
|
+
submitting: true,
|
|
74
|
+
submittedValues: values,
|
|
75
|
+
rawSubmittedValues: rawValues,
|
|
76
|
+
submitError: undefined,
|
|
77
|
+
submitSucceeded: false,
|
|
78
|
+
submitFailed: false,
|
|
79
|
+
submitPromise: submitPromise
|
|
80
|
+
}));
|
|
81
|
+
submitPromise.then( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
82
|
+
var _iterator2, _step2, fn;
|
|
83
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
84
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
85
|
+
case 0:
|
|
86
|
+
if (!(store.getState().submitPromise !== submitPromise)) {
|
|
87
|
+
_context2.next = 2;
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
return _context2.abrupt("return");
|
|
91
|
+
case 2:
|
|
92
|
+
store.dispatch((0, _submitSucceeded.submitSucceeded)());
|
|
93
|
+
_iterator2 = _createForOfIteratorHelper(onSubmitSucceeded);
|
|
94
|
+
_context2.prev = 4;
|
|
95
|
+
_iterator2.s();
|
|
96
|
+
case 6:
|
|
97
|
+
if ((_step2 = _iterator2.n()).done) {
|
|
98
|
+
_context2.next = 12;
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
fn = _step2.value;
|
|
102
|
+
_context2.next = 10;
|
|
103
|
+
return fn();
|
|
104
|
+
case 10:
|
|
105
|
+
_context2.next = 6;
|
|
106
|
+
break;
|
|
107
|
+
case 12:
|
|
108
|
+
_context2.next = 17;
|
|
109
|
+
break;
|
|
110
|
+
case 14:
|
|
111
|
+
_context2.prev = 14;
|
|
112
|
+
_context2.t0 = _context2["catch"](4);
|
|
113
|
+
_iterator2.e(_context2.t0);
|
|
114
|
+
case 17:
|
|
115
|
+
_context2.prev = 17;
|
|
116
|
+
_iterator2.f();
|
|
117
|
+
return _context2.finish(17);
|
|
118
|
+
case 20:
|
|
119
|
+
case "end":
|
|
120
|
+
return _context2.stop();
|
|
121
|
+
}
|
|
122
|
+
}, _callee2, null, [[4, 14, 17, 20]]);
|
|
123
|
+
})), /*#__PURE__*/function () {
|
|
124
|
+
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(error) {
|
|
125
|
+
var _iterator3, _step3, fn;
|
|
126
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
127
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
128
|
+
case 0:
|
|
129
|
+
if (!(store.getState().submitPromise !== submitPromise)) {
|
|
130
|
+
_context3.next = 2;
|
|
131
|
+
break;
|
|
132
|
+
}
|
|
133
|
+
return _context3.abrupt("return");
|
|
134
|
+
case 2:
|
|
135
|
+
store.dispatch((0, _setSubmitStatus.setSubmitStatus)({
|
|
136
|
+
submitting: false,
|
|
137
|
+
submitError: error,
|
|
138
|
+
submitSucceeded: false,
|
|
139
|
+
submitFailed: true,
|
|
140
|
+
submitPromise: undefined
|
|
141
|
+
}));
|
|
142
|
+
_iterator3 = _createForOfIteratorHelper(onSubmitFailed);
|
|
143
|
+
_context3.prev = 4;
|
|
144
|
+
_iterator3.s();
|
|
145
|
+
case 6:
|
|
146
|
+
if ((_step3 = _iterator3.n()).done) {
|
|
147
|
+
_context3.next = 12;
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
fn = _step3.value;
|
|
151
|
+
_context3.next = 10;
|
|
152
|
+
return fn(error);
|
|
153
|
+
case 10:
|
|
154
|
+
_context3.next = 6;
|
|
155
|
+
break;
|
|
156
|
+
case 12:
|
|
157
|
+
_context3.next = 17;
|
|
158
|
+
break;
|
|
159
|
+
case 14:
|
|
160
|
+
_context3.prev = 14;
|
|
161
|
+
_context3.t0 = _context3["catch"](4);
|
|
162
|
+
_iterator3.e(_context3.t0);
|
|
163
|
+
case 17:
|
|
164
|
+
_context3.prev = 17;
|
|
165
|
+
_iterator3.f();
|
|
166
|
+
return _context3.finish(17);
|
|
167
|
+
case 20:
|
|
168
|
+
case "end":
|
|
169
|
+
return _context3.stop();
|
|
170
|
+
}
|
|
171
|
+
}, _callee3, null, [[4, 14, 17, 20]]);
|
|
172
|
+
}));
|
|
173
|
+
return function (_x) {
|
|
174
|
+
return _ref3.apply(this, arguments);
|
|
175
|
+
};
|
|
176
|
+
}());
|
|
177
|
+
}
|
|
178
|
+
return result;
|
|
179
|
+
};
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
function isSubmitAction(action) {
|
|
184
|
+
return action instanceof Object && 'type' in action && action.type === 'submit';
|
|
185
|
+
}
|
|
186
|
+
//# sourceMappingURL=createFormMiddleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormMiddleware.js","names":["_setSubmitStatus","require","_submitSucceeded","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","createFormMiddleware","store","action","result","nextState","getState","isSubmitAction","submitting","onSubmit","onSubmitSucceeded","onSubmitFailed","values","rawValues","initialValues","submitPromise","_asyncToGenerator2","_regenerator","mark","_callee","_iterator","_step","fn","wrap","_callee$","_context","prev","validationError","t0","finish","stop","dispatch","setSubmitStatus","submittedValues","rawSubmittedValues","submitError","undefined","submitSucceeded","submitFailed","then","_callee2","_iterator2","_step2","_callee2$","_context2","abrupt","_ref3","_callee3","error","_iterator3","_step3","_callee3$","_context3","_x","apply","arguments","Object","type"],"sources":["src/createFormMiddleware.ts"],"sourcesContent":["import { Dispatch, Middleware } from 'redux'\nimport z from 'zod'\nimport { FormAction } from './FormAction'\nimport { FormState } from './FormState'\nimport { SubmitAction } from './actions/submit'\nimport { setSubmitStatus } from './actions/setSubmitStatus'\nimport { submitSucceeded } from './actions/submitSucceeded'\n\nexport function createFormMiddleware<T extends z.ZodTypeAny>(): Middleware<\n // eslint-disable-next-line @typescript-eslint/ban-types\n {},\n FormState<T>,\n Dispatch<FormAction<T>>\n> {\n return (store) => (next) => (action) => {\n const result: FormState<T> = next(action) as any\n\n const nextState = store.getState()\n\n if (isSubmitAction(action) && !nextState.submitting) {\n const {\n onSubmit,\n onSubmitSucceeded,\n onSubmitFailed,\n values,\n rawValues,\n initialValues,\n } = nextState\n const submitPromise = (async () => {\n if (nextState.validationError) throw nextState.validationError\n for (const fn of onSubmit) await fn(values, { initialValues })\n })()\n store.dispatch(\n setSubmitStatus({\n submitting: true,\n submittedValues: values,\n rawSubmittedValues: rawValues,\n submitError: undefined,\n submitSucceeded: false,\n submitFailed: false,\n submitPromise,\n })\n )\n submitPromise.then(\n async () => {\n if (store.getState().submitPromise !== submitPromise) return\n store.dispatch(submitSucceeded())\n for (const fn of onSubmitSucceeded) await fn()\n },\n async (error) => {\n if (store.getState().submitPromise !== submitPromise) return\n store.dispatch(\n setSubmitStatus({\n submitting: false,\n submitError: error,\n submitSucceeded: false,\n submitFailed: true,\n submitPromise: undefined,\n })\n )\n for (const fn of onSubmitFailed) await fn(error)\n }\n )\n }\n\n return result\n }\n}\n\nfunction isSubmitAction(action: any): action is SubmitAction {\n return (\n action instanceof Object && 'type' in action && action.type === 'submit'\n )\n}\n"],"mappings":";;;;;;;;;AAKA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AAA2D,SAAAE,2BAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,yBAAAC,MAAA,IAAAH,CAAA,CAAAG,MAAA,CAAAC,QAAA,KAAAJ,CAAA,qBAAAE,CAAA,QAAAG,KAAA,CAAAC,OAAA,CAAAN,CAAA,MAAAE,CAAA,GAAAK,2BAAA,CAAAP,CAAA,MAAAC,CAAA,IAAAD,CAAA,uBAAAA,CAAA,CAAAQ,MAAA,IAAAN,CAAA,KAAAF,CAAA,GAAAE,CAAA,OAAAO,EAAA,MAAAC,CAAA,YAAAA,EAAA,eAAAC,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAA,EAAA,WAAAH,EAAA,IAAAT,CAAA,CAAAQ,MAAA,KAAAK,IAAA,WAAAA,IAAA,MAAAC,KAAA,EAAAd,CAAA,CAAAS,EAAA,UAAAR,CAAA,WAAAA,EAAAD,CAAA,UAAAA,CAAA,KAAAe,CAAA,EAAAL,CAAA,gBAAAM,SAAA,iJAAAC,CAAA,EAAAC,CAAA,OAAAC,CAAA,gBAAAR,CAAA,WAAAA,EAAA,IAAAT,CAAA,GAAAA,CAAA,CAAAkB,IAAA,CAAApB,CAAA,MAAAY,CAAA,WAAAA,EAAA,QAAAZ,CAAA,GAAAE,CAAA,CAAAmB,IAAA,WAAAH,CAAA,GAAAlB,CAAA,CAAAa,IAAA,EAAAb,CAAA,KAAAC,CAAA,WAAAA,EAAAD,CAAA,IAAAmB,CAAA,OAAAF,CAAA,GAAAjB,CAAA,KAAAe,CAAA,WAAAA,EAAA,UAAAG,CAAA,YAAAhB,CAAA,cAAAA,CAAA,8BAAAiB,CAAA,QAAAF,CAAA;AAAA,SAAAV,4BAAAP,CAAA,EAAAkB,CAAA,QAAAlB,CAAA,2BAAAA,CAAA,SAAAsB,iBAAA,CAAAtB,CAAA,EAAAkB,CAAA,OAAAhB,CAAA,MAAAqB,QAAA,CAAAH,IAAA,CAAApB,CAAA,EAAAwB,KAAA,6BAAAtB,CAAA,IAAAF,CAAA,CAAAyB,WAAA,KAAAvB,CAAA,GAAAF,CAAA,CAAAyB,WAAA,CAAAC,IAAA,aAAAxB,CAAA,cAAAA,CAAA,GAAAG,KAAA,CAAAsB,IAAA,CAAA3B,CAAA,oBAAAE,CAAA,+CAAA0B,IAAA,CAAA1B,CAAA,IAAAoB,iBAAA,CAAAtB,CAAA,EAAAkB,CAAA;AAAA,SAAAI,kBAAAtB,CAAA,EAAAkB,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAlB,CAAA,CAAAQ,MAAA,MAAAU,CAAA,GAAAlB,CAAA,CAAAQ,MAAA,YAAAP,CAAA,MAAAW,CAAA,GAAAP,KAAA,CAAAa,CAAA,GAAAjB,CAAA,GAAAiB,CAAA,EAAAjB,CAAA,IAAAW,CAAA,CAAAX,CAAA,IAAAD,CAAA,CAAAC,CAAA,UAAAW,CAAA;AAEpD,SAASiB,oBAAoBA,CAAA,EAKlC;EACA,OAAO,UAACC,KAAK;IAAA,OAAK,UAACT,IAAI;MAAA,OAAK,UAACU,MAAM,EAAK;QACtC,IAAMC,MAAoB,GAAGX,IAAI,CAACU,MAAM,CAAQ;QAEhD,IAAME,SAAS,GAAGH,KAAK,CAACI,QAAQ,CAAC,CAAC;QAElC,IAAIC,cAAc,CAACJ,MAAM,CAAC,IAAI,CAACE,SAAS,CAACG,UAAU,EAAE;UACnD,IACEC,QAAQ,GAMNJ,SAAS,CANXI,QAAQ;YACRC,iBAAiB,GAKfL,SAAS,CALXK,iBAAiB;YACjBC,cAAc,GAIZN,SAAS,CAJXM,cAAc;YACdC,MAAM,GAGJP,SAAS,CAHXO,MAAM;YACNC,SAAS,GAEPR,SAAS,CAFXQ,SAAS;YACTC,aAAa,GACXT,SAAS,CADXS,aAAa;UAEf,IAAMC,aAAa,GAAG,IAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAC,SAAAC,QAAA;YAAA,IAAAC,SAAA,EAAAC,KAAA,EAAAC,EAAA;YAAA,OAAAL,YAAA,YAAAM,IAAA,UAAAC,SAAAC,QAAA;cAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAhC,IAAA;gBAAA;kBAAA,KACjBY,SAAS,CAACsB,eAAe;oBAAAF,QAAA,CAAAhC,IAAA;oBAAA;kBAAA;kBAAA,MAAQY,SAAS,CAACsB,eAAe;gBAAA;kBAAAP,SAAA,GAAAjD,0BAAA,CAC7CsC,QAAQ;kBAAAgB,QAAA,CAAAC,IAAA;kBAAAN,SAAA,CAAArC,CAAA;gBAAA;kBAAA,KAAAsC,KAAA,GAAAD,SAAA,CAAApC,CAAA,IAAAC,IAAA;oBAAAwC,QAAA,CAAAhC,IAAA;oBAAA;kBAAA;kBAAd6B,EAAE,GAAAD,KAAA,CAAAnC,KAAA;kBAAAuC,QAAA,CAAAhC,IAAA;kBAAA,OAAoB6B,EAAE,CAACV,MAAM,EAAE;oBAAEE,aAAa,EAAbA;kBAAc,CAAC,CAAC;gBAAA;kBAAAW,QAAA,CAAAhC,IAAA;kBAAA;gBAAA;kBAAAgC,QAAA,CAAAhC,IAAA;kBAAA;gBAAA;kBAAAgC,QAAA,CAAAC,IAAA;kBAAAD,QAAA,CAAAG,EAAA,GAAAH,QAAA;kBAAAL,SAAA,CAAA/C,CAAA,CAAAoD,QAAA,CAAAG,EAAA;gBAAA;kBAAAH,QAAA,CAAAC,IAAA;kBAAAN,SAAA,CAAAjC,CAAA;kBAAA,OAAAsC,QAAA,CAAAI,MAAA;gBAAA;gBAAA;kBAAA,OAAAJ,QAAA,CAAAK,IAAA;cAAA;YAAA,GAAAX,OAAA;UAAA,CAC/D,GAAE,CAAC;UACJjB,KAAK,CAAC6B,QAAQ,CACZ,IAAAC,gCAAe,EAAC;YACdxB,UAAU,EAAE,IAAI;YAChByB,eAAe,EAAErB,MAAM;YACvBsB,kBAAkB,EAAErB,SAAS;YAC7BsB,WAAW,EAAEC,SAAS;YACtBC,eAAe,EAAE,KAAK;YACtBC,YAAY,EAAE,KAAK;YACnBvB,aAAa,EAAbA;UACF,CAAC,CACH,CAAC;UACDA,aAAa,CAACwB,IAAI,mBAAAvB,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAChB,SAAAsB,SAAA;YAAA,IAAAC,UAAA,EAAAC,MAAA,EAAApB,EAAA;YAAA,OAAAL,YAAA,YAAAM,IAAA,UAAAoB,UAAAC,SAAA;cAAA,kBAAAA,SAAA,CAAAlB,IAAA,GAAAkB,SAAA,CAAAnD,IAAA;gBAAA;kBAAA,MACMS,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACS,aAAa,KAAKA,aAAa;oBAAA6B,SAAA,CAAAnD,IAAA;oBAAA;kBAAA;kBAAA,OAAAmD,SAAA,CAAAC,MAAA;gBAAA;kBACpD3C,KAAK,CAAC6B,QAAQ,CAAC,IAAAM,gCAAe,EAAC,CAAC,CAAC;kBAAAI,UAAA,GAAAtE,0BAAA,CAChBuC,iBAAiB;kBAAAkC,SAAA,CAAAlB,IAAA;kBAAAe,UAAA,CAAA1D,CAAA;gBAAA;kBAAA,KAAA2D,MAAA,GAAAD,UAAA,CAAAzD,CAAA,IAAAC,IAAA;oBAAA2D,SAAA,CAAAnD,IAAA;oBAAA;kBAAA;kBAAvB6B,EAAE,GAAAoB,MAAA,CAAAxD,KAAA;kBAAA0D,SAAA,CAAAnD,IAAA;kBAAA,OAA6B6B,EAAE,CAAC,CAAC;gBAAA;kBAAAsB,SAAA,CAAAnD,IAAA;kBAAA;gBAAA;kBAAAmD,SAAA,CAAAnD,IAAA;kBAAA;gBAAA;kBAAAmD,SAAA,CAAAlB,IAAA;kBAAAkB,SAAA,CAAAhB,EAAA,GAAAgB,SAAA;kBAAAH,UAAA,CAAApE,CAAA,CAAAuE,SAAA,CAAAhB,EAAA;gBAAA;kBAAAgB,SAAA,CAAAlB,IAAA;kBAAAe,UAAA,CAAAtD,CAAA;kBAAA,OAAAyD,SAAA,CAAAf,MAAA;gBAAA;gBAAA;kBAAA,OAAAe,SAAA,CAAAd,IAAA;cAAA;YAAA,GAAAU,QAAA;UAAA,CAC/C;YAAA,IAAAM,KAAA,OAAA9B,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CACD,SAAA6B,SAAOC,KAAK;cAAA,IAAAC,UAAA,EAAAC,MAAA,EAAA5B,EAAA;cAAA,OAAAL,YAAA,YAAAM,IAAA,UAAA4B,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAA1B,IAAA,GAAA0B,SAAA,CAAA3D,IAAA;kBAAA;oBAAA,MACNS,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACS,aAAa,KAAKA,aAAa;sBAAAqC,SAAA,CAAA3D,IAAA;sBAAA;oBAAA;oBAAA,OAAA2D,SAAA,CAAAP,MAAA;kBAAA;oBACpD3C,KAAK,CAAC6B,QAAQ,CACZ,IAAAC,gCAAe,EAAC;sBACdxB,UAAU,EAAE,KAAK;sBACjB2B,WAAW,EAAEa,KAAK;sBAClBX,eAAe,EAAE,KAAK;sBACtBC,YAAY,EAAE,IAAI;sBAClBvB,aAAa,EAAEqB;oBACjB,CAAC,CACH,CAAC;oBAAAa,UAAA,GAAA9E,0BAAA,CACgBwC,cAAc;oBAAAyC,SAAA,CAAA1B,IAAA;oBAAAuB,UAAA,CAAAlE,CAAA;kBAAA;oBAAA,KAAAmE,MAAA,GAAAD,UAAA,CAAAjE,CAAA,IAAAC,IAAA;sBAAAmE,SAAA,CAAA3D,IAAA;sBAAA;oBAAA;oBAApB6B,EAAE,GAAA4B,MAAA,CAAAhE,KAAA;oBAAAkE,SAAA,CAAA3D,IAAA;oBAAA,OAA0B6B,EAAE,CAAC0B,KAAK,CAAC;kBAAA;oBAAAI,SAAA,CAAA3D,IAAA;oBAAA;kBAAA;oBAAA2D,SAAA,CAAA3D,IAAA;oBAAA;kBAAA;oBAAA2D,SAAA,CAAA1B,IAAA;oBAAA0B,SAAA,CAAAxB,EAAA,GAAAwB,SAAA;oBAAAH,UAAA,CAAA5E,CAAA,CAAA+E,SAAA,CAAAxB,EAAA;kBAAA;oBAAAwB,SAAA,CAAA1B,IAAA;oBAAAuB,UAAA,CAAA9D,CAAA;oBAAA,OAAAiE,SAAA,CAAAvB,MAAA;kBAAA;kBAAA;oBAAA,OAAAuB,SAAA,CAAAtB,IAAA;gBAAA;cAAA,GAAAiB,QAAA;YAAA,CACjD;YAAA,iBAAAM,EAAA;cAAA,OAAAP,KAAA,CAAAQ,KAAA,OAAAC,SAAA;YAAA;UAAA,GACH,CAAC;QACH;QAEA,OAAOnD,MAAM;MACf,CAAC;IAAA;EAAA;AACH;AAEA,SAASG,cAAcA,CAACJ,MAAW,EAA0B;EAC3D,OACEA,MAAM,YAAYqD,MAAM,IAAI,MAAM,IAAIrD,MAAM,IAAIA,MAAM,CAACsD,IAAI,KAAK,QAAQ;AAE5E","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { setSubmitStatus } from "./actions/setSubmitStatus.mjs";
|
|
2
|
+
import { submitSucceeded } from "./actions/submitSucceeded.mjs";
|
|
3
|
+
export function createFormMiddleware() {
|
|
4
|
+
return store => next => action => {
|
|
5
|
+
const result = next(action);
|
|
6
|
+
const nextState = store.getState();
|
|
7
|
+
if (isSubmitAction(action) && !nextState.submitting) {
|
|
8
|
+
const {
|
|
9
|
+
onSubmit,
|
|
10
|
+
onSubmitSucceeded,
|
|
11
|
+
onSubmitFailed,
|
|
12
|
+
values,
|
|
13
|
+
rawValues,
|
|
14
|
+
initialValues
|
|
15
|
+
} = nextState;
|
|
16
|
+
const submitPromise = (async () => {
|
|
17
|
+
if (nextState.validationError) throw nextState.validationError;
|
|
18
|
+
for (const fn of onSubmit) await fn(values, {
|
|
19
|
+
initialValues
|
|
20
|
+
});
|
|
21
|
+
})();
|
|
22
|
+
store.dispatch(setSubmitStatus({
|
|
23
|
+
submitting: true,
|
|
24
|
+
submittedValues: values,
|
|
25
|
+
rawSubmittedValues: rawValues,
|
|
26
|
+
submitError: undefined,
|
|
27
|
+
submitSucceeded: false,
|
|
28
|
+
submitFailed: false,
|
|
29
|
+
submitPromise
|
|
30
|
+
}));
|
|
31
|
+
submitPromise.then(async () => {
|
|
32
|
+
if (store.getState().submitPromise !== submitPromise) return;
|
|
33
|
+
store.dispatch(submitSucceeded());
|
|
34
|
+
for (const fn of onSubmitSucceeded) await fn();
|
|
35
|
+
}, async error => {
|
|
36
|
+
if (store.getState().submitPromise !== submitPromise) return;
|
|
37
|
+
store.dispatch(setSubmitStatus({
|
|
38
|
+
submitting: false,
|
|
39
|
+
submitError: error,
|
|
40
|
+
submitSucceeded: false,
|
|
41
|
+
submitFailed: true,
|
|
42
|
+
submitPromise: undefined
|
|
43
|
+
}));
|
|
44
|
+
for (const fn of onSubmitFailed) await fn(error);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return result;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function isSubmitAction(action) {
|
|
51
|
+
return action instanceof Object && 'type' in action && action.type === 'submit';
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=createFormMiddleware.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormMiddleware.mjs","names":["setSubmitStatus","submitSucceeded","createFormMiddleware","store","next","action","result","nextState","getState","isSubmitAction","submitting","onSubmit","onSubmitSucceeded","onSubmitFailed","values","rawValues","initialValues","submitPromise","validationError","fn","dispatch","submittedValues","rawSubmittedValues","submitError","undefined","submitFailed","then","error","Object","type"],"sources":["src/createFormMiddleware.ts"],"sourcesContent":["import { Dispatch, Middleware } from 'redux'\nimport z from 'zod'\nimport { FormAction } from './FormAction'\nimport { FormState } from './FormState'\nimport { SubmitAction } from './actions/submit'\nimport { setSubmitStatus } from './actions/setSubmitStatus'\nimport { submitSucceeded } from './actions/submitSucceeded'\n\nexport function createFormMiddleware<T extends z.ZodTypeAny>(): Middleware<\n // eslint-disable-next-line @typescript-eslint/ban-types\n {},\n FormState<T>,\n Dispatch<FormAction<T>>\n> {\n return (store) => (next) => (action) => {\n const result: FormState<T> = next(action) as any\n\n const nextState = store.getState()\n\n if (isSubmitAction(action) && !nextState.submitting) {\n const {\n onSubmit,\n onSubmitSucceeded,\n onSubmitFailed,\n values,\n rawValues,\n initialValues,\n } = nextState\n const submitPromise = (async () => {\n if (nextState.validationError) throw nextState.validationError\n for (const fn of onSubmit) await fn(values, { initialValues })\n })()\n store.dispatch(\n setSubmitStatus({\n submitting: true,\n submittedValues: values,\n rawSubmittedValues: rawValues,\n submitError: undefined,\n submitSucceeded: false,\n submitFailed: false,\n submitPromise,\n })\n )\n submitPromise.then(\n async () => {\n if (store.getState().submitPromise !== submitPromise) return\n store.dispatch(submitSucceeded())\n for (const fn of onSubmitSucceeded) await fn()\n },\n async (error) => {\n if (store.getState().submitPromise !== submitPromise) return\n store.dispatch(\n setSubmitStatus({\n submitting: false,\n submitError: error,\n submitSucceeded: false,\n submitFailed: true,\n submitPromise: undefined,\n })\n )\n for (const fn of onSubmitFailed) await fn(error)\n }\n )\n }\n\n return result\n }\n}\n\nfunction isSubmitAction(action: any): action is SubmitAction {\n return (\n action instanceof Object && 'type' in action && action.type === 'submit'\n )\n}\n"],"mappings":"AAKA,SAASA,eAAe;AACxB,SAASC,eAAe;AAExB,OAAO,SAASC,oBAAoBA,CAAA,EAKlC;EACA,OAAQC,KAAK,IAAMC,IAAI,IAAMC,MAAM,IAAK;IACtC,MAAMC,MAAoB,GAAGF,IAAI,CAACC,MAAM,CAAQ;IAEhD,MAAME,SAAS,GAAGJ,KAAK,CAACK,QAAQ,CAAC,CAAC;IAElC,IAAIC,cAAc,CAACJ,MAAM,CAAC,IAAI,CAACE,SAAS,CAACG,UAAU,EAAE;MACnD,MAAM;QACJC,QAAQ;QACRC,iBAAiB;QACjBC,cAAc;QACdC,MAAM;QACNC,SAAS;QACTC;MACF,CAAC,GAAGT,SAAS;MACb,MAAMU,aAAa,GAAG,CAAC,YAAY;QACjC,IAAIV,SAAS,CAACW,eAAe,EAAE,MAAMX,SAAS,CAACW,eAAe;QAC9D,KAAK,MAAMC,EAAE,IAAIR,QAAQ,EAAE,MAAMQ,EAAE,CAACL,MAAM,EAAE;UAAEE;QAAc,CAAC,CAAC;MAChE,CAAC,EAAE,CAAC;MACJb,KAAK,CAACiB,QAAQ,CACZpB,eAAe,CAAC;QACdU,UAAU,EAAE,IAAI;QAChBW,eAAe,EAAEP,MAAM;QACvBQ,kBAAkB,EAAEP,SAAS;QAC7BQ,WAAW,EAAEC,SAAS;QACtBvB,eAAe,EAAE,KAAK;QACtBwB,YAAY,EAAE,KAAK;QACnBR;MACF,CAAC,CACH,CAAC;MACDA,aAAa,CAACS,IAAI,CAChB,YAAY;QACV,IAAIvB,KAAK,CAACK,QAAQ,CAAC,CAAC,CAACS,aAAa,KAAKA,aAAa,EAAE;QACtDd,KAAK,CAACiB,QAAQ,CAACnB,eAAe,CAAC,CAAC,CAAC;QACjC,KAAK,MAAMkB,EAAE,IAAIP,iBAAiB,EAAE,MAAMO,EAAE,CAAC,CAAC;MAChD,CAAC,EACD,MAAOQ,KAAK,IAAK;QACf,IAAIxB,KAAK,CAACK,QAAQ,CAAC,CAAC,CAACS,aAAa,KAAKA,aAAa,EAAE;QACtDd,KAAK,CAACiB,QAAQ,CACZpB,eAAe,CAAC;UACdU,UAAU,EAAE,KAAK;UACjBa,WAAW,EAAEI,KAAK;UAClB1B,eAAe,EAAE,KAAK;UACtBwB,YAAY,EAAE,IAAI;UAClBR,aAAa,EAAEO;QACjB,CAAC,CACH,CAAC;QACD,KAAK,MAAML,EAAE,IAAIN,cAAc,EAAE,MAAMM,EAAE,CAACQ,KAAK,CAAC;MAClD,CACF,CAAC;IACH;IAEA,OAAOrB,MAAM;EACf,CAAC;AACH;AAEA,SAASG,cAAcA,CAACJ,MAAW,EAA0B;EAC3D,OACEA,MAAM,YAAYuB,MAAM,IAAI,MAAM,IAAIvB,MAAM,IAAIA,MAAM,CAACwB,IAAI,KAAK,QAAQ;AAE5E","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import z from 'zod';
|
|
3
|
+
import { FormContextProps } from './FormContext';
|
|
4
|
+
export declare const createFormProvider: <T extends z.ZodTypeAny>(props: Pick<FormContextProps<T>, "root" | "schema" | "inverseSchema" | "selectFormStatus" | "selectFieldErrorMap" | "selectFormValues">) => ({ children }: {
|
|
5
|
+
children: React.ReactElement;
|
|
6
|
+
}) => React.JSX.Element;
|
|
7
|
+
//# sourceMappingURL=createFormProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormProvider.d.ts","sourceRoot":"","sources":["src/createFormProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,CAAC,MAAM,KAAK,CAAA;AASnB,OAAO,EAAe,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAU7D,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,CAAC,CAAC,UAAU,SAChD,IAAI,CACT,gBAAgB,CAAC,CAAC,CAAC,EACjB,MAAM,GACN,QAAQ,GACR,eAAe,GACf,kBAAkB,GAClB,qBAAqB,GACrB,kBAAkB,CACrB,oBAEmC;IAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,sBAoEnE,CAAA"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.createFormProvider = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _redux = require("redux");
|
|
11
|
+
var _setMounted = require("./actions/setMounted.js");
|
|
12
|
+
var _createFormReducer = require("./createFormReducer.js");
|
|
13
|
+
var _reactRedux = require("react-redux");
|
|
14
|
+
var _initialize = require("./actions/initialize.js");
|
|
15
|
+
var _setRawValue = require("./actions/setRawValue.js");
|
|
16
|
+
var _setValue = require("./actions/setValue.js");
|
|
17
|
+
var _FormContext = require("./FormContext.js");
|
|
18
|
+
var _FormStateContext = require("./FormStateContext.js");
|
|
19
|
+
var _createFormMiddleware = require("./createFormMiddleware.js");
|
|
20
|
+
var _submit = require("./actions/submit.js");
|
|
21
|
+
var _setSubmitStatus = require("./actions/setSubmitStatus.js");
|
|
22
|
+
var _setMeta = require("./actions/setMeta.js");
|
|
23
|
+
var _addHandlers = require("./actions/addHandlers.js");
|
|
24
|
+
var _removeHandlers = require("./actions/removeHandlers.js");
|
|
25
|
+
var _arrayActions = require("./actions/arrayActions.js");
|
|
26
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
27
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
28
|
+
var createFormProvider = exports.createFormProvider = function createFormProvider(props) {
|
|
29
|
+
return function FormProvider(_ref) {
|
|
30
|
+
var children = _ref.children;
|
|
31
|
+
var storeRef = _react["default"].useRef();
|
|
32
|
+
if (!storeRef.current) {
|
|
33
|
+
storeRef.current = (0, _redux.createStore)((0, _createFormReducer.createFormReducer)(props), (0, _redux.applyMiddleware)((0, _createFormMiddleware.createFormMiddleware)()));
|
|
34
|
+
}
|
|
35
|
+
var store = storeRef.current;
|
|
36
|
+
var dispatch = store.dispatch;
|
|
37
|
+
var getValues = _react["default"].useCallback(function () {
|
|
38
|
+
return store.getState().values;
|
|
39
|
+
}, []);
|
|
40
|
+
var getRawValues = _react["default"].useCallback(function () {
|
|
41
|
+
return store.getState().rawValues;
|
|
42
|
+
}, []);
|
|
43
|
+
var getInitialValues = _react["default"].useCallback(function () {
|
|
44
|
+
return store.getState().initialValues;
|
|
45
|
+
}, []);
|
|
46
|
+
var getRawInitialValues = _react["default"].useCallback(function () {
|
|
47
|
+
return store.getState().rawInitialValues;
|
|
48
|
+
}, []);
|
|
49
|
+
var getStatus = _react["default"].useCallback(function () {
|
|
50
|
+
return props.selectFormStatus(store.getState());
|
|
51
|
+
}, []);
|
|
52
|
+
_react["default"].useEffect(function () {
|
|
53
|
+
return function () {
|
|
54
|
+
store.dispatch((0, _setMounted.setMounted)(false));
|
|
55
|
+
};
|
|
56
|
+
}, []);
|
|
57
|
+
var formContext = _react["default"].useMemo(function () {
|
|
58
|
+
return _objectSpread(_objectSpread(_objectSpread({}, props), {}, {
|
|
59
|
+
getValues: getValues,
|
|
60
|
+
getRawValues: getRawValues,
|
|
61
|
+
getInitialValues: getInitialValues,
|
|
62
|
+
getRawInitialValues: getRawInitialValues,
|
|
63
|
+
getStatus: getStatus
|
|
64
|
+
}, (0, _redux.bindActionCreators)({
|
|
65
|
+
initialize: _initialize.initialize,
|
|
66
|
+
addHandlers: _addHandlers.addHandlers,
|
|
67
|
+
removeHandlers: _removeHandlers.removeHandlers,
|
|
68
|
+
submit: _submit.submit,
|
|
69
|
+
setSubmitStatus: _setSubmitStatus.setSubmitStatus,
|
|
70
|
+
setMeta: _setMeta.setMeta,
|
|
71
|
+
setRawValue: _setRawValue.setRawValue,
|
|
72
|
+
setValue: _setValue.setValue
|
|
73
|
+
}, dispatch)), {}, {
|
|
74
|
+
arrayActions: (0, _redux.bindActionCreators)(_arrayActions.arrayActions, dispatch)
|
|
75
|
+
});
|
|
76
|
+
}, []);
|
|
77
|
+
return /*#__PURE__*/_react["default"].createElement(_FormContext.FormContext.Provider, {
|
|
78
|
+
value: formContext
|
|
79
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactRedux.Provider, {
|
|
80
|
+
store: store,
|
|
81
|
+
context: _FormStateContext.FormStateContext
|
|
82
|
+
}, children));
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=createFormProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormProvider.js","names":["_react","_interopRequireDefault","require","_redux","_setMounted","_createFormReducer","_reactRedux","_initialize","_setRawValue","_setValue","_FormContext","_FormStateContext","_createFormMiddleware","_submit","_setSubmitStatus","_setMeta","_addHandlers","_removeHandlers","_arrayActions","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","createFormProvider","exports","props","FormProvider","_ref","children","storeRef","React","useRef","current","createStore","createFormReducer","applyMiddleware","createFormMiddleware","store","dispatch","getValues","useCallback","getState","values","getRawValues","rawValues","getInitialValues","initialValues","getRawInitialValues","rawInitialValues","getStatus","selectFormStatus","useEffect","setMounted","formContext","useMemo","bindActionCreators","initialize","addHandlers","removeHandlers","submit","setSubmitStatus","setMeta","setRawValue","setValue","arrayActions","createElement","FormContext","Provider","value","context","FormStateContext"],"sources":["src/createFormProvider.tsx"],"sourcesContent":["import React from 'react'\nimport { Store, applyMiddleware, bindActionCreators, createStore } from 'redux'\nimport z from 'zod'\nimport { setMounted } from './actions/setMounted'\nimport { createFormReducer } from './createFormReducer'\nimport { FormAction } from './FormAction'\nimport { FormState } from './FormState'\nimport { Provider } from 'react-redux'\nimport { initialize } from './actions/initialize'\nimport { setRawValue } from './actions/setRawValue'\nimport { setValue } from './actions/setValue'\nimport { FormContext, FormContextProps } from './FormContext'\nimport { FormStateContext } from './FormStateContext'\nimport { createFormMiddleware } from './createFormMiddleware'\nimport { submit } from './actions/submit'\nimport { setSubmitStatus } from './actions/setSubmitStatus'\nimport { setMeta } from './actions/setMeta'\nimport { addHandlers } from './actions/addHandlers'\nimport { removeHandlers } from './actions/removeHandlers'\nimport { arrayActions } from './actions/arrayActions'\n\nexport const createFormProvider = <T extends z.ZodTypeAny>(\n props: Pick<\n FormContextProps<T>,\n | 'root'\n | 'schema'\n | 'inverseSchema'\n | 'selectFormStatus'\n | 'selectFieldErrorMap'\n | 'selectFormValues'\n >\n) =>\n function FormProvider({ children }: { children: React.ReactElement }) {\n const storeRef = React.useRef<Store<FormState<T>, FormAction<T>>>()\n if (!storeRef.current) {\n storeRef.current = createStore(\n createFormReducer(props),\n applyMiddleware(createFormMiddleware())\n )\n }\n const store = storeRef.current\n const { dispatch } = store\n\n const getValues = React.useCallback(() => store.getState().values, [])\n const getRawValues = React.useCallback(() => store.getState().rawValues, [])\n const getInitialValues = React.useCallback(\n () => store.getState().initialValues,\n []\n )\n const getRawInitialValues = React.useCallback(\n () => store.getState().rawInitialValues,\n []\n )\n const getStatus = React.useCallback(\n () => props.selectFormStatus(store.getState()),\n []\n )\n\n React.useEffect(\n () => () => {\n store.dispatch(setMounted(false))\n },\n []\n )\n const formContext = React.useMemo(\n (): FormContextProps<T> => ({\n ...props,\n getValues,\n getRawValues,\n getInitialValues,\n getRawInitialValues,\n getStatus,\n ...bindActionCreators(\n {\n initialize: initialize<T>,\n addHandlers: addHandlers<T>,\n removeHandlers: removeHandlers<T>,\n submit,\n setSubmitStatus: setSubmitStatus<T>,\n setMeta: setMeta as any,\n setRawValue: setRawValue as any,\n setValue: setValue as any,\n },\n dispatch\n ),\n arrayActions: bindActionCreators(arrayActions, dispatch),\n }),\n []\n )\n\n return (\n <FormContext.Provider value={formContext as any}>\n <Provider\n store={store}\n context={FormStateContext as FormStateContext<T>}\n >\n {children}\n </Provider>\n </FormContext.Provider>\n )\n }\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AAGA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAR,OAAA;AACA,IAAAS,iBAAA,GAAAT,OAAA;AACA,IAAAU,qBAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,gBAAA,GAAAZ,OAAA;AACA,IAAAa,QAAA,GAAAb,OAAA;AACA,IAAAc,YAAA,GAAAd,OAAA;AACA,IAAAe,eAAA,GAAAf,OAAA;AACA,IAAAgB,aAAA,GAAAhB,OAAA;AAAqD,SAAAiB,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAE9C,IAAMoB,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,SAArBA,kBAAkBA,CAC7BE,KAQC;EAAA,OAED,SAASC,YAAYA,CAAAC,IAAA,EAAiD;IAAA,IAA9CC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAC9B,IAAMC,QAAQ,GAAGC,iBAAK,CAACC,MAAM,CAAqC,CAAC;IACnE,IAAI,CAACF,QAAQ,CAACG,OAAO,EAAE;MACrBH,QAAQ,CAACG,OAAO,GAAG,IAAAC,kBAAW,EAC5B,IAAAC,oCAAiB,EAACT,KAAK,CAAC,EACxB,IAAAU,sBAAe,EAAC,IAAAC,0CAAoB,EAAC,CAAC,CACxC,CAAC;IACH;IACA,IAAMC,KAAK,GAAGR,QAAQ,CAACG,OAAO;IAC9B,IAAQM,QAAQ,GAAKD,KAAK,CAAlBC,QAAQ;IAEhB,IAAMC,SAAS,GAAGT,iBAAK,CAACU,WAAW,CAAC;MAAA,OAAMH,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACC,MAAM;IAAA,GAAE,EAAE,CAAC;IACtE,IAAMC,YAAY,GAAGb,iBAAK,CAACU,WAAW,CAAC;MAAA,OAAMH,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACG,SAAS;IAAA,GAAE,EAAE,CAAC;IAC5E,IAAMC,gBAAgB,GAAGf,iBAAK,CAACU,WAAW,CACxC;MAAA,OAAMH,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACK,aAAa;IAAA,GACpC,EACF,CAAC;IACD,IAAMC,mBAAmB,GAAGjB,iBAAK,CAACU,WAAW,CAC3C;MAAA,OAAMH,KAAK,CAACI,QAAQ,CAAC,CAAC,CAACO,gBAAgB;IAAA,GACvC,EACF,CAAC;IACD,IAAMC,SAAS,GAAGnB,iBAAK,CAACU,WAAW,CACjC;MAAA,OAAMf,KAAK,CAACyB,gBAAgB,CAACb,KAAK,CAACI,QAAQ,CAAC,CAAC,CAAC;IAAA,GAC9C,EACF,CAAC;IAEDX,iBAAK,CAACqB,SAAS,CACb;MAAA,OAAM,YAAM;QACVd,KAAK,CAACC,QAAQ,CAAC,IAAAc,sBAAU,EAAC,KAAK,CAAC,CAAC;MACnC,CAAC;IAAA,GACD,EACF,CAAC;IACD,IAAMC,WAAW,GAAGvB,iBAAK,CAACwB,OAAO,CAC/B;MAAA,OAAAvC,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACKU,KAAK;QACRc,SAAS,EAATA,SAAS;QACTI,YAAY,EAAZA,YAAY;QACZE,gBAAgB,EAAhBA,gBAAgB;QAChBE,mBAAmB,EAAnBA,mBAAmB;QACnBE,SAAS,EAATA;MAAS,GACN,IAAAM,yBAAkB,EACnB;QACEC,UAAU,EAAEA,sBAAa;QACzBC,WAAW,EAAEA,wBAAc;QAC3BC,cAAc,EAAEA,8BAAiB;QACjCC,MAAM,EAANA,cAAM;QACNC,eAAe,EAAEA,gCAAkB;QACnCC,OAAO,EAAEA,gBAAc;QACvBC,WAAW,EAAEA,wBAAkB;QAC/BC,QAAQ,EAAEA;MACZ,CAAC,EACDzB,QACF,CAAC;QACD0B,YAAY,EAAE,IAAAT,yBAAkB,EAACS,0BAAY,EAAE1B,QAAQ;MAAC;IAAA,CACxD,EACF,EACF,CAAC;IAED,oBACEvD,MAAA,YAAAkF,aAAA,CAACxE,YAAA,CAAAyE,WAAW,CAACC,QAAQ;MAACC,KAAK,EAAEf;IAAmB,gBAC9CtE,MAAA,YAAAkF,aAAA,CAAC5E,WAAA,CAAA8E,QAAQ;MACP9B,KAAK,EAAEA,KAAM;MACbgC,OAAO,EAAEC;IAAwC,GAEhD1C,QACO,CACU,CAAC;EAE3B,CAAC;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { applyMiddleware, bindActionCreators, createStore } from 'redux';
|
|
3
|
+
import { setMounted } from "./actions/setMounted.mjs";
|
|
4
|
+
import { createFormReducer } from "./createFormReducer.mjs";
|
|
5
|
+
import { Provider } from 'react-redux';
|
|
6
|
+
import { initialize } from "./actions/initialize.mjs";
|
|
7
|
+
import { setRawValue } from "./actions/setRawValue.mjs";
|
|
8
|
+
import { setValue } from "./actions/setValue.mjs";
|
|
9
|
+
import { FormContext } from "./FormContext.mjs";
|
|
10
|
+
import { FormStateContext } from "./FormStateContext.mjs";
|
|
11
|
+
import { createFormMiddleware } from "./createFormMiddleware.mjs";
|
|
12
|
+
import { submit } from "./actions/submit.mjs";
|
|
13
|
+
import { setSubmitStatus } from "./actions/setSubmitStatus.mjs";
|
|
14
|
+
import { setMeta } from "./actions/setMeta.mjs";
|
|
15
|
+
import { addHandlers } from "./actions/addHandlers.mjs";
|
|
16
|
+
import { removeHandlers } from "./actions/removeHandlers.mjs";
|
|
17
|
+
import { arrayActions } from "./actions/arrayActions.mjs";
|
|
18
|
+
export const createFormProvider = props => function FormProvider({
|
|
19
|
+
children
|
|
20
|
+
}) {
|
|
21
|
+
const storeRef = React.useRef();
|
|
22
|
+
if (!storeRef.current) {
|
|
23
|
+
storeRef.current = createStore(createFormReducer(props), applyMiddleware(createFormMiddleware()));
|
|
24
|
+
}
|
|
25
|
+
const store = storeRef.current;
|
|
26
|
+
const {
|
|
27
|
+
dispatch
|
|
28
|
+
} = store;
|
|
29
|
+
const getValues = React.useCallback(() => store.getState().values, []);
|
|
30
|
+
const getRawValues = React.useCallback(() => store.getState().rawValues, []);
|
|
31
|
+
const getInitialValues = React.useCallback(() => store.getState().initialValues, []);
|
|
32
|
+
const getRawInitialValues = React.useCallback(() => store.getState().rawInitialValues, []);
|
|
33
|
+
const getStatus = React.useCallback(() => props.selectFormStatus(store.getState()), []);
|
|
34
|
+
React.useEffect(() => () => {
|
|
35
|
+
store.dispatch(setMounted(false));
|
|
36
|
+
}, []);
|
|
37
|
+
const formContext = React.useMemo(() => ({
|
|
38
|
+
...props,
|
|
39
|
+
getValues,
|
|
40
|
+
getRawValues,
|
|
41
|
+
getInitialValues,
|
|
42
|
+
getRawInitialValues,
|
|
43
|
+
getStatus,
|
|
44
|
+
...bindActionCreators({
|
|
45
|
+
initialize: initialize,
|
|
46
|
+
addHandlers: addHandlers,
|
|
47
|
+
removeHandlers: removeHandlers,
|
|
48
|
+
submit,
|
|
49
|
+
setSubmitStatus: setSubmitStatus,
|
|
50
|
+
setMeta: setMeta,
|
|
51
|
+
setRawValue: setRawValue,
|
|
52
|
+
setValue: setValue
|
|
53
|
+
}, dispatch),
|
|
54
|
+
arrayActions: bindActionCreators(arrayActions, dispatch)
|
|
55
|
+
}), []);
|
|
56
|
+
return /*#__PURE__*/React.createElement(FormContext.Provider, {
|
|
57
|
+
value: formContext
|
|
58
|
+
}, /*#__PURE__*/React.createElement(Provider, {
|
|
59
|
+
store: store,
|
|
60
|
+
context: FormStateContext
|
|
61
|
+
}, children));
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=createFormProvider.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormProvider.mjs","names":["React","applyMiddleware","bindActionCreators","createStore","setMounted","createFormReducer","Provider","initialize","setRawValue","setValue","FormContext","FormStateContext","createFormMiddleware","submit","setSubmitStatus","setMeta","addHandlers","removeHandlers","arrayActions","createFormProvider","props","FormProvider","children","storeRef","useRef","current","store","dispatch","getValues","useCallback","getState","values","getRawValues","rawValues","getInitialValues","initialValues","getRawInitialValues","rawInitialValues","getStatus","selectFormStatus","useEffect","formContext","useMemo","createElement","value","context"],"sources":["src/createFormProvider.tsx"],"sourcesContent":["import React from 'react'\nimport { Store, applyMiddleware, bindActionCreators, createStore } from 'redux'\nimport z from 'zod'\nimport { setMounted } from './actions/setMounted'\nimport { createFormReducer } from './createFormReducer'\nimport { FormAction } from './FormAction'\nimport { FormState } from './FormState'\nimport { Provider } from 'react-redux'\nimport { initialize } from './actions/initialize'\nimport { setRawValue } from './actions/setRawValue'\nimport { setValue } from './actions/setValue'\nimport { FormContext, FormContextProps } from './FormContext'\nimport { FormStateContext } from './FormStateContext'\nimport { createFormMiddleware } from './createFormMiddleware'\nimport { submit } from './actions/submit'\nimport { setSubmitStatus } from './actions/setSubmitStatus'\nimport { setMeta } from './actions/setMeta'\nimport { addHandlers } from './actions/addHandlers'\nimport { removeHandlers } from './actions/removeHandlers'\nimport { arrayActions } from './actions/arrayActions'\n\nexport const createFormProvider = <T extends z.ZodTypeAny>(\n props: Pick<\n FormContextProps<T>,\n | 'root'\n | 'schema'\n | 'inverseSchema'\n | 'selectFormStatus'\n | 'selectFieldErrorMap'\n | 'selectFormValues'\n >\n) =>\n function FormProvider({ children }: { children: React.ReactElement }) {\n const storeRef = React.useRef<Store<FormState<T>, FormAction<T>>>()\n if (!storeRef.current) {\n storeRef.current = createStore(\n createFormReducer(props),\n applyMiddleware(createFormMiddleware())\n )\n }\n const store = storeRef.current\n const { dispatch } = store\n\n const getValues = React.useCallback(() => store.getState().values, [])\n const getRawValues = React.useCallback(() => store.getState().rawValues, [])\n const getInitialValues = React.useCallback(\n () => store.getState().initialValues,\n []\n )\n const getRawInitialValues = React.useCallback(\n () => store.getState().rawInitialValues,\n []\n )\n const getStatus = React.useCallback(\n () => props.selectFormStatus(store.getState()),\n []\n )\n\n React.useEffect(\n () => () => {\n store.dispatch(setMounted(false))\n },\n []\n )\n const formContext = React.useMemo(\n (): FormContextProps<T> => ({\n ...props,\n getValues,\n getRawValues,\n getInitialValues,\n getRawInitialValues,\n getStatus,\n ...bindActionCreators(\n {\n initialize: initialize<T>,\n addHandlers: addHandlers<T>,\n removeHandlers: removeHandlers<T>,\n submit,\n setSubmitStatus: setSubmitStatus<T>,\n setMeta: setMeta as any,\n setRawValue: setRawValue as any,\n setValue: setValue as any,\n },\n dispatch\n ),\n arrayActions: bindActionCreators(arrayActions, dispatch),\n }),\n []\n )\n\n return (\n <FormContext.Provider value={formContext as any}>\n <Provider\n store={store}\n context={FormStateContext as FormStateContext<T>}\n >\n {children}\n </Provider>\n </FormContext.Provider>\n )\n }\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Reducer } from 'redux';
|
|
2
|
+
import z from 'zod';
|
|
3
|
+
import { FormAction } from './FormAction';
|
|
4
|
+
import { FormState } from './FormState';
|
|
5
|
+
export declare function createFormReducer<T extends z.ZodTypeAny>(options: {
|
|
6
|
+
schema: T;
|
|
7
|
+
inverseSchema: z.ZodType<z.input<T>, any, z.output<T>>;
|
|
8
|
+
}): Reducer<FormState<T>, FormAction<T>>;
|
|
9
|
+
//# sourceMappingURL=createFormReducer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormReducer.d.ts","sourceRoot":"","sources":["src/createFormReducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAyBvC,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE;IACjE,MAAM,EAAE,CAAC,CAAA;IACT,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;CACvD,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CA2DvC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.createFormReducer = createFormReducer;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _initFormState = require("./initFormState.js");
|
|
10
|
+
var _addHandlers = require("./reducers/addHandlers.js");
|
|
11
|
+
var _removeHandlers = require("./reducers/removeHandlers.js");
|
|
12
|
+
var _setValue = require("./reducers/setValue.js");
|
|
13
|
+
var _setRawValue = require("./reducers/setRawValue.js");
|
|
14
|
+
var _setMeta = require("./reducers/setMeta.js");
|
|
15
|
+
var _submitSucceeded = require("./reducers/submitSucceeded.js");
|
|
16
|
+
var _setSubmitStatus = require("./reducers/setSubmitStatus.js");
|
|
17
|
+
var _initialize = require("./reducers/initialize.js");
|
|
18
|
+
var _arrayPop = require("./reducers/arrayPop.js");
|
|
19
|
+
var _arrayMove = require("./reducers/arrayMove.js");
|
|
20
|
+
var _arrayRemove = require("./reducers/arrayRemove.js");
|
|
21
|
+
var _arrayRemoveAll = require("./reducers/arrayRemoveAll.js");
|
|
22
|
+
var _arrayShift = require("./reducers/arrayShift.js");
|
|
23
|
+
var _arraySwap = require("./reducers/arraySwap.js");
|
|
24
|
+
var _arrayPushRaw = require("./reducers/arrayPushRaw.js");
|
|
25
|
+
var _arrayInsertRaw = require("./reducers/arrayInsertRaw.js");
|
|
26
|
+
var _arraySpliceRaw = require("./reducers/arraySpliceRaw.js");
|
|
27
|
+
var _arrayUnshiftRaw = require("./reducers/arrayUnshiftRaw.js");
|
|
28
|
+
var _arrayPush = require("./reducers/arrayPush.js");
|
|
29
|
+
var _arrayUnshift = require("./reducers/arrayUnshift.js");
|
|
30
|
+
var _arrayInsert = require("./reducers/arrayInsert.js");
|
|
31
|
+
var _arraySplice = require("./reducers/arraySplice.js");
|
|
32
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
33
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
34
|
+
function createFormReducer(options) {
|
|
35
|
+
var initializeReducer = (0, _initialize.createInitializeReducer)(options);
|
|
36
|
+
var setValueReducer = (0, _setValue.createSetValueReducer)(options);
|
|
37
|
+
var setRawValueReducer = (0, _setRawValue.createSetRawValueReducer)(options);
|
|
38
|
+
var formReducer = function formReducer() {
|
|
39
|
+
var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _initFormState.initFormState)();
|
|
40
|
+
var action = arguments.length > 1 ? arguments[1] : undefined;
|
|
41
|
+
switch (action.type) {
|
|
42
|
+
case 'setMounted':
|
|
43
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
44
|
+
mounted: action.mounted
|
|
45
|
+
});
|
|
46
|
+
case 'addHandlers':
|
|
47
|
+
return (0, _addHandlers.addHandlersReducer)(state, action);
|
|
48
|
+
case 'removeHandlers':
|
|
49
|
+
return (0, _removeHandlers.removeHandlersReducer)(state, action);
|
|
50
|
+
case 'initialize':
|
|
51
|
+
return initializeReducer(state, action);
|
|
52
|
+
case 'setSubmitStatus':
|
|
53
|
+
return (0, _setSubmitStatus.setSubmitStatusReducer)(state, action);
|
|
54
|
+
case 'submitSucceeded':
|
|
55
|
+
return (0, _submitSucceeded.submitSucceededReducer)(state);
|
|
56
|
+
case 'setValue':
|
|
57
|
+
return setValueReducer(state, action);
|
|
58
|
+
case 'setRawValue':
|
|
59
|
+
return setRawValueReducer(state, action);
|
|
60
|
+
case 'setMeta':
|
|
61
|
+
return (0, _setMeta.setMetaReducer)(state, action);
|
|
62
|
+
case 'arrayInsert':
|
|
63
|
+
return (0, _arrayInsert.arrayInsertReducer)(formReducer, state, action);
|
|
64
|
+
case 'arrayInsertRaw':
|
|
65
|
+
return (0, _arrayInsertRaw.arrayInsertRawReducer)(formReducer, state, action);
|
|
66
|
+
case 'arrayMove':
|
|
67
|
+
return (0, _arrayMove.arrayMoveReducer)(formReducer, state, action);
|
|
68
|
+
case 'arrayPop':
|
|
69
|
+
return (0, _arrayPop.arrayPopReducer)(formReducer, state, action);
|
|
70
|
+
case 'arrayPush':
|
|
71
|
+
return (0, _arrayPush.arrayPushReducer)(formReducer, state, action);
|
|
72
|
+
case 'arrayPushRaw':
|
|
73
|
+
return (0, _arrayPushRaw.arrayPushRawReducer)(formReducer, state, action);
|
|
74
|
+
case 'arrayRemove':
|
|
75
|
+
return (0, _arrayRemove.arrayRemoveReducer)(formReducer, state, action);
|
|
76
|
+
case 'arrayRemoveAll':
|
|
77
|
+
return (0, _arrayRemoveAll.arrayRemoveAllReducer)(formReducer, state, action);
|
|
78
|
+
case 'arrayShift':
|
|
79
|
+
return (0, _arrayShift.arrayShiftReducer)(formReducer, state, action);
|
|
80
|
+
case 'arraySplice':
|
|
81
|
+
return (0, _arraySplice.arraySpliceReducer)(formReducer, state, action);
|
|
82
|
+
case 'arraySpliceRaw':
|
|
83
|
+
return (0, _arraySpliceRaw.arraySpliceRawReducer)(formReducer, state, action);
|
|
84
|
+
case 'arraySwap':
|
|
85
|
+
return (0, _arraySwap.arraySwapReducer)(formReducer, state, action);
|
|
86
|
+
case 'arrayUnshift':
|
|
87
|
+
return (0, _arrayUnshift.arrayUnshiftReducer)(formReducer, state, action);
|
|
88
|
+
case 'arrayUnshiftRaw':
|
|
89
|
+
return (0, _arrayUnshiftRaw.arrayUnshiftRawReducer)(formReducer, state, action);
|
|
90
|
+
}
|
|
91
|
+
return state;
|
|
92
|
+
};
|
|
93
|
+
return formReducer;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=createFormReducer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormReducer.js","names":["_initFormState","require","_addHandlers","_removeHandlers","_setValue","_setRawValue","_setMeta","_submitSucceeded","_setSubmitStatus","_initialize","_arrayPop","_arrayMove","_arrayRemove","_arrayRemoveAll","_arrayShift","_arraySwap","_arrayPushRaw","_arrayInsertRaw","_arraySpliceRaw","_arrayUnshiftRaw","_arrayPush","_arrayUnshift","_arrayInsert","_arraySplice","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","createFormReducer","options","initializeReducer","createInitializeReducer","setValueReducer","createSetValueReducer","setRawValueReducer","createSetRawValueReducer","formReducer","state","undefined","initFormState","action","type","mounted","addHandlersReducer","removeHandlersReducer","setSubmitStatusReducer","submitSucceededReducer","setMetaReducer","arrayInsertReducer","arrayInsertRawReducer","arrayMoveReducer","arrayPopReducer","arrayPushReducer","arrayPushRawReducer","arrayRemoveReducer","arrayRemoveAllReducer","arrayShiftReducer","arraySpliceReducer","arraySpliceRawReducer","arraySwapReducer","arrayUnshiftReducer","arrayUnshiftRawReducer"],"sources":["src/createFormReducer.ts"],"sourcesContent":["import { Reducer } from 'redux'\nimport z from 'zod'\nimport { FormAction } from './FormAction'\nimport { FormState } from './FormState'\nimport { initFormState } from './initFormState'\nimport { addHandlersReducer } from './reducers/addHandlers'\nimport { removeHandlersReducer } from './reducers/removeHandlers'\nimport { createSetValueReducer } from './reducers/setValue'\nimport { createSetRawValueReducer } from './reducers/setRawValue'\nimport { setMetaReducer } from './reducers/setMeta'\nimport { submitSucceededReducer } from './reducers/submitSucceeded'\nimport { setSubmitStatusReducer } from './reducers/setSubmitStatus'\nimport { createInitializeReducer } from './reducers/initialize'\nimport { arrayPopReducer } from './reducers/arrayPop'\nimport { arrayMoveReducer } from './reducers/arrayMove'\nimport { arrayRemoveReducer } from './reducers/arrayRemove'\nimport { arrayRemoveAllReducer } from './reducers/arrayRemoveAll'\nimport { arrayShiftReducer } from './reducers/arrayShift'\nimport { arraySwapReducer } from './reducers/arraySwap'\nimport { arrayPushRawReducer } from './reducers/arrayPushRaw'\nimport { arrayInsertRawReducer } from './reducers/arrayInsertRaw'\nimport { arraySpliceRawReducer } from './reducers/arraySpliceRaw'\nimport { arrayUnshiftRawReducer } from './reducers/arrayUnshiftRaw'\nimport { arrayPushReducer } from './reducers/arrayPush'\nimport { arrayUnshiftReducer } from './reducers/arrayUnshift'\nimport { arrayInsertReducer } from './reducers/arrayInsert'\nimport { arraySpliceReducer } from './reducers/arraySplice'\n\nexport function createFormReducer<T extends z.ZodTypeAny>(options: {\n schema: T\n inverseSchema: z.ZodType<z.input<T>, any, z.output<T>>\n}): Reducer<FormState<T>, FormAction<T>> {\n const initializeReducer = createInitializeReducer(options)\n const setValueReducer = createSetValueReducer(options)\n const setRawValueReducer = createSetRawValueReducer(options)\n const formReducer = (\n state: FormState<T> = initFormState(),\n action: FormAction<T>\n ): FormState<T> => {\n switch (action.type) {\n case 'setMounted':\n return { ...state, mounted: action.mounted }\n case 'addHandlers':\n return addHandlersReducer(state, action)\n case 'removeHandlers':\n return removeHandlersReducer(state, action)\n case 'initialize':\n return initializeReducer(state, action)\n case 'setSubmitStatus':\n return setSubmitStatusReducer(state, action)\n case 'submitSucceeded':\n return submitSucceededReducer(state)\n case 'setValue':\n return setValueReducer(state, action)\n case 'setRawValue':\n return setRawValueReducer(state, action)\n case 'setMeta':\n return setMetaReducer(state, action)\n case 'arrayInsert':\n return arrayInsertReducer(formReducer, state, action)\n case 'arrayInsertRaw':\n return arrayInsertRawReducer(formReducer, state, action)\n case 'arrayMove':\n return arrayMoveReducer(formReducer, state, action)\n case 'arrayPop':\n return arrayPopReducer(formReducer, state, action)\n case 'arrayPush':\n return arrayPushReducer(formReducer, state, action)\n case 'arrayPushRaw':\n return arrayPushRawReducer(formReducer, state, action)\n case 'arrayRemove':\n return arrayRemoveReducer(formReducer, state, action)\n case 'arrayRemoveAll':\n return arrayRemoveAllReducer(formReducer, state, action)\n case 'arrayShift':\n return arrayShiftReducer(formReducer, state, action)\n case 'arraySplice':\n return arraySpliceReducer(formReducer, state, action)\n case 'arraySpliceRaw':\n return arraySpliceRawReducer(formReducer, state, action)\n case 'arraySwap':\n return arraySwapReducer(formReducer, state, action)\n case 'arrayUnshift':\n return arrayUnshiftReducer(formReducer, state, action)\n case 'arrayUnshiftRaw':\n return arrayUnshiftRawReducer(formReducer, state, action)\n }\n return state\n }\n return formReducer\n}\n"],"mappings":"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","ignoreList":[]}
|