envoc-form 3.3.0 → 4.0.1-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/README.md +10 -1
- package/dist/css/envoc-form-styles.css +0 -113
- package/dist/css/envoc-form-styles.css.map +1 -1
- package/es/AddressInput/AddressInput.d.ts +15 -0
- package/es/AddressInput/AddressInput.js +21 -97
- package/es/AddressInput/UsStates.d.ts +3 -0
- package/es/AddressInput/UsStates.js +53 -152
- package/es/ConfirmBaseForm/ConfirmBaseForm.d.ts +10 -0
- package/es/ConfirmBaseForm/ConfirmBaseForm.js +35 -43
- package/es/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +11 -0
- package/es/ConfirmDeleteForm/ConfirmDeleteForm.js +54 -40
- package/es/DatePickerInput/DatePickerInput.d.ts +14 -0
- package/es/DatePickerInput/DatePickerInput.js +63 -95
- package/es/Field/CustomFieldInputProps.d.ts +7 -0
- package/es/Field/CustomFieldInputProps.js +1 -0
- package/es/Field/CustomFieldMetaProps.d.ts +4 -0
- package/es/Field/CustomFieldMetaProps.js +1 -0
- package/es/Field/Field.d.ts +22 -0
- package/es/Field/Field.js +46 -0
- package/es/Field/FieldErrorScrollTarget.d.ts +2 -0
- package/es/Field/FieldErrorScrollTarget.js +11 -0
- package/es/Field/FieldNameContext.d.ts +3 -0
- package/es/Field/FieldNameContext.js +3 -0
- package/es/Field/FieldSection.d.ts +7 -0
- package/es/Field/FieldSection.js +20 -0
- package/es/Field/InjectedFieldProps.d.ts +7 -0
- package/es/Field/InjectedFieldProps.js +1 -0
- package/es/Field/useStandardField.d.ts +15 -0
- package/es/Field/useStandardField.js +93 -0
- package/es/FieldArray/FieldArray.d.ts +15 -0
- package/es/FieldArray/FieldArray.js +80 -0
- package/es/File/FileGroup.d.ts +8 -0
- package/es/File/FileGroup.js +50 -0
- package/es/File/FileList.d.ts +6 -0
- package/es/File/FileList.js +20 -0
- package/es/File/humanFileSize.d.ts +1 -0
- package/es/File/humanFileSize.js +6 -0
- package/es/Form/FocusError.d.ts +5 -0
- package/es/Form/FocusError.js +41 -53
- package/es/Form/Form.d.ts +22 -0
- package/es/Form/Form.js +111 -125
- package/es/Form/FormBasedPreventNavigation.d.ts +5 -0
- package/es/Form/FormBasedPreventNavigation.js +53 -30
- package/es/Form/ServerErrorContext.d.ts +10 -0
- package/es/Form/ServerErrorContext.js +8 -6
- package/es/FormActions.d.ts +7 -0
- package/es/FormActions.js +22 -0
- package/es/Group.d.ts +13 -0
- package/es/Group.js +22 -0
- package/es/Input/IconInputGroup.d.ts +9 -0
- package/es/Input/IconInputGroup.js +40 -0
- package/es/Input/InputGroup.d.ts +12 -0
- package/es/Input/InputGroup.js +33 -0
- package/es/Input/MoneyInputGroup.d.ts +7 -0
- package/es/Input/MoneyInputGroup.js +41 -0
- package/es/Input/NumberInputGroup.d.ts +7 -0
- package/es/Input/NumberInputGroup.js +41 -0
- package/es/Input/StringInputGroup.d.ts +7 -0
- package/es/Input/StringInputGroup.js +40 -0
- package/es/Normalization/NormalizationFunction.d.ts +4 -0
- package/es/Normalization/NormalizationFunction.js +1 -0
- package/es/Normalization/normalizers.d.ts +2 -0
- package/es/Normalization/normalizers.js +30 -0
- package/es/Select/BooleanSelectGroup.d.ts +7 -0
- package/es/Select/BooleanSelectGroup.js +27 -0
- package/es/Select/NumberSelectGroup.d.ts +8 -0
- package/es/Select/NumberSelectGroup.js +19 -0
- package/es/Select/SelectGroup.d.ts +22 -0
- package/es/Select/SelectGroup.js +59 -0
- package/es/Select/SelectGroupPropsHelper.d.ts +3 -0
- package/es/Select/SelectGroupPropsHelper.js +1 -0
- package/es/Select/StringSelectGroup.d.ts +8 -0
- package/es/Select/StringSelectGroup.js +19 -0
- package/es/StandardFormActions.d.ts +6 -0
- package/es/StandardFormActions.js +23 -24
- package/es/SubmitFormButton.d.ts +7 -0
- package/es/SubmitFormButton.js +37 -23
- package/es/Validation/ValidatedApiResult.d.ts +6 -0
- package/es/Validation/ValidatedApiResult.js +1 -0
- package/es/Validation/ValidationError.d.ts +5 -0
- package/es/Validation/ValidationError.js +1 -0
- package/es/Validation/ValidationFunction.d.ts +4 -0
- package/es/Validation/ValidationFunction.js +1 -0
- package/es/Validation/validators.d.ts +15 -0
- package/es/Validation/validators.js +73 -0
- package/es/__Tests__/FormTestBase.d.ts +27 -0
- package/es/__Tests__/FormTestBase.js +83 -12
- package/{src/__Tests__/index.js → es/__Tests__/index.d.ts} +0 -0
- package/es/__Tests__/index.js +2 -2
- package/es/index.d.ts +57 -0
- package/es/index.js +41 -25
- package/es/utils/objectContainsNonSerializableProperty.d.ts +1 -0
- package/es/utils/objectContainsNonSerializableProperty.js +14 -16
- package/es/utils/objectToFormData.d.ts +10 -0
- package/es/utils/objectToFormData.js +77 -65
- package/es/utils/typeChecks.d.ts +8 -0
- package/es/utils/typeChecks.js +18 -25
- package/lib/AddressInput/AddressInput.d.ts +15 -0
- package/lib/AddressInput/AddressInput.js +27 -123
- package/lib/AddressInput/UsStates.d.ts +3 -0
- package/lib/AddressInput/UsStates.js +55 -159
- package/lib/ConfirmBaseForm/ConfirmBaseForm.d.ts +10 -0
- package/lib/ConfirmBaseForm/ConfirmBaseForm.js +41 -57
- package/lib/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +11 -0
- package/lib/ConfirmDeleteForm/ConfirmDeleteForm.js +60 -56
- package/lib/DatePickerInput/DatePickerInput.d.ts +14 -0
- package/lib/DatePickerInput/DatePickerInput.js +69 -113
- package/lib/Field/CustomFieldInputProps.d.ts +7 -0
- package/lib/Field/CustomFieldInputProps.js +2 -0
- package/lib/Field/CustomFieldMetaProps.d.ts +4 -0
- package/lib/Field/CustomFieldMetaProps.js +2 -0
- package/lib/Field/Field.d.ts +22 -0
- package/lib/Field/Field.js +51 -0
- package/lib/Field/FieldErrorScrollTarget.d.ts +2 -0
- package/lib/Field/FieldErrorScrollTarget.js +14 -0
- package/lib/Field/FieldNameContext.d.ts +3 -0
- package/lib/Field/FieldNameContext.js +9 -0
- package/lib/Field/FieldSection.d.ts +7 -0
- package/lib/Field/FieldSection.js +23 -0
- package/lib/Field/InjectedFieldProps.d.ts +7 -0
- package/lib/Field/InjectedFieldProps.js +2 -0
- package/lib/Field/useStandardField.d.ts +15 -0
- package/lib/Field/useStandardField.js +96 -0
- package/lib/FieldArray/FieldArray.d.ts +15 -0
- package/lib/FieldArray/FieldArray.js +86 -0
- package/lib/File/FileGroup.d.ts +8 -0
- package/lib/File/FileGroup.js +55 -0
- package/lib/File/FileList.d.ts +6 -0
- package/lib/File/FileList.js +23 -0
- package/lib/File/humanFileSize.d.ts +1 -0
- package/lib/File/humanFileSize.js +10 -0
- package/lib/Form/FocusError.d.ts +5 -0
- package/lib/Form/FocusError.js +47 -66
- package/lib/Form/Form.d.ts +22 -0
- package/lib/Form/Form.js +117 -153
- package/lib/Form/FormBasedPreventNavigation.d.ts +5 -0
- package/lib/Form/FormBasedPreventNavigation.js +56 -39
- package/lib/Form/ServerErrorContext.d.ts +10 -0
- package/lib/Form/ServerErrorContext.js +14 -18
- package/lib/FormActions.d.ts +7 -0
- package/lib/FormActions.js +28 -0
- package/lib/Group.d.ts +13 -0
- package/lib/Group.js +28 -0
- package/lib/Input/IconInputGroup.d.ts +9 -0
- package/lib/Input/IconInputGroup.js +45 -0
- package/lib/Input/InputGroup.d.ts +12 -0
- package/lib/Input/InputGroup.js +38 -0
- package/lib/Input/MoneyInputGroup.d.ts +7 -0
- package/lib/Input/MoneyInputGroup.js +46 -0
- package/lib/Input/NumberInputGroup.d.ts +7 -0
- package/lib/Input/NumberInputGroup.js +46 -0
- package/lib/Input/StringInputGroup.d.ts +7 -0
- package/lib/Input/StringInputGroup.js +45 -0
- package/lib/Normalization/NormalizationFunction.d.ts +4 -0
- package/lib/Normalization/NormalizationFunction.js +2 -0
- package/lib/Normalization/normalizers.d.ts +2 -0
- package/lib/Normalization/normalizers.js +35 -0
- package/lib/Select/BooleanSelectGroup.d.ts +7 -0
- package/lib/Select/BooleanSelectGroup.js +34 -0
- package/lib/Select/NumberSelectGroup.d.ts +8 -0
- package/lib/Select/NumberSelectGroup.js +27 -0
- package/lib/Select/SelectGroup.d.ts +22 -0
- package/lib/Select/SelectGroup.js +65 -0
- package/lib/Select/SelectGroupPropsHelper.d.ts +3 -0
- package/lib/Select/SelectGroupPropsHelper.js +2 -0
- package/lib/Select/StringSelectGroup.d.ts +8 -0
- package/lib/Select/StringSelectGroup.js +27 -0
- package/lib/StandardFormActions.d.ts +6 -0
- package/lib/StandardFormActions.js +29 -37
- package/lib/SubmitFormButton.d.ts +7 -0
- package/lib/SubmitFormButton.js +42 -38
- package/lib/Validation/ValidatedApiResult.d.ts +6 -0
- package/lib/Validation/ValidatedApiResult.js +2 -0
- package/lib/Validation/ValidationError.d.ts +5 -0
- package/lib/Validation/ValidationError.js +2 -0
- package/lib/Validation/ValidationFunction.d.ts +4 -0
- package/lib/Validation/ValidationFunction.js +2 -0
- package/lib/Validation/validators.d.ts +15 -0
- package/lib/Validation/validators.js +86 -0
- package/lib/__Tests__/FormTestBase.d.ts +27 -0
- package/lib/__Tests__/FormTestBase.js +86 -25
- package/lib/__Tests__/index.d.ts +2 -0
- package/lib/__Tests__/index.js +8 -15
- package/lib/index.d.ts +57 -0
- package/lib/index.js +101 -262
- package/lib/utils/objectContainsNonSerializableProperty.d.ts +1 -0
- package/lib/utils/objectContainsNonSerializableProperty.js +17 -24
- package/lib/utils/objectToFormData.d.ts +10 -0
- package/lib/utils/objectToFormData.js +79 -73
- package/lib/utils/typeChecks.d.ts +8 -0
- package/lib/utils/typeChecks.js +29 -58
- package/package.json +106 -101
- package/src/AddressInput/{AddesssInput.test.js → AddressInput.test.tsx} +7 -3
- package/src/AddressInput/AddressInput.tsx +72 -0
- package/src/AddressInput/{UsStates.js → UsStates.ts} +3 -1
- package/src/AddressInput/__snapshots__/AddressInput.test.tsx.snap +175 -0
- package/src/ConfirmBaseForm/ConfirmBaseForm.test.tsx +24 -0
- package/src/ConfirmBaseForm/ConfirmBaseForm.tsx +50 -0
- package/src/ConfirmBaseForm/__snapshots__/{ConfirmBaseForm.test.js.snap → ConfirmBaseForm.test.tsx.snap} +2 -2
- package/src/ConfirmDeleteForm/{ConfirmDeleteForm.test.js → ConfirmDeleteForm.test.tsx} +3 -3
- package/src/ConfirmDeleteForm/ConfirmDeleteForm.tsx +67 -0
- package/src/ConfirmDeleteForm/__snapshots__/{ConfirmDeleteForm.test.js.snap → ConfirmDeleteForm.test.tsx.snap} +2 -2
- package/src/DatePickerInput/DatePickerInput.test.tsx +48 -0
- package/src/DatePickerInput/DatePickerInput.tsx +85 -0
- package/src/DatePickerInput/__snapshots__/DatePickerInput.test.tsx.snap +151 -0
- package/src/Field/CustomFieldInputProps.ts +10 -0
- package/src/Field/CustomFieldMetaProps.ts +5 -0
- package/src/Field/Field.tsx +90 -0
- package/src/Field/FieldErrorScrollTarget.tsx +11 -0
- package/src/Field/FieldNameContext.ts +6 -0
- package/src/Field/FieldSection.tsx +18 -0
- package/src/Field/InjectedFieldProps.ts +8 -0
- package/src/Field/useStandardField.ts +121 -0
- package/src/FieldArray/FieldArray.tsx +133 -0
- package/src/File/FileGroup.test.tsx +35 -0
- package/src/File/FileGroup.tsx +71 -0
- package/src/File/FileList.tsx +19 -0
- package/src/File/__snapshots__/FileGroup.test.tsx.snap +32 -0
- package/src/File/humanFileSize.ts +8 -0
- package/src/Form/{FocusError.js → FocusError.tsx} +10 -6
- package/src/Form/Form.test.tsx +14 -0
- package/src/Form/{Form.js → Form.tsx} +71 -31
- package/src/Form/FormBasedPreventNavigation.tsx +74 -0
- package/src/Form/ServerErrorContext.ts +17 -0
- package/src/Form/__snapshots__/{Form.test.js.snap → Form.test.tsx.snap} +1 -1
- package/src/FormActions.tsx +34 -0
- package/src/Group.tsx +43 -0
- package/src/Input/IconInputGroup.tsx +48 -0
- package/src/Input/InputGroup.tsx +57 -0
- package/src/Input/MoneyInputGroup.tsx +44 -0
- package/src/Input/NumberInputGroup.tsx +42 -0
- package/src/Input/StringInputGroup.tsx +40 -0
- package/src/Input/__Tests__/IconInputGroup.test.tsx +35 -0
- package/src/Input/__Tests__/MoneyInputGroup.test.tsx +37 -0
- package/src/Input/__Tests__/NumberInputGroup.test.tsx +35 -0
- package/src/Input/__Tests__/StringInputGroup.test.tsx +27 -0
- package/src/Input/__Tests__/__snapshots__/IconInputGroup.test.tsx.snap +29 -0
- package/src/Input/__Tests__/__snapshots__/MoneyInputGroup.test.tsx.snap +31 -0
- package/src/Input/__Tests__/__snapshots__/NumberInputGroup.test.tsx.snap +29 -0
- package/src/Input/__Tests__/__snapshots__/StringInputGroup.test.tsx.snap +28 -0
- package/src/Normalization/NormalizationFunction.ts +4 -0
- package/src/{normalizers.js → Normalization/normalizers.ts} +5 -5
- package/src/Select/BooleanSelectGroup.tsx +27 -0
- package/src/Select/NumberSelectGroup.tsx +14 -0
- package/src/Select/SelectGroup.tsx +106 -0
- package/src/Select/SelectGroupPropsHelper.ts +4 -0
- package/src/Select/StringSelectGroup.tsx +14 -0
- package/src/Select/__tests__/BooleanSelectGroup.test.tsx +35 -0
- package/src/Select/__tests__/NumberSelectGroup.test.tsx +87 -0
- package/src/Select/__tests__/StringSelectGroup.test.tsx +89 -0
- package/src/Select/__tests__/__snapshots__/BooleanSelectGroup.test.tsx.snap +99 -0
- package/src/Select/__tests__/__snapshots__/NumberSelectGroup.test.tsx.snap +197 -0
- package/src/Select/__tests__/__snapshots__/StringSelectGroup.test.tsx.snap +197 -0
- package/src/{StandardFormActions.js → StandardFormActions.tsx} +12 -6
- package/src/SubmitFormButton.tsx +44 -0
- package/src/Validation/ValidatedApiResult.ts +8 -0
- package/src/Validation/ValidationError.ts +6 -0
- package/src/Validation/ValidationFunction.ts +4 -0
- package/src/{validators/validators.test.js → Validation/validators.test.tsx} +6 -4
- package/src/Validation/validators.ts +92 -0
- package/src/__Tests__/FormTestBase.tsx +63 -0
- package/src/__Tests__/{StandardFormActions.test.js → StandardFormActions.test.tsx} +2 -8
- package/src/__Tests__/{SubmitFormButton.test.js → SubmitFormButton.test.tsx} +2 -8
- package/src/__Tests__/__snapshots__/{StandardFormActions.test.js.snap → StandardFormActions.test.tsx.snap} +2 -2
- package/src/__Tests__/__snapshots__/{SubmitFormButton.test.js.snap → SubmitFormButton.test.tsx.snap} +1 -1
- package/src/__Tests__/index.ts +3 -0
- package/src/index.ts +114 -0
- package/src/react-app-env.d.ts +1 -0
- package/src/styles.scss +0 -7
- package/src/utils/{objectContainsNonSerializableProperty.test.js → objectContainsNonSerializableProperty.test.tsx} +0 -0
- package/src/utils/{objectContainsNonSerializableProperty.js → objectContainsNonSerializableProperty.ts} +4 -2
- package/src/utils/{objectToFormData.test.js → objectToFormData.test.tsx} +0 -0
- package/src/utils/{objectToFormData.js → objectToFormData.ts} +29 -13
- package/src/utils/typeChecks.ts +18 -0
- package/es/AddressInput/index.js +0 -3
- package/es/BoolInput/BoolInput.js +0 -10
- package/es/BoolInput/InlineBoolInput.js +0 -10
- package/es/BoolInput/boolOptions.js +0 -8
- package/es/BoolInput/index.js +0 -3
- package/es/ConfirmBaseForm/index.js +0 -2
- package/es/ConfirmDeleteForm/index.js +0 -2
- package/es/DatePickerInput/index.js +0 -2
- package/es/ErrorScrollTarget.js +0 -10
- package/es/FileInput/DefaultFileList.js +0 -36
- package/es/FileInput/DropzoneFileInput.js +0 -58
- package/es/FileInput/FileInput.js +0 -62
- package/es/FileInput/index.js +0 -4
- package/es/Form/index.js +0 -5
- package/es/FormGroup.js +0 -22
- package/es/FormGroupWrapper.js +0 -22
- package/es/FormInput/FormInput.js +0 -212
- package/es/FormInput/index.js +0 -2
- package/es/FormInputArray/FormInputArray.js +0 -225
- package/es/FormInputArray/index.js +0 -2
- package/es/FormSection.js +0 -11
- package/es/IconInput.js +0 -33
- package/es/InlineFormInput/InlineFormInput.js +0 -8
- package/es/InlineFormInput/index.js +0 -2
- package/es/MoneyFormattedInput/MoneyFormattedInput.js +0 -106
- package/es/MoneyFormattedInput/index.js +0 -2
- package/es/MoneyInput/InlineMoneyInput.js +0 -7
- package/es/MoneyInput/MoneyInput.js +0 -7
- package/es/MoneyInput/index.js +0 -3
- package/es/MoneyInput/moneyInputProps.js +0 -13
- package/es/NestedFormFieldContext.js +0 -4
- package/es/ReactSelectField/ReactSelectField.js +0 -162
- package/es/ReactSelectField/index.js +0 -2
- package/es/normalizers.js +0 -39
- package/es/selectors.js +0 -6
- package/es/useStandardFormInput.js +0 -119
- package/es/utils/index.js +0 -3
- package/es/validators/index.js +0 -2
- package/es/validators/validators.js +0 -94
- package/lib/AddressInput/index.js +0 -23
- package/lib/BoolInput/BoolInput.js +0 -23
- package/lib/BoolInput/InlineBoolInput.js +0 -23
- package/lib/BoolInput/boolOptions.js +0 -15
- package/lib/BoolInput/index.js +0 -23
- package/lib/ConfirmBaseForm/index.js +0 -13
- package/lib/ConfirmDeleteForm/index.js +0 -13
- package/lib/DatePickerInput/index.js +0 -13
- package/lib/ErrorScrollTarget.js +0 -20
- package/lib/FileInput/DefaultFileList.js +0 -47
- package/lib/FileInput/DropzoneFileInput.js +0 -75
- package/lib/FileInput/FileInput.js +0 -82
- package/lib/FileInput/index.js +0 -31
- package/lib/Form/index.js +0 -39
- package/lib/FormGroup.js +0 -33
- package/lib/FormGroupWrapper.js +0 -37
- package/lib/FormInput/FormInput.js +0 -236
- package/lib/FormInput/index.js +0 -13
- package/lib/FormInputArray/FormInputArray.js +0 -248
- package/lib/FormInputArray/index.js +0 -13
- package/lib/FormSection.js +0 -28
- package/lib/IconInput.js +0 -51
- package/lib/InlineFormInput/InlineFormInput.js +0 -20
- package/lib/InlineFormInput/index.js +0 -13
- package/lib/MoneyFormattedInput/MoneyFormattedInput.js +0 -126
- package/lib/MoneyFormattedInput/index.js +0 -15
- package/lib/MoneyInput/InlineMoneyInput.js +0 -20
- package/lib/MoneyInput/MoneyInput.js +0 -20
- package/lib/MoneyInput/index.js +0 -23
- package/lib/MoneyInput/moneyInputProps.js +0 -26
- package/lib/NestedFormFieldContext.js +0 -16
- package/lib/ReactSelectField/ReactSelectField.js +0 -187
- package/lib/ReactSelectField/index.js +0 -31
- package/lib/normalizers.js +0 -51
- package/lib/selectors.js +0 -18
- package/lib/useStandardFormInput.js +0 -135
- package/lib/utils/index.js +0 -23
- package/lib/validators/index.js +0 -17
- package/lib/validators/validators.js +0 -130
- package/src/AddressInput/AddressInput.js +0 -73
- package/src/AddressInput/__snapshots__/AddesssInput.test.js.snap +0 -207
- package/src/AddressInput/index.js +0 -3
- package/src/BoolInput/BoolInput.js +0 -7
- package/src/BoolInput/BoolInput.test.js +0 -23
- package/src/BoolInput/InlineBoolInput.js +0 -7
- package/src/BoolInput/__snapshots__/BoolInput.test.js.snap +0 -89
- package/src/BoolInput/boolOptions.js +0 -6
- package/src/BoolInput/index.js +0 -4
- package/src/ConfirmBaseForm/ConfirmBaseForm.js +0 -37
- package/src/ConfirmBaseForm/ConfirmBaseForm.test.js +0 -14
- package/src/ConfirmBaseForm/index.js +0 -2
- package/src/ConfirmDeleteForm/ConfirmDeleteForm.js +0 -39
- package/src/ConfirmDeleteForm/index.js +0 -2
- package/src/DatePickerInput/DatePickerInput.js +0 -49
- package/src/DatePickerInput/DatePickerInput.test.js +0 -74
- package/src/DatePickerInput/__snapshots__/DatePickerInput.test.js.snap +0 -134
- package/src/DatePickerInput/date-picker-input.scss +0 -42
- package/src/DatePickerInput/index.js +0 -3
- package/src/ErrorScrollTarget.js +0 -6
- package/src/FileInput/DefaultFileList.js +0 -39
- package/src/FileInput/DropzoneFileInput.js +0 -56
- package/src/FileInput/DropzoneFileInput.test.js +0 -24
- package/src/FileInput/FileInput.js +0 -77
- package/src/FileInput/FileInput.test.js +0 -24
- package/src/FileInput/__snapshots__/DropzoneFileInput.test.js.snap +0 -57
- package/src/FileInput/__snapshots__/FileInput.test.js.snap +0 -58
- package/src/FileInput/file-input.scss +0 -58
- package/src/FileInput/index.js +0 -5
- package/src/Form/Form.test.js +0 -23
- package/src/Form/FormBasedPreventNavigation.js +0 -25
- package/src/Form/ServerErrorContext.js +0 -7
- package/src/Form/index.js +0 -11
- package/src/FormGroup.js +0 -30
- package/src/FormGroupWrapper.js +0 -28
- package/src/FormInput/FormInput.js +0 -148
- package/src/FormInput/FormInput.test.js +0 -66
- package/src/FormInput/__snapshots__/FormInput.test.js.snap +0 -323
- package/src/FormInput/form-input.scss +0 -9
- package/src/FormInput/index.js +0 -2
- package/src/FormInputArray/FormInputArray.js +0 -224
- package/src/FormInputArray/FormInputArray.test.js +0 -108
- package/src/FormInputArray/__snapshots__/FormInputArray.test.js.snap +0 -52
- package/src/FormInputArray/form-input-array.scss +0 -13
- package/src/FormInputArray/index.js +0 -2
- package/src/FormSection.js +0 -13
- package/src/IconInput.js +0 -31
- package/src/InlineFormInput/InlineFormInput.js +0 -6
- package/src/InlineFormInput/InlineFormInput.test.js +0 -23
- package/src/InlineFormInput/__snapshots__/InlineFormInput.test.js.snap +0 -26
- package/src/InlineFormInput/index.js +0 -3
- package/src/InlineFormInput/inline-form-input.scss +0 -3
- package/src/MoneyFormattedInput/MoneyFormattedInput.js +0 -115
- package/src/MoneyFormattedInput/index.js +0 -3
- package/src/MoneyInput/InlineMoneyInput.js +0 -7
- package/src/MoneyInput/MoneyInput.js +0 -7
- package/src/MoneyInput/MoneyInputs.test.js +0 -43
- package/src/MoneyInput/__snapshots__/MoneyInputs.test.js.snap +0 -81
- package/src/MoneyInput/index.js +0 -4
- package/src/MoneyInput/money-input.scss +0 -3
- package/src/MoneyInput/moneyInputProps.js +0 -12
- package/src/NestedFormFieldContext.js +0 -6
- package/src/ReactSelectField/ReactSelectField.js +0 -155
- package/src/ReactSelectField/index.js +0 -6
- package/src/ReactSelectField/react-select-field.scss +0 -5
- package/src/SubmitFormButton.js +0 -28
- package/src/__Tests__/FormTestBase.js +0 -14
- package/src/__Tests__/IconInput.test.js +0 -23
- package/src/__Tests__/__snapshots__/IconInput.test.js.snap +0 -38
- package/src/index.js +0 -70
- package/src/selectors.js +0 -3
- package/src/useStandardFormInput.js +0 -118
- package/src/utils/index.js +0 -3
- package/src/utils/typeChecks.js +0 -18
- package/src/validators/index.js +0 -2
- package/src/validators/validators.js +0 -93
@@ -1,135 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports["default"] = useStandardFormInput;
|
9
|
-
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
11
|
-
|
12
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
13
|
-
|
14
|
-
var _formik = require("formik");
|
15
|
-
|
16
|
-
var _react = require("react");
|
17
|
-
|
18
|
-
var _NestedFormFieldContext = _interopRequireDefault(require("./NestedFormFieldContext"));
|
19
|
-
|
20
|
-
var _Form = require("./Form");
|
21
|
-
|
22
|
-
var _excluded = ["id", "name", "disabled", "validate", "normalize"],
|
23
|
-
_excluded2 = ["onChange", "value"];
|
24
|
-
|
25
|
-
// provides a consistent way to deal with all form fields (non array)
|
26
|
-
function useStandardFormInput(_ref) {
|
27
|
-
var providedId = _ref.id,
|
28
|
-
providedName = _ref.name,
|
29
|
-
disabled = _ref.disabled,
|
30
|
-
validate = _ref.validate,
|
31
|
-
normalize = _ref.normalize,
|
32
|
-
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
33
|
-
|
34
|
-
// because the formik errors are evaluated all at the same time we need to keep server errors separate
|
35
|
-
var _useContext = (0, _react.useContext)(_Form.ServerErrorContext),
|
36
|
-
getServerError = _useContext.getError,
|
37
|
-
setServerError = _useContext.setError; // ensure that form section values are obeyed, e.g. homeAddress.zipCode
|
38
|
-
|
39
|
-
|
40
|
-
var parentFormFieldContext = (0, _react.useContext)(_NestedFormFieldContext["default"]);
|
41
|
-
var name = parentFormFieldContext ? "".concat(parentFormFieldContext, ".").concat(providedName) : providedName; // ensure that nested contexts don't have duplicate id issues when an id is specified
|
42
|
-
|
43
|
-
var id = providedId && parentFormFieldContext ? "".concat(parentFormFieldContext, ".").concat(providedId) : providedId; // ensure that our custom validation rules are handled
|
44
|
-
// e.g. we allow arrays of validators
|
45
|
-
|
46
|
-
var _useField = (0, _formik.useField)(Object.assign({
|
47
|
-
name: name,
|
48
|
-
id: id
|
49
|
-
}, props, {
|
50
|
-
validate: callAllValidators
|
51
|
-
})),
|
52
|
-
_useField2 = (0, _slicedToArray2["default"])(_useField, 2),
|
53
|
-
_useField2$ = _useField2[0],
|
54
|
-
formikOnChange = _useField2$.onChange,
|
55
|
-
value = _useField2$.value,
|
56
|
-
formikProps = (0, _objectWithoutProperties2["default"])(_useField2$, _excluded2),
|
57
|
-
meta = _useField2[1];
|
58
|
-
|
59
|
-
var _useFormikContext = (0, _formik.useFormikContext)(),
|
60
|
-
setFieldValue = _useFormikContext.setFieldValue,
|
61
|
-
isSubmitting = _useFormikContext.isSubmitting; // these are the props we expect consumers of this hook to pass directly to the input (or other control)
|
62
|
-
|
63
|
-
|
64
|
-
var inputProps = Object.assign({}, props, formikProps, {
|
65
|
-
// ensure that we don't send a undefined / null - which signals to react that we are uncontrolled
|
66
|
-
// also, pass any direct from server props through normalize without making the form dirty (e.g. phone number)
|
67
|
-
value: value === undefined || value === null ? '' : normalize && normalize(value) || value,
|
68
|
-
// ensure the id is set if not provided
|
69
|
-
id: id ? id : name,
|
70
|
-
// ensure we can handle both events from direct inputs and controlled ones like react select AND normalize
|
71
|
-
onChange: handleChange,
|
72
|
-
onBlur: handleBlur,
|
73
|
-
disabled: disabled
|
74
|
-
});
|
75
|
-
(0, _react.useEffect)(function () {
|
76
|
-
if (!meta.touched && isSubmitting) {
|
77
|
-
// because we do not always register all fields up front.
|
78
|
-
// e.g. formik expects even a 'create' form to have all fields given, at least, blank values
|
79
|
-
// that seems to be how it touches on submit:
|
80
|
-
// see: https://codesandbox.io/s/formik-example-4n7n8 vs https://codesandbox.io/s/formik-example-kttk5
|
81
|
-
// note in particular the change in line 24
|
82
|
-
// thus, we manually touch all fields here by calling onBlur
|
83
|
-
// there is a "setFieldTouched" from useFormikContext but it doesn't appear to work on field arrays
|
84
|
-
handleBlur();
|
85
|
-
}
|
86
|
-
});
|
87
|
-
var resultMeta = Object.assign({}, meta, {
|
88
|
-
error: getServerError(name) || (meta.touched ? meta.error : null)
|
89
|
-
});
|
90
|
-
return [inputProps, resultMeta];
|
91
|
-
|
92
|
-
function handleBlur(e) {
|
93
|
-
// some components are fully controlled and do not return synthetic events on blur
|
94
|
-
if (!e || !e.target) {
|
95
|
-
formikProps.onBlur({
|
96
|
-
target: {
|
97
|
-
name: name
|
98
|
-
}
|
99
|
-
});
|
100
|
-
} else {
|
101
|
-
formikProps.onBlur(e);
|
102
|
-
}
|
103
|
-
}
|
104
|
-
|
105
|
-
function handleChange(e) {
|
106
|
-
if (disabled) {
|
107
|
-
return;
|
108
|
-
} // some components are fully controlled and do not return synthetic events (e.g. ReactSelect) on change
|
109
|
-
// we should handle all our normal cases here to normalize / get the value / etc
|
110
|
-
|
111
|
-
|
112
|
-
var value = e && e.target ? e.target.type === 'checkbox' ? e.target.checked : e.target.value : e;
|
113
|
-
var normalized = normalize ? normalize(value) : value;
|
114
|
-
setFieldValue(name, normalized);
|
115
|
-
setServerError(name, null);
|
116
|
-
}
|
117
|
-
|
118
|
-
function callAllValidators(value) {
|
119
|
-
if (disabled || !validate) {
|
120
|
-
return;
|
121
|
-
}
|
122
|
-
|
123
|
-
if (!Array.isArray(validate)) {
|
124
|
-
return validate(value);
|
125
|
-
}
|
126
|
-
|
127
|
-
for (var i = 0; i < validate.length; i++) {
|
128
|
-
var result = validate[i](value);
|
129
|
-
|
130
|
-
if (result) {
|
131
|
-
return result;
|
132
|
-
}
|
133
|
-
}
|
134
|
-
}
|
135
|
-
}
|
package/lib/utils/index.js
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
Object.defineProperty(exports, "objectToFormData", {
|
9
|
-
enumerable: true,
|
10
|
-
get: function get() {
|
11
|
-
return _objectToFormData["default"];
|
12
|
-
}
|
13
|
-
});
|
14
|
-
Object.defineProperty(exports, "objectContainsNonSerializableProperty", {
|
15
|
-
enumerable: true,
|
16
|
-
get: function get() {
|
17
|
-
return _objectContainsNonSerializableProperty["default"];
|
18
|
-
}
|
19
|
-
});
|
20
|
-
|
21
|
-
var _objectToFormData = _interopRequireDefault(require("./objectToFormData"));
|
22
|
-
|
23
|
-
var _objectContainsNonSerializableProperty = _interopRequireDefault(require("./objectContainsNonSerializableProperty"));
|
package/lib/validators/index.js
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports["default"] = void 0;
|
9
|
-
|
10
|
-
var validators = _interopRequireWildcard(require("./validators"));
|
11
|
-
|
12
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
13
|
-
|
14
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
15
|
-
|
16
|
-
var _default = validators;
|
17
|
-
exports["default"] = _default;
|
@@ -1,130 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.maxCount = maxCount;
|
9
|
-
exports.minCount = minCount;
|
10
|
-
exports.any = exports.zipCode = exports.minValue = exports.maxValue = exports.maxLength = exports.integer = exports.length = exports.required = void 0;
|
11
|
-
|
12
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
13
|
-
|
14
|
-
var required = function required(value) {
|
15
|
-
return value || value === false || value === 0 ? undefined : 'Required';
|
16
|
-
}; //asserts that the value is a certain number of characters. numbers are coerced to a string
|
17
|
-
|
18
|
-
|
19
|
-
exports.required = required;
|
20
|
-
|
21
|
-
var length = function length(len) {
|
22
|
-
return function (value) {
|
23
|
-
var val = value;
|
24
|
-
var type = (0, _typeof2["default"])(val);
|
25
|
-
|
26
|
-
switch (type) {
|
27
|
-
case 'undefined':
|
28
|
-
return undefined;
|
29
|
-
|
30
|
-
case 'string':
|
31
|
-
break;
|
32
|
-
|
33
|
-
case 'number':
|
34
|
-
val = val.toString();
|
35
|
-
break;
|
36
|
-
|
37
|
-
default:
|
38
|
-
console.error("Invalid value type: ".concat(type, " passed to length validator"));
|
39
|
-
}
|
40
|
-
|
41
|
-
return val.length === len ? undefined : "Length must be ".concat(len);
|
42
|
-
};
|
43
|
-
};
|
44
|
-
|
45
|
-
exports.length = length;
|
46
|
-
|
47
|
-
var integer = function integer(val) {
|
48
|
-
if (!Number.isInteger(parseFloat(val))) {
|
49
|
-
return 'Must be a whole number';
|
50
|
-
}
|
51
|
-
};
|
52
|
-
|
53
|
-
exports.integer = integer;
|
54
|
-
|
55
|
-
var maxLength = function maxLength(length) {
|
56
|
-
return function (value) {
|
57
|
-
if (value) {
|
58
|
-
return value.length <= length ? undefined : "Maximum length ".concat(length, " exceeded");
|
59
|
-
} else {
|
60
|
-
return undefined;
|
61
|
-
}
|
62
|
-
};
|
63
|
-
};
|
64
|
-
|
65
|
-
exports.maxLength = maxLength;
|
66
|
-
|
67
|
-
function maxCount(count) {
|
68
|
-
return function (value) {
|
69
|
-
return !value || value.filter(function (x) {
|
70
|
-
return !x.isDeleted;
|
71
|
-
}).length <= count ? undefined : "Should not have more than ".concat(count);
|
72
|
-
};
|
73
|
-
}
|
74
|
-
|
75
|
-
function minCount(count) {
|
76
|
-
return function (value) {
|
77
|
-
return value && value.filter(function (x) {
|
78
|
-
return !x.isDeleted;
|
79
|
-
}).length >= count ? undefined : "Should have at least ".concat(count);
|
80
|
-
};
|
81
|
-
}
|
82
|
-
|
83
|
-
var maxValue = function maxValue(value) {
|
84
|
-
return function (inputValue) {
|
85
|
-
if (inputValue != null && value != null) {
|
86
|
-
return inputValue <= value ? undefined : "Maximum value ".concat(value, " exceeded");
|
87
|
-
} else {
|
88
|
-
return undefined;
|
89
|
-
}
|
90
|
-
};
|
91
|
-
};
|
92
|
-
|
93
|
-
exports.maxValue = maxValue;
|
94
|
-
|
95
|
-
var minValue = function minValue(value) {
|
96
|
-
return function (inputValue) {
|
97
|
-
if (inputValue != null && value != null) {
|
98
|
-
return inputValue >= value ? undefined : "Minimum value ".concat(value, " not met");
|
99
|
-
} else {
|
100
|
-
return undefined;
|
101
|
-
}
|
102
|
-
};
|
103
|
-
};
|
104
|
-
|
105
|
-
exports.minValue = minValue;
|
106
|
-
|
107
|
-
var zipCode = function zipCode(value) {
|
108
|
-
return value && !/^[0-9]{5}(?:-[0-9]{4})?$/.test(value) ? 'Invalid ZIP Code' : undefined;
|
109
|
-
}; //one of the validators provided must be true
|
110
|
-
|
111
|
-
|
112
|
-
exports.zipCode = zipCode;
|
113
|
-
|
114
|
-
var any = function any() {
|
115
|
-
for (var _len = arguments.length, validatorList = new Array(_len), _key = 0; _key < _len; _key++) {
|
116
|
-
validatorList[_key] = arguments[_key];
|
117
|
-
}
|
118
|
-
|
119
|
-
return function (value) {
|
120
|
-
if (validatorList.length === 0 || !value) {
|
121
|
-
return;
|
122
|
-
}
|
123
|
-
|
124
|
-
return validatorList.reduce(function (isAnyTrue, any) {
|
125
|
-
return isAnyTrue ? isAnyTrue : any(value);
|
126
|
-
}, false);
|
127
|
-
};
|
128
|
-
};
|
129
|
-
|
130
|
-
exports.any = any;
|
@@ -1,73 +0,0 @@
|
|
1
|
-
import React from 'react';
|
2
|
-
import { Col, Row } from 'reactstrap';
|
3
|
-
import PropTypes from 'prop-types';
|
4
|
-
import FormInput from '../FormInput';
|
5
|
-
import FormSection from '../FormSection';
|
6
|
-
import validators from '../validators';
|
7
|
-
import * as normalizers from '../normalizers';
|
8
|
-
import UsStates from './UsStates';
|
9
|
-
|
10
|
-
export default class AddressInput extends React.Component {
|
11
|
-
render() {
|
12
|
-
const { name, ...props } = this.props;
|
13
|
-
return (
|
14
|
-
<FormSection name={name} {...props}>
|
15
|
-
<FormInput
|
16
|
-
name="address1"
|
17
|
-
placeholder="Address, Line 1"
|
18
|
-
label="Address 1"
|
19
|
-
autoComplete="address-line1"
|
20
|
-
validate={validators.required}
|
21
|
-
/>
|
22
|
-
<FormInput
|
23
|
-
name="address2"
|
24
|
-
placeholder="Address, Line 2"
|
25
|
-
label="Address 2"
|
26
|
-
autoComplete="address-line2"
|
27
|
-
/>
|
28
|
-
<FormInput
|
29
|
-
name="city"
|
30
|
-
placeholder="City"
|
31
|
-
label="City"
|
32
|
-
autoComplete="address-level2"
|
33
|
-
validate={validators.required}
|
34
|
-
/>
|
35
|
-
<Row>
|
36
|
-
<Col xs={8}>
|
37
|
-
<FormInput
|
38
|
-
name="state"
|
39
|
-
placeholder="State"
|
40
|
-
label="State"
|
41
|
-
type="select"
|
42
|
-
options={UsStates}
|
43
|
-
autoComplete="address-level1"
|
44
|
-
validate={validators.required}
|
45
|
-
/>
|
46
|
-
</Col>
|
47
|
-
<Col xs={4}>
|
48
|
-
<FormInput
|
49
|
-
name="zipCode"
|
50
|
-
placeholder="Zip"
|
51
|
-
label="Zip"
|
52
|
-
autoComplete="postal-code"
|
53
|
-
normalize={normalizers.zipCode}
|
54
|
-
validate={[validators.required, validators.zipCode]}
|
55
|
-
/>
|
56
|
-
</Col>
|
57
|
-
</Row>
|
58
|
-
</FormSection>
|
59
|
-
);
|
60
|
-
}
|
61
|
-
}
|
62
|
-
AddressInput.propTypes = {
|
63
|
-
/**
|
64
|
-
* The key that the resulting values should be nested under within the form values.
|
65
|
-
* If name prop were chicken the submitted form values would look like: {chicken: {address1:...}}
|
66
|
-
* this allows us to have two address inputs inside the same form (shipping and billing address)
|
67
|
-
*/
|
68
|
-
name: PropTypes.string,
|
69
|
-
};
|
70
|
-
|
71
|
-
AddressInput.defaultProps = {
|
72
|
-
name: 'address',
|
73
|
-
};
|
@@ -1,207 +0,0 @@
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
2
|
-
|
3
|
-
exports[`AddressInput has matching snapshot 1`] = `
|
4
|
-
<DocumentFragment>
|
5
|
-
<form
|
6
|
-
action="#"
|
7
|
-
>
|
8
|
-
<div
|
9
|
-
class="form-group"
|
10
|
-
>
|
11
|
-
<label
|
12
|
-
class=""
|
13
|
-
for="address.address1"
|
14
|
-
>
|
15
|
-
Address 1
|
16
|
-
</label>
|
17
|
-
<div
|
18
|
-
id="address.address1-error-scroll-target"
|
19
|
-
style="display: none;"
|
20
|
-
/>
|
21
|
-
<input
|
22
|
-
aria-invalid="false"
|
23
|
-
autocomplete="address-line1"
|
24
|
-
class="form-control"
|
25
|
-
id="address.address1"
|
26
|
-
label="Address 1"
|
27
|
-
name="address.address1"
|
28
|
-
placeholder="Address, Line 1"
|
29
|
-
type="text"
|
30
|
-
value=""
|
31
|
-
/>
|
32
|
-
</div>
|
33
|
-
<div
|
34
|
-
class="form-group"
|
35
|
-
>
|
36
|
-
<label
|
37
|
-
class=""
|
38
|
-
for="address.address2"
|
39
|
-
>
|
40
|
-
Address 2
|
41
|
-
</label>
|
42
|
-
<div
|
43
|
-
id="address.address2-error-scroll-target"
|
44
|
-
style="display: none;"
|
45
|
-
/>
|
46
|
-
<input
|
47
|
-
aria-invalid="false"
|
48
|
-
autocomplete="address-line2"
|
49
|
-
class="form-control"
|
50
|
-
id="address.address2"
|
51
|
-
label="Address 2"
|
52
|
-
name="address.address2"
|
53
|
-
placeholder="Address, Line 2"
|
54
|
-
type="text"
|
55
|
-
value=""
|
56
|
-
/>
|
57
|
-
</div>
|
58
|
-
<div
|
59
|
-
class="form-group"
|
60
|
-
>
|
61
|
-
<label
|
62
|
-
class=""
|
63
|
-
for="address.city"
|
64
|
-
>
|
65
|
-
City
|
66
|
-
</label>
|
67
|
-
<div
|
68
|
-
id="address.city-error-scroll-target"
|
69
|
-
style="display: none;"
|
70
|
-
/>
|
71
|
-
<input
|
72
|
-
aria-invalid="false"
|
73
|
-
autocomplete="address-level2"
|
74
|
-
class="form-control"
|
75
|
-
id="address.city"
|
76
|
-
label="City"
|
77
|
-
name="address.city"
|
78
|
-
placeholder="City"
|
79
|
-
type="text"
|
80
|
-
value=""
|
81
|
-
/>
|
82
|
-
</div>
|
83
|
-
<div
|
84
|
-
class="row"
|
85
|
-
>
|
86
|
-
<div
|
87
|
-
class="col-8"
|
88
|
-
>
|
89
|
-
<div
|
90
|
-
class="form-group"
|
91
|
-
>
|
92
|
-
<label
|
93
|
-
class=""
|
94
|
-
for="address.state"
|
95
|
-
>
|
96
|
-
State
|
97
|
-
</label>
|
98
|
-
<div
|
99
|
-
id="address.state-error-scroll-target"
|
100
|
-
style="display: none;"
|
101
|
-
/>
|
102
|
-
<div
|
103
|
-
class="react-select-input css-2b097c-container"
|
104
|
-
id="address.state"
|
105
|
-
>
|
106
|
-
<div
|
107
|
-
class=" css-150ye8w-control"
|
108
|
-
>
|
109
|
-
<div
|
110
|
-
class=" css-lbak6p-Component"
|
111
|
-
>
|
112
|
-
<div
|
113
|
-
class=" css-1vk4ta-placeholder"
|
114
|
-
>
|
115
|
-
State
|
116
|
-
</div>
|
117
|
-
<div
|
118
|
-
class="css-lp83hw-Component"
|
119
|
-
>
|
120
|
-
<div
|
121
|
-
class=""
|
122
|
-
style="display: inline-block;"
|
123
|
-
>
|
124
|
-
<input
|
125
|
-
aria-autocomplete="list"
|
126
|
-
autocapitalize="none"
|
127
|
-
autocomplete="off"
|
128
|
-
autocorrect="off"
|
129
|
-
id="react-select-3-input"
|
130
|
-
spellcheck="false"
|
131
|
-
style="box-sizing: content-box; width: 2px; border: 0px; opacity: 1; outline: 0; padding: 0px;"
|
132
|
-
tabindex="0"
|
133
|
-
type="text"
|
134
|
-
value=""
|
135
|
-
/>
|
136
|
-
<div
|
137
|
-
style="position: absolute; top: 0px; left: 0px; visibility: hidden; height: 0px; overflow: scroll; white-space: pre; font-family: -webkit-small-control; letter-spacing: normal; text-transform: none;"
|
138
|
-
/>
|
139
|
-
</div>
|
140
|
-
</div>
|
141
|
-
</div>
|
142
|
-
<div
|
143
|
-
class=" css-ny0e4k-Component"
|
144
|
-
>
|
145
|
-
<span
|
146
|
-
class=" css-1sl80az-indicatorSeparator"
|
147
|
-
/>
|
148
|
-
<div
|
149
|
-
aria-hidden="true"
|
150
|
-
class=" css-augegj-indicatorContainer"
|
151
|
-
>
|
152
|
-
<svg
|
153
|
-
aria-hidden="true"
|
154
|
-
class="css-7ezgaa-Component"
|
155
|
-
focusable="false"
|
156
|
-
height="20"
|
157
|
-
viewBox="0 0 20 20"
|
158
|
-
width="20"
|
159
|
-
>
|
160
|
-
<path
|
161
|
-
d="M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"
|
162
|
-
/>
|
163
|
-
</svg>
|
164
|
-
</div>
|
165
|
-
</div>
|
166
|
-
</div>
|
167
|
-
<input
|
168
|
-
name="address.state"
|
169
|
-
type="hidden"
|
170
|
-
value=""
|
171
|
-
/>
|
172
|
-
</div>
|
173
|
-
</div>
|
174
|
-
</div>
|
175
|
-
<div
|
176
|
-
class="col-4"
|
177
|
-
>
|
178
|
-
<div
|
179
|
-
class="form-group"
|
180
|
-
>
|
181
|
-
<label
|
182
|
-
class=""
|
183
|
-
for="address.zipCode"
|
184
|
-
>
|
185
|
-
Zip
|
186
|
-
</label>
|
187
|
-
<div
|
188
|
-
id="address.zipcode-error-scroll-target"
|
189
|
-
style="display: none;"
|
190
|
-
/>
|
191
|
-
<input
|
192
|
-
aria-invalid="false"
|
193
|
-
autocomplete="postal-code"
|
194
|
-
class="form-control"
|
195
|
-
id="address.zipCode"
|
196
|
-
label="Zip"
|
197
|
-
name="address.zipCode"
|
198
|
-
placeholder="Zip"
|
199
|
-
type="text"
|
200
|
-
value=""
|
201
|
-
/>
|
202
|
-
</div>
|
203
|
-
</div>
|
204
|
-
</div>
|
205
|
-
</form>
|
206
|
-
</DocumentFragment>
|
207
|
-
`;
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import React from 'react';
|
2
|
-
import { render } from '@testing-library/react';
|
3
|
-
import { FormTestBase } from '../__Tests__';
|
4
|
-
import BoolInput from './BoolInput';
|
5
|
-
|
6
|
-
describe('BoolInput', () => {
|
7
|
-
it('renders without crashing', () => {
|
8
|
-
render(
|
9
|
-
<FormTestBase>
|
10
|
-
<BoolInput name="yesNo" />
|
11
|
-
</FormTestBase>
|
12
|
-
);
|
13
|
-
});
|
14
|
-
|
15
|
-
it('has matching snapshot', () => {
|
16
|
-
const renderResult = render(
|
17
|
-
<FormTestBase>
|
18
|
-
<BoolInput name="yesNo" />
|
19
|
-
</FormTestBase>
|
20
|
-
);
|
21
|
-
expect(renderResult.asFragment()).toMatchSnapshot();
|
22
|
-
});
|
23
|
-
});
|