envoc-form 3.2.0 → 4.0.1-1

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.
Files changed (449) hide show
  1. package/README.md +10 -1
  2. package/dist/css/envoc-form-styles.css +0 -113
  3. package/dist/css/envoc-form-styles.css.map +1 -1
  4. package/es/AddressInput/AddressInput.d.ts +15 -0
  5. package/es/AddressInput/AddressInput.js +21 -97
  6. package/es/AddressInput/UsStates.d.ts +3 -0
  7. package/es/AddressInput/UsStates.js +53 -152
  8. package/es/ConfirmBaseForm/ConfirmBaseForm.d.ts +10 -0
  9. package/es/ConfirmBaseForm/ConfirmBaseForm.js +35 -43
  10. package/es/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +11 -0
  11. package/es/ConfirmDeleteForm/ConfirmDeleteForm.js +54 -40
  12. package/es/DatePicker/DateOnlyDatePickerGroup.d.ts +10 -0
  13. package/es/DatePicker/DateOnlyDatePickerGroup.js +23 -0
  14. package/es/DatePicker/DatePickerGroup.d.ts +8 -0
  15. package/es/DatePicker/DatePickerGroup.js +60 -0
  16. package/es/DatePicker/DatePickerHelper.d.ts +3 -0
  17. package/es/DatePicker/DatePickerHelper.js +1 -0
  18. package/es/DatePicker/StringDatePickerGroup.d.ts +5 -0
  19. package/es/DatePicker/StringDatePickerGroup.js +19 -0
  20. package/es/Field/CustomFieldInputProps.d.ts +7 -0
  21. package/es/Field/CustomFieldInputProps.js +1 -0
  22. package/es/Field/CustomFieldMetaProps.d.ts +4 -0
  23. package/es/Field/CustomFieldMetaProps.js +1 -0
  24. package/es/Field/Field.d.ts +22 -0
  25. package/es/Field/Field.js +46 -0
  26. package/es/Field/FieldErrorScrollTarget.d.ts +2 -0
  27. package/es/Field/FieldErrorScrollTarget.js +11 -0
  28. package/es/Field/FieldNameContext.d.ts +3 -0
  29. package/es/Field/FieldNameContext.js +3 -0
  30. package/es/Field/FieldSection.d.ts +7 -0
  31. package/es/Field/FieldSection.js +20 -0
  32. package/es/Field/InjectedFieldProps.d.ts +7 -0
  33. package/es/Field/InjectedFieldProps.js +1 -0
  34. package/es/Field/StandAloneInput.d.ts +9 -0
  35. package/es/Field/StandAloneInput.js +49 -0
  36. package/es/Field/useStandardField.d.ts +15 -0
  37. package/es/Field/useStandardField.js +93 -0
  38. package/es/FieldArray/FieldArray.d.ts +15 -0
  39. package/es/FieldArray/FieldArray.js +80 -0
  40. package/es/File/FileGroup.d.ts +8 -0
  41. package/es/File/FileGroup.js +50 -0
  42. package/es/File/FileList.d.ts +6 -0
  43. package/es/File/FileList.js +20 -0
  44. package/es/File/humanFileSize.d.ts +1 -0
  45. package/es/File/humanFileSize.js +6 -0
  46. package/es/Form/FocusError.d.ts +5 -0
  47. package/es/Form/FocusError.js +41 -53
  48. package/es/Form/Form.d.ts +22 -0
  49. package/es/Form/Form.js +111 -125
  50. package/es/Form/FormBasedPreventNavigation.d.ts +5 -0
  51. package/es/Form/FormBasedPreventNavigation.js +53 -30
  52. package/es/Form/ServerErrorContext.d.ts +10 -0
  53. package/es/Form/ServerErrorContext.js +8 -6
  54. package/es/FormActions.d.ts +7 -0
  55. package/es/FormActions.js +22 -0
  56. package/es/Group.d.ts +13 -0
  57. package/es/Group.js +22 -0
  58. package/es/Input/IconInputGroup.d.ts +9 -0
  59. package/es/Input/IconInputGroup.js +40 -0
  60. package/es/Input/InputGroup.d.ts +12 -0
  61. package/es/Input/InputGroup.js +33 -0
  62. package/es/Input/MoneyInputGroup.d.ts +7 -0
  63. package/es/Input/MoneyInputGroup.js +41 -0
  64. package/es/Input/NumberInputGroup.d.ts +7 -0
  65. package/es/Input/NumberInputGroup.js +41 -0
  66. package/es/Input/StringInputGroup.d.ts +7 -0
  67. package/es/Input/StringInputGroup.js +40 -0
  68. package/es/Normalization/NormalizationFunction.d.ts +4 -0
  69. package/es/Normalization/NormalizationFunction.js +1 -0
  70. package/es/Normalization/normalizers.d.ts +2 -0
  71. package/es/Normalization/normalizers.js +30 -0
  72. package/es/Select/BooleanSelectGroup.d.ts +7 -0
  73. package/es/Select/BooleanSelectGroup.js +27 -0
  74. package/es/Select/NumberSelectGroup.d.ts +8 -0
  75. package/es/Select/NumberSelectGroup.js +19 -0
  76. package/es/Select/SelectGroup.d.ts +22 -0
  77. package/es/Select/SelectGroup.js +59 -0
  78. package/es/Select/SelectGroupPropsHelper.d.ts +3 -0
  79. package/es/Select/SelectGroupPropsHelper.js +1 -0
  80. package/es/Select/StringSelectGroup.d.ts +8 -0
  81. package/es/Select/StringSelectGroup.js +19 -0
  82. package/es/StandardFormActions.d.ts +6 -0
  83. package/es/StandardFormActions.js +23 -24
  84. package/es/SubmitFormButton.d.ts +7 -0
  85. package/es/SubmitFormButton.js +37 -23
  86. package/es/TextArea/TextAreaGroup.d.ts +8 -0
  87. package/es/TextArea/TextAreaGroup.js +33 -0
  88. package/es/Validation/ValidatedApiResult.d.ts +6 -0
  89. package/es/Validation/ValidatedApiResult.js +1 -0
  90. package/es/Validation/ValidationError.d.ts +5 -0
  91. package/es/Validation/ValidationError.js +1 -0
  92. package/es/Validation/ValidationFunction.d.ts +4 -0
  93. package/es/Validation/ValidationFunction.js +1 -0
  94. package/es/Validation/validators.d.ts +15 -0
  95. package/es/Validation/validators.js +73 -0
  96. package/es/__Tests__/FormTestBase.d.ts +27 -0
  97. package/es/__Tests__/FormTestBase.js +83 -12
  98. package/{src/__Tests__/index.js → es/__Tests__/index.d.ts} +0 -0
  99. package/es/__Tests__/index.js +2 -2
  100. package/es/index.d.ts +71 -0
  101. package/es/index.js +47 -20
  102. package/es/utils/objectContainsNonSerializableProperty.d.ts +1 -0
  103. package/es/utils/objectContainsNonSerializableProperty.js +14 -16
  104. package/es/utils/objectToFormData.d.ts +10 -0
  105. package/es/utils/objectToFormData.js +77 -65
  106. package/es/utils/typeChecks.d.ts +8 -0
  107. package/es/utils/typeChecks.js +18 -25
  108. package/lib/AddressInput/AddressInput.d.ts +15 -0
  109. package/lib/AddressInput/AddressInput.js +27 -123
  110. package/lib/AddressInput/UsStates.d.ts +3 -0
  111. package/lib/AddressInput/UsStates.js +55 -159
  112. package/lib/ConfirmBaseForm/ConfirmBaseForm.d.ts +10 -0
  113. package/lib/ConfirmBaseForm/ConfirmBaseForm.js +41 -57
  114. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +11 -0
  115. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.js +60 -56
  116. package/lib/DatePicker/DateOnlyDatePickerGroup.d.ts +10 -0
  117. package/lib/DatePicker/DateOnlyDatePickerGroup.js +29 -0
  118. package/lib/DatePicker/DatePickerGroup.d.ts +8 -0
  119. package/lib/DatePicker/DatePickerGroup.js +66 -0
  120. package/lib/DatePicker/DatePickerHelper.d.ts +3 -0
  121. package/lib/DatePicker/DatePickerHelper.js +2 -0
  122. package/lib/DatePicker/StringDatePickerGroup.d.ts +5 -0
  123. package/lib/DatePicker/StringDatePickerGroup.js +25 -0
  124. package/lib/Field/CustomFieldInputProps.d.ts +7 -0
  125. package/lib/Field/CustomFieldInputProps.js +2 -0
  126. package/lib/Field/CustomFieldMetaProps.d.ts +4 -0
  127. package/lib/Field/CustomFieldMetaProps.js +2 -0
  128. package/lib/Field/Field.d.ts +22 -0
  129. package/lib/Field/Field.js +51 -0
  130. package/lib/Field/FieldErrorScrollTarget.d.ts +2 -0
  131. package/lib/Field/FieldErrorScrollTarget.js +14 -0
  132. package/lib/Field/FieldNameContext.d.ts +3 -0
  133. package/lib/Field/FieldNameContext.js +9 -0
  134. package/lib/Field/FieldSection.d.ts +7 -0
  135. package/lib/Field/FieldSection.js +23 -0
  136. package/lib/Field/InjectedFieldProps.d.ts +7 -0
  137. package/lib/Field/InjectedFieldProps.js +2 -0
  138. package/lib/Field/StandAloneInput.d.ts +9 -0
  139. package/lib/Field/StandAloneInput.js +75 -0
  140. package/lib/Field/useStandardField.d.ts +15 -0
  141. package/lib/Field/useStandardField.js +96 -0
  142. package/lib/FieldArray/FieldArray.d.ts +15 -0
  143. package/lib/FieldArray/FieldArray.js +86 -0
  144. package/lib/File/FileGroup.d.ts +8 -0
  145. package/lib/File/FileGroup.js +55 -0
  146. package/lib/File/FileList.d.ts +6 -0
  147. package/lib/File/FileList.js +23 -0
  148. package/lib/File/humanFileSize.d.ts +1 -0
  149. package/lib/File/humanFileSize.js +10 -0
  150. package/lib/Form/FocusError.d.ts +5 -0
  151. package/lib/Form/FocusError.js +47 -66
  152. package/lib/Form/Form.d.ts +22 -0
  153. package/lib/Form/Form.js +117 -153
  154. package/lib/Form/FormBasedPreventNavigation.d.ts +5 -0
  155. package/lib/Form/FormBasedPreventNavigation.js +56 -39
  156. package/lib/Form/ServerErrorContext.d.ts +10 -0
  157. package/lib/Form/ServerErrorContext.js +14 -18
  158. package/lib/FormActions.d.ts +7 -0
  159. package/lib/FormActions.js +28 -0
  160. package/lib/Group.d.ts +13 -0
  161. package/lib/Group.js +28 -0
  162. package/lib/Input/IconInputGroup.d.ts +9 -0
  163. package/lib/Input/IconInputGroup.js +45 -0
  164. package/lib/Input/InputGroup.d.ts +12 -0
  165. package/lib/Input/InputGroup.js +38 -0
  166. package/lib/Input/MoneyInputGroup.d.ts +7 -0
  167. package/lib/Input/MoneyInputGroup.js +46 -0
  168. package/lib/Input/NumberInputGroup.d.ts +7 -0
  169. package/lib/Input/NumberInputGroup.js +46 -0
  170. package/lib/Input/StringInputGroup.d.ts +7 -0
  171. package/lib/Input/StringInputGroup.js +45 -0
  172. package/lib/Normalization/NormalizationFunction.d.ts +4 -0
  173. package/lib/Normalization/NormalizationFunction.js +2 -0
  174. package/lib/Normalization/normalizers.d.ts +2 -0
  175. package/lib/Normalization/normalizers.js +35 -0
  176. package/lib/Select/BooleanSelectGroup.d.ts +7 -0
  177. package/lib/Select/BooleanSelectGroup.js +34 -0
  178. package/lib/Select/NumberSelectGroup.d.ts +8 -0
  179. package/lib/Select/NumberSelectGroup.js +27 -0
  180. package/lib/Select/SelectGroup.d.ts +22 -0
  181. package/lib/Select/SelectGroup.js +65 -0
  182. package/lib/Select/SelectGroupPropsHelper.d.ts +3 -0
  183. package/lib/Select/SelectGroupPropsHelper.js +2 -0
  184. package/lib/Select/StringSelectGroup.d.ts +8 -0
  185. package/lib/Select/StringSelectGroup.js +27 -0
  186. package/lib/StandardFormActions.d.ts +6 -0
  187. package/lib/StandardFormActions.js +29 -37
  188. package/lib/SubmitFormButton.d.ts +7 -0
  189. package/lib/SubmitFormButton.js +42 -38
  190. package/lib/TextArea/TextAreaGroup.d.ts +8 -0
  191. package/lib/TextArea/TextAreaGroup.js +38 -0
  192. package/lib/Validation/ValidatedApiResult.d.ts +6 -0
  193. package/lib/Validation/ValidatedApiResult.js +2 -0
  194. package/lib/Validation/ValidationError.d.ts +5 -0
  195. package/lib/Validation/ValidationError.js +2 -0
  196. package/lib/Validation/ValidationFunction.d.ts +4 -0
  197. package/lib/Validation/ValidationFunction.js +2 -0
  198. package/lib/Validation/validators.d.ts +15 -0
  199. package/lib/Validation/validators.js +86 -0
  200. package/lib/__Tests__/FormTestBase.d.ts +27 -0
  201. package/lib/__Tests__/FormTestBase.js +86 -25
  202. package/lib/__Tests__/index.d.ts +2 -0
  203. package/lib/__Tests__/index.js +8 -15
  204. package/lib/index.d.ts +71 -0
  205. package/lib/index.js +112 -174
  206. package/lib/utils/objectContainsNonSerializableProperty.d.ts +1 -0
  207. package/lib/utils/objectContainsNonSerializableProperty.js +17 -24
  208. package/lib/utils/objectToFormData.d.ts +10 -0
  209. package/lib/utils/objectToFormData.js +79 -73
  210. package/lib/utils/typeChecks.d.ts +8 -0
  211. package/lib/utils/typeChecks.js +29 -58
  212. package/package.json +106 -100
  213. package/src/AddressInput/{AddesssInput.test.js → AddressInput.test.tsx} +7 -3
  214. package/src/AddressInput/AddressInput.tsx +72 -0
  215. package/src/AddressInput/{UsStates.js → UsStates.ts} +3 -1
  216. package/src/AddressInput/__snapshots__/AddressInput.test.tsx.snap +175 -0
  217. package/src/ConfirmBaseForm/ConfirmBaseForm.test.tsx +24 -0
  218. package/src/ConfirmBaseForm/ConfirmBaseForm.tsx +50 -0
  219. package/src/ConfirmBaseForm/__snapshots__/{ConfirmBaseForm.test.js.snap → ConfirmBaseForm.test.tsx.snap} +2 -2
  220. package/src/ConfirmDeleteForm/{ConfirmDeleteForm.test.js → ConfirmDeleteForm.test.tsx} +3 -3
  221. package/src/ConfirmDeleteForm/ConfirmDeleteForm.tsx +67 -0
  222. package/src/ConfirmDeleteForm/__snapshots__/{ConfirmDeleteForm.test.js.snap → ConfirmDeleteForm.test.tsx.snap} +2 -2
  223. package/src/DatePicker/DateOnlyDatePickerGroup.tsx +24 -0
  224. package/src/DatePicker/DatePicker.test.tsx +48 -0
  225. package/src/DatePicker/DatePickerGroup.tsx +75 -0
  226. package/src/DatePicker/DatePickerHelper.ts +4 -0
  227. package/src/DatePicker/StringDatePickerGroup.tsx +14 -0
  228. package/src/DatePicker/__snapshots__/DatePicker.test.tsx.snap +151 -0
  229. package/src/Field/CustomFieldInputProps.ts +10 -0
  230. package/src/Field/CustomFieldMetaProps.ts +5 -0
  231. package/src/Field/Field.tsx +93 -0
  232. package/src/Field/FieldErrorScrollTarget.tsx +11 -0
  233. package/src/Field/FieldNameContext.ts +6 -0
  234. package/src/Field/FieldSection.tsx +18 -0
  235. package/src/Field/InjectedFieldProps.ts +8 -0
  236. package/src/Field/StandAloneInput.tsx +51 -0
  237. package/src/Field/useStandardField.ts +121 -0
  238. package/src/FieldArray/FieldArray.tsx +133 -0
  239. package/src/File/FileGroup.test.tsx +35 -0
  240. package/src/File/FileGroup.tsx +71 -0
  241. package/src/File/FileList.tsx +19 -0
  242. package/src/File/__snapshots__/FileGroup.test.tsx.snap +32 -0
  243. package/src/File/humanFileSize.ts +8 -0
  244. package/src/Form/{FocusError.js → FocusError.tsx} +10 -6
  245. package/src/Form/Form.test.tsx +14 -0
  246. package/src/Form/{Form.js → Form.tsx} +71 -31
  247. package/src/Form/FormBasedPreventNavigation.tsx +74 -0
  248. package/src/Form/ServerErrorContext.ts +17 -0
  249. package/src/Form/__snapshots__/{Form.test.js.snap → Form.test.tsx.snap} +1 -1
  250. package/src/FormActions.tsx +34 -0
  251. package/src/Group.tsx +43 -0
  252. package/src/Input/IconInputGroup.tsx +48 -0
  253. package/src/Input/InputGroup.tsx +57 -0
  254. package/src/Input/MoneyInputGroup.tsx +44 -0
  255. package/src/Input/NumberInputGroup.tsx +42 -0
  256. package/src/Input/StringInputGroup.tsx +48 -0
  257. package/src/Input/__Tests__/IconInputGroup.test.tsx +35 -0
  258. package/src/Input/__Tests__/MoneyInputGroup.test.tsx +37 -0
  259. package/src/Input/__Tests__/NumberInputGroup.test.tsx +35 -0
  260. package/src/Input/__Tests__/StringInputGroup.test.tsx +27 -0
  261. package/src/Input/__Tests__/__snapshots__/IconInputGroup.test.tsx.snap +29 -0
  262. package/src/Input/__Tests__/__snapshots__/MoneyInputGroup.test.tsx.snap +31 -0
  263. package/src/Input/__Tests__/__snapshots__/NumberInputGroup.test.tsx.snap +29 -0
  264. package/src/Input/__Tests__/__snapshots__/StringInputGroup.test.tsx.snap +28 -0
  265. package/src/Normalization/NormalizationFunction.ts +4 -0
  266. package/src/{normalizers.js → Normalization/normalizers.ts} +5 -5
  267. package/src/Select/BooleanSelectGroup.tsx +27 -0
  268. package/src/Select/NumberSelectGroup.tsx +14 -0
  269. package/src/Select/SelectGroup.tsx +106 -0
  270. package/src/Select/SelectGroupPropsHelper.ts +4 -0
  271. package/src/Select/StringSelectGroup.tsx +14 -0
  272. package/src/Select/__tests__/BooleanSelectGroup.test.tsx +35 -0
  273. package/src/Select/__tests__/NumberSelectGroup.test.tsx +87 -0
  274. package/src/Select/__tests__/StringSelectGroup.test.tsx +89 -0
  275. package/src/Select/__tests__/__snapshots__/BooleanSelectGroup.test.tsx.snap +99 -0
  276. package/src/Select/__tests__/__snapshots__/NumberSelectGroup.test.tsx.snap +197 -0
  277. package/src/Select/__tests__/__snapshots__/StringSelectGroup.test.tsx.snap +197 -0
  278. package/src/{StandardFormActions.js → StandardFormActions.tsx} +12 -6
  279. package/src/SubmitFormButton.tsx +44 -0
  280. package/src/TextArea/TextAreaGroup.tsx +55 -0
  281. package/src/Validation/ValidatedApiResult.ts +8 -0
  282. package/src/Validation/ValidationError.ts +6 -0
  283. package/src/Validation/ValidationFunction.ts +4 -0
  284. package/src/{validators/validators.test.js → Validation/validators.test.tsx} +6 -4
  285. package/src/Validation/validators.ts +92 -0
  286. package/src/__Tests__/FormTestBase.tsx +63 -0
  287. package/src/__Tests__/{StandardFormActions.test.js → StandardFormActions.test.tsx} +2 -8
  288. package/src/__Tests__/{SubmitFormButton.test.js → SubmitFormButton.test.tsx} +2 -8
  289. package/src/__Tests__/__snapshots__/{StandardFormActions.test.js.snap → StandardFormActions.test.tsx.snap} +2 -2
  290. package/src/__Tests__/__snapshots__/{SubmitFormButton.test.js.snap → SubmitFormButton.test.tsx.snap} +1 -1
  291. package/src/__Tests__/index.ts +3 -0
  292. package/src/index.ts +149 -0
  293. package/src/react-app-env.d.ts +1 -0
  294. package/src/styles.scss +0 -7
  295. package/src/utils/{objectContainsNonSerializableProperty.test.js → objectContainsNonSerializableProperty.test.tsx} +0 -0
  296. package/src/utils/{objectContainsNonSerializableProperty.js → objectContainsNonSerializableProperty.ts} +4 -2
  297. package/src/utils/{objectToFormData.test.js → objectToFormData.test.tsx} +0 -0
  298. package/src/utils/{objectToFormData.js → objectToFormData.ts} +29 -13
  299. package/src/utils/typeChecks.ts +18 -0
  300. package/es/AddressInput/index.js +0 -2
  301. package/es/BoolInput/BoolInput.js +0 -10
  302. package/es/BoolInput/InlineBoolInput.js +0 -10
  303. package/es/BoolInput/boolOptions.js +0 -8
  304. package/es/BoolInput/index.js +0 -3
  305. package/es/ConfirmBaseForm/index.js +0 -2
  306. package/es/ConfirmDeleteForm/index.js +0 -2
  307. package/es/DatePickerInput/DatePickerInput.js +0 -95
  308. package/es/DatePickerInput/index.js +0 -2
  309. package/es/ErrorScrollTarget.js +0 -10
  310. package/es/FileInput/DefaultFileList.js +0 -36
  311. package/es/FileInput/DropzoneFileInput.js +0 -58
  312. package/es/FileInput/FileInput.js +0 -62
  313. package/es/FileInput/index.js +0 -3
  314. package/es/Form/index.js +0 -3
  315. package/es/FormGroup.js +0 -22
  316. package/es/FormGroupWrapper.js +0 -22
  317. package/es/FormInput/FormInput.js +0 -206
  318. package/es/FormInput/index.js +0 -2
  319. package/es/FormInputArray/FormInputArray.js +0 -225
  320. package/es/FormInputArray/index.js +0 -2
  321. package/es/FormSection.js +0 -11
  322. package/es/IconInput.js +0 -33
  323. package/es/InlineFormInput/InlineFormInput.js +0 -8
  324. package/es/InlineFormInput/index.js +0 -2
  325. package/es/MoneyInput/InlineMoneyInput.js +0 -7
  326. package/es/MoneyInput/MoneyInput.js +0 -7
  327. package/es/MoneyInput/index.js +0 -3
  328. package/es/MoneyInput/moneyInputProps.js +0 -13
  329. package/es/NestedFormFieldContext.js +0 -4
  330. package/es/ReactSelectField/ReactSelectField.js +0 -162
  331. package/es/ReactSelectField/index.js +0 -2
  332. package/es/normalizers.js +0 -39
  333. package/es/selectors.js +0 -6
  334. package/es/useStandardFormInput.js +0 -119
  335. package/es/utils/index.js +0 -3
  336. package/es/validators/index.js +0 -2
  337. package/es/validators/validators.js +0 -94
  338. package/lib/AddressInput/index.js +0 -13
  339. package/lib/BoolInput/BoolInput.js +0 -23
  340. package/lib/BoolInput/InlineBoolInput.js +0 -23
  341. package/lib/BoolInput/boolOptions.js +0 -15
  342. package/lib/BoolInput/index.js +0 -23
  343. package/lib/ConfirmBaseForm/index.js +0 -13
  344. package/lib/ConfirmDeleteForm/index.js +0 -13
  345. package/lib/DatePickerInput/DatePickerInput.js +0 -113
  346. package/lib/DatePickerInput/index.js +0 -13
  347. package/lib/ErrorScrollTarget.js +0 -20
  348. package/lib/FileInput/DefaultFileList.js +0 -47
  349. package/lib/FileInput/DropzoneFileInput.js +0 -75
  350. package/lib/FileInput/FileInput.js +0 -82
  351. package/lib/FileInput/index.js +0 -23
  352. package/lib/Form/index.js +0 -23
  353. package/lib/FormGroup.js +0 -33
  354. package/lib/FormGroupWrapper.js +0 -37
  355. package/lib/FormInput/FormInput.js +0 -229
  356. package/lib/FormInput/index.js +0 -13
  357. package/lib/FormInputArray/FormInputArray.js +0 -248
  358. package/lib/FormInputArray/index.js +0 -13
  359. package/lib/FormSection.js +0 -28
  360. package/lib/IconInput.js +0 -51
  361. package/lib/InlineFormInput/InlineFormInput.js +0 -20
  362. package/lib/InlineFormInput/index.js +0 -13
  363. package/lib/MoneyInput/InlineMoneyInput.js +0 -20
  364. package/lib/MoneyInput/MoneyInput.js +0 -20
  365. package/lib/MoneyInput/index.js +0 -23
  366. package/lib/MoneyInput/moneyInputProps.js +0 -26
  367. package/lib/NestedFormFieldContext.js +0 -16
  368. package/lib/ReactSelectField/ReactSelectField.js +0 -187
  369. package/lib/ReactSelectField/index.js +0 -31
  370. package/lib/normalizers.js +0 -51
  371. package/lib/selectors.js +0 -18
  372. package/lib/useStandardFormInput.js +0 -135
  373. package/lib/utils/index.js +0 -23
  374. package/lib/validators/index.js +0 -17
  375. package/lib/validators/validators.js +0 -130
  376. package/src/AddressInput/AddressInput.js +0 -73
  377. package/src/AddressInput/__snapshots__/AddesssInput.test.js.snap +0 -207
  378. package/src/AddressInput/index.js +0 -2
  379. package/src/BoolInput/BoolInput.js +0 -7
  380. package/src/BoolInput/BoolInput.test.js +0 -23
  381. package/src/BoolInput/InlineBoolInput.js +0 -7
  382. package/src/BoolInput/__snapshots__/BoolInput.test.js.snap +0 -89
  383. package/src/BoolInput/boolOptions.js +0 -6
  384. package/src/BoolInput/index.js +0 -4
  385. package/src/ConfirmBaseForm/ConfirmBaseForm.js +0 -37
  386. package/src/ConfirmBaseForm/ConfirmBaseForm.test.js +0 -14
  387. package/src/ConfirmBaseForm/index.js +0 -2
  388. package/src/ConfirmDeleteForm/ConfirmDeleteForm.js +0 -39
  389. package/src/ConfirmDeleteForm/index.js +0 -2
  390. package/src/DatePickerInput/DatePickerInput.js +0 -49
  391. package/src/DatePickerInput/DatePickerInput.test.js +0 -74
  392. package/src/DatePickerInput/__snapshots__/DatePickerInput.test.js.snap +0 -134
  393. package/src/DatePickerInput/date-picker-input.scss +0 -42
  394. package/src/DatePickerInput/index.js +0 -3
  395. package/src/ErrorScrollTarget.js +0 -6
  396. package/src/FileInput/DefaultFileList.js +0 -39
  397. package/src/FileInput/DropzoneFileInput.js +0 -56
  398. package/src/FileInput/DropzoneFileInput.test.js +0 -24
  399. package/src/FileInput/FileInput.js +0 -77
  400. package/src/FileInput/FileInput.test.js +0 -24
  401. package/src/FileInput/__snapshots__/DropzoneFileInput.test.js.snap +0 -57
  402. package/src/FileInput/__snapshots__/FileInput.test.js.snap +0 -58
  403. package/src/FileInput/file-input.scss +0 -58
  404. package/src/FileInput/index.js +0 -4
  405. package/src/Form/Form.test.js +0 -23
  406. package/src/Form/FormBasedPreventNavigation.js +0 -25
  407. package/src/Form/ServerErrorContext.js +0 -7
  408. package/src/Form/index.js +0 -3
  409. package/src/FormGroup.js +0 -30
  410. package/src/FormGroupWrapper.js +0 -28
  411. package/src/FormInput/FormInput.js +0 -145
  412. package/src/FormInput/FormInput.test.js +0 -66
  413. package/src/FormInput/__snapshots__/FormInput.test.js.snap +0 -323
  414. package/src/FormInput/form-input.scss +0 -9
  415. package/src/FormInput/index.js +0 -2
  416. package/src/FormInputArray/FormInputArray.js +0 -224
  417. package/src/FormInputArray/FormInputArray.test.js +0 -108
  418. package/src/FormInputArray/__snapshots__/FormInputArray.test.js.snap +0 -52
  419. package/src/FormInputArray/form-input-array.scss +0 -13
  420. package/src/FormInputArray/index.js +0 -2
  421. package/src/FormSection.js +0 -13
  422. package/src/IconInput.js +0 -31
  423. package/src/InlineFormInput/InlineFormInput.js +0 -6
  424. package/src/InlineFormInput/InlineFormInput.test.js +0 -23
  425. package/src/InlineFormInput/__snapshots__/InlineFormInput.test.js.snap +0 -26
  426. package/src/InlineFormInput/index.js +0 -3
  427. package/src/InlineFormInput/inline-form-input.scss +0 -3
  428. package/src/MoneyInput/InlineMoneyInput.js +0 -7
  429. package/src/MoneyInput/MoneyInput.js +0 -7
  430. package/src/MoneyInput/MoneyInputs.test.js +0 -43
  431. package/src/MoneyInput/__snapshots__/MoneyInputs.test.js.snap +0 -81
  432. package/src/MoneyInput/index.js +0 -4
  433. package/src/MoneyInput/money-input.scss +0 -3
  434. package/src/MoneyInput/moneyInputProps.js +0 -12
  435. package/src/NestedFormFieldContext.js +0 -6
  436. package/src/ReactSelectField/ReactSelectField.js +0 -155
  437. package/src/ReactSelectField/index.js +0 -6
  438. package/src/ReactSelectField/react-select-field.scss +0 -5
  439. package/src/SubmitFormButton.js +0 -28
  440. package/src/__Tests__/FormTestBase.js +0 -14
  441. package/src/__Tests__/IconInput.test.js +0 -23
  442. package/src/__Tests__/__snapshots__/IconInput.test.js.snap +0 -38
  443. package/src/index.js +0 -45
  444. package/src/selectors.js +0 -3
  445. package/src/useStandardFormInput.js +0 -118
  446. package/src/utils/index.js +0 -3
  447. package/src/utils/typeChecks.js +0 -18
  448. package/src/validators/index.js +0 -2
  449. package/src/validators/validators.js +0 -93
@@ -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, "MoneyInput", {
9
- enumerable: true,
10
- get: function get() {
11
- return _MoneyInput["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "InlineMoneyInput", {
15
- enumerable: true,
16
- get: function get() {
17
- return _InlineMoneyInput["default"];
18
- }
19
- });
20
-
21
- var _MoneyInput = _interopRequireDefault(require("./MoneyInput"));
22
-
23
- var _InlineMoneyInput = _interopRequireDefault(require("./InlineMoneyInput"));
@@ -1,26 +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"] = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _reactstrap = require("reactstrap");
13
-
14
- var MoneyPrepend = /*#__PURE__*/_react["default"].createElement(_reactstrap.InputGroupAddon, {
15
- addonType: "prepend"
16
- }, "$");
17
-
18
- var moneyInputProps = {
19
- type: 'number',
20
- step: '0.01',
21
- min: '0',
22
- prepend: MoneyPrepend,
23
- className: 'money-input'
24
- };
25
- var _default = moneyInputProps;
26
- exports["default"] = _default;
@@ -1,16 +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"] = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- // TODO: better name?
13
- var NestedFormFieldContext = /*#__PURE__*/_react["default"].createContext();
14
-
15
- var _default = NestedFormFieldContext;
16
- exports["default"] = _default;
@@ -1,187 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = ReactSelectInput;
11
- exports.customStyles = exports.overrideTheme = void 0;
12
-
13
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
-
15
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
16
-
17
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
-
19
- var _classnames = _interopRequireDefault(require("classnames"));
20
-
21
- var _react = _interopRequireWildcard(require("react"));
22
-
23
- var _reactSelect = _interopRequireDefault(require("react-select"));
24
-
25
- var _excluded = ["className", "meta", "disabled", "onSelected", "onChange", "onBlur", "value", "options", "defaultValue", "defaultIndex"];
26
-
27
- 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); }
28
-
29
- 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; }
30
-
31
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
32
-
33
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
34
-
35
- var overrideTheme = function overrideTheme(theme) {
36
- return _objectSpread(_objectSpread({}, theme), {}, {
37
- borderRadius: 0,
38
- spacing: Object.assign({}, _objectSpread({}, theme.spacing), {
39
- baseUnit: 2,
40
- controlHeight: 35
41
- })
42
- });
43
- };
44
-
45
- exports.overrideTheme = overrideTheme;
46
- var red = '#f86c6b';
47
- var inputBorderColor = '#c2cfd6';
48
- var inputBorderColorFocused = '#8ad4ee';
49
- var inputBoxShadowFocused = '0 0 0 0.2rem rgba(32, 168, 216, 0.25)';
50
- var placeholderColor = '#9ca3af';
51
- var disabledSingleValueColor = '#4b5563';
52
- var customStyles = {
53
- control: function control(provided, _ref) {
54
- var isFocused = _ref.isFocused,
55
- selectProps = _ref.selectProps;
56
- return _objectSpread(_objectSpread({}, provided), {}, {
57
- paddingLeft: '7px',
58
- '&:hover': {
59
- borderColor: isFocused ? inputBorderColorFocused : inputBorderColor
60
- },
61
- borderColor: selectProps.hasErrors ? red : isFocused ? inputBorderColorFocused : inputBorderColor,
62
- boxShadow: isFocused ? inputBoxShadowFocused : ''
63
- });
64
- },
65
- menu: function menu(provided) {
66
- return _objectSpread(_objectSpread({}, provided), {}, {
67
- zIndex: 3
68
- });
69
- },
70
- singleValue: function singleValue(provided, state) {
71
- var color = state.isDisabled ? disabledSingleValueColor : '';
72
- return _objectSpread(_objectSpread({}, provided), {}, {
73
- color: color
74
- });
75
- },
76
- placeholder: function placeholder(defaultStyles) {
77
- return _objectSpread(_objectSpread({}, defaultStyles), {}, {
78
- color: placeholderColor
79
- });
80
- }
81
- }; // internal to forms use only
82
-
83
- exports.customStyles = customStyles;
84
-
85
- function ReactSelectInput(_ref2) {
86
- var className = _ref2.className,
87
- meta = _ref2.meta,
88
- disabled = _ref2.disabled,
89
- onSelected = _ref2.onSelected,
90
- onChange = _ref2.onChange,
91
- _onBlur = _ref2.onBlur,
92
- value = _ref2.value,
93
- options = _ref2.options,
94
- defaultValue = _ref2.defaultValue,
95
- defaultIndex = _ref2.defaultIndex,
96
- props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
97
- var selectedItems = getSelectedItems();
98
- var onSelectedRef = (0, _react.useRef)(onSelected);
99
- onSelectedRef.current = onSelected;
100
- (0, _react.useEffect)(function () {
101
- onSelectedRef.current && onSelectedRef.current(selectedItems);
102
- }, [selectedItems]);
103
- var onBlurRef = (0, _react.useRef)(_onBlur);
104
- onBlurRef.current = _onBlur;
105
- var touched = meta.touched;
106
- (0, _react.useEffect)(function () {
107
- if (!touched) return; // without the timer set to 0, if the empty option is selected the required message doesn't appear until clicked away from the select input
108
-
109
- var timerRef = setTimeout(function () {
110
- onBlurRef.current && onBlurRef.current();
111
- }, 0);
112
- return function () {
113
- clearTimeout(timerRef);
114
- };
115
- }, [value, touched]);
116
- var classes = (0, _classnames["default"])(className, 'react-select-input', {
117
- 'is-invalid': !!meta.error,
118
- disabled: disabled
119
- });
120
- return /*#__PURE__*/_react["default"].createElement(_reactSelect["default"], (0, _extends2["default"])({}, props, {
121
- options: options,
122
- isDisabled: disabled,
123
- hasErrors: meta.error,
124
- getOptionLabel: function getOptionLabel(option) {
125
- return option.label;
126
- },
127
- getOptionValue: getOptionValue,
128
- value: selectedItems,
129
- onChange: handleChange,
130
- onBlur: function onBlur() {
131
- return _onBlur();
132
- },
133
- className: classes,
134
- theme: overrideTheme,
135
- styles: customStyles,
136
- menuPortalTarget: document.body,
137
- menuPlacement: "auto"
138
- }));
139
-
140
- function getOptionValue(option) {
141
- if (typeof props.getOptionValue === 'function') {
142
- return props.getOptionValue(option);
143
- } else {
144
- return option.value;
145
- }
146
- }
147
-
148
- function getSelectedItems() {
149
- if (defaultValue !== undefined && value === '') {
150
- value = defaultValue;
151
- onChange(defaultValue);
152
- }
153
-
154
- if (defaultIndex !== undefined && value === '') {
155
- var item = options[defaultIndex];
156
- onChange(getOptionValue(item));
157
- return item;
158
- }
159
-
160
- var valueIsArray = Array.isArray(value);
161
- var matches = options.filter(function (x) {
162
- if (valueIsArray) {
163
- return value.includes(getOptionValue(x));
164
- } else {
165
- return value === getOptionValue(x);
166
- }
167
- });
168
-
169
- if (matches.length < 1) {
170
- return null;
171
- }
172
-
173
- return matches;
174
- }
175
-
176
- function handleChange(e) {
177
- if (e == null) {
178
- onChange(null);
179
- } else if (Array.isArray(e)) {
180
- onChange(e.map(function (x) {
181
- return x.value;
182
- }));
183
- } else {
184
- onChange(e.value);
185
- }
186
- }
187
- }
@@ -1,31 +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
- Object.defineProperty(exports, "default", {
9
- enumerable: true,
10
- get: function get() {
11
- return _ReactSelectField["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "overrideTheme", {
15
- enumerable: true,
16
- get: function get() {
17
- return _ReactSelectField.overrideTheme;
18
- }
19
- });
20
- Object.defineProperty(exports, "customStyles", {
21
- enumerable: true,
22
- get: function get() {
23
- return _ReactSelectField.customStyles;
24
- }
25
- });
26
-
27
- var _ReactSelectField = _interopRequireWildcard(require("./ReactSelectField"));
28
-
29
- 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); }
30
-
31
- 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; }
@@ -1,51 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.zipCode = exports.phoneNumber = void 0;
7
-
8
- var phoneNumber = function phoneNumber(value) {
9
- if (!value) {
10
- return value;
11
- }
12
-
13
- var onlyNums = value.replace(/[^\d]/g, '');
14
-
15
- if (onlyNums.length <= 3) {
16
- return onlyNums;
17
- }
18
-
19
- if (onlyNums.length <= 7) {
20
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3));
21
- }
22
-
23
- if (onlyNums.length <= 10) {
24
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3, 6), "-").concat(onlyNums.slice(6, 10));
25
- }
26
-
27
- if (onlyNums.length <= 13) {
28
- var countryCodeLength = onlyNums - 10;
29
- return "+".concat(onlyNums.slice(0, countryCodeLength), " ").concat(onlyNums.slice(countryCodeLength, 3 + countryCodeLength), "-").concat(onlyNums.slice(3 + countryCodeLength, 6 + countryCodeLength), "-").concat(onlyNums.slice(6 + countryCodeLength, onlyNums.length));
30
- }
31
-
32
- return onlyNums;
33
- };
34
-
35
- exports.phoneNumber = phoneNumber;
36
-
37
- var zipCode = function zipCode(value) {
38
- if (!value) {
39
- return value;
40
- }
41
-
42
- var onlyNums = value.replace(/[^\d]/g, '');
43
-
44
- if (onlyNums.length > 5) {
45
- return onlyNums.substring(0, 5) + '-' + onlyNums.substring(5, 9);
46
- }
47
-
48
- return onlyNums;
49
- };
50
-
51
- exports.zipCode = zipCode;
package/lib/selectors.js DELETED
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getRegisteredFields = exports.getForm = void 0;
7
-
8
- var getForm = function getForm(state, ownProps) {
9
- return state.form[ownProps.form];
10
- };
11
-
12
- exports.getForm = getForm;
13
-
14
- var getRegisteredFields = function getRegisteredFields(state, ownProps) {
15
- return getForm(state, ownProps) ? getForm(state, ownProps).registeredFields : {};
16
- };
17
-
18
- exports.getRegisteredFields = getRegisteredFields;
@@ -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
- }
@@ -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"));
@@ -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 && value) {
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 && value) {
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;