envoc-form 3.1.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.
Files changed (422) 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/DatePickerInput/DatePickerInput.d.ts +14 -0
  13. package/es/DatePickerInput/DatePickerInput.js +63 -95
  14. package/es/Field/CustomFieldInputProps.d.ts +7 -0
  15. package/es/Field/CustomFieldInputProps.js +1 -0
  16. package/es/Field/CustomFieldMetaProps.d.ts +4 -0
  17. package/es/Field/CustomFieldMetaProps.js +1 -0
  18. package/es/Field/Field.d.ts +22 -0
  19. package/es/Field/Field.js +46 -0
  20. package/es/Field/FieldErrorScrollTarget.d.ts +2 -0
  21. package/es/Field/FieldErrorScrollTarget.js +11 -0
  22. package/es/Field/FieldNameContext.d.ts +3 -0
  23. package/es/Field/FieldNameContext.js +3 -0
  24. package/es/Field/FieldSection.d.ts +7 -0
  25. package/es/Field/FieldSection.js +20 -0
  26. package/es/Field/InjectedFieldProps.d.ts +7 -0
  27. package/es/Field/InjectedFieldProps.js +1 -0
  28. package/es/Field/useStandardField.d.ts +15 -0
  29. package/es/Field/useStandardField.js +93 -0
  30. package/es/FieldArray/FieldArray.d.ts +15 -0
  31. package/es/FieldArray/FieldArray.js +80 -0
  32. package/es/File/FileGroup.d.ts +8 -0
  33. package/es/File/FileGroup.js +50 -0
  34. package/es/File/FileList.d.ts +6 -0
  35. package/es/File/FileList.js +20 -0
  36. package/es/File/humanFileSize.d.ts +1 -0
  37. package/es/File/humanFileSize.js +6 -0
  38. package/es/Form/FocusError.d.ts +5 -0
  39. package/es/Form/FocusError.js +41 -53
  40. package/es/Form/Form.d.ts +22 -0
  41. package/es/Form/Form.js +111 -125
  42. package/es/Form/FormBasedPreventNavigation.d.ts +5 -0
  43. package/es/Form/FormBasedPreventNavigation.js +53 -30
  44. package/es/Form/ServerErrorContext.d.ts +10 -0
  45. package/es/Form/ServerErrorContext.js +8 -6
  46. package/es/FormActions.d.ts +7 -0
  47. package/es/FormActions.js +22 -0
  48. package/es/Group.d.ts +13 -0
  49. package/es/Group.js +22 -0
  50. package/es/Input/IconInputGroup.d.ts +9 -0
  51. package/es/Input/IconInputGroup.js +40 -0
  52. package/es/Input/InputGroup.d.ts +12 -0
  53. package/es/Input/InputGroup.js +33 -0
  54. package/es/Input/MoneyInputGroup.d.ts +7 -0
  55. package/es/Input/MoneyInputGroup.js +41 -0
  56. package/es/Input/NumberInputGroup.d.ts +7 -0
  57. package/es/Input/NumberInputGroup.js +41 -0
  58. package/es/Input/StringInputGroup.d.ts +7 -0
  59. package/es/Input/StringInputGroup.js +40 -0
  60. package/es/Normalization/NormalizationFunction.d.ts +4 -0
  61. package/es/Normalization/NormalizationFunction.js +1 -0
  62. package/es/Normalization/normalizers.d.ts +2 -0
  63. package/es/Normalization/normalizers.js +30 -0
  64. package/es/Select/BooleanSelectGroup.d.ts +7 -0
  65. package/es/Select/BooleanSelectGroup.js +27 -0
  66. package/es/Select/NumberSelectGroup.d.ts +8 -0
  67. package/es/Select/NumberSelectGroup.js +19 -0
  68. package/es/Select/SelectGroup.d.ts +22 -0
  69. package/es/Select/SelectGroup.js +59 -0
  70. package/es/Select/SelectGroupPropsHelper.d.ts +3 -0
  71. package/es/Select/SelectGroupPropsHelper.js +1 -0
  72. package/es/Select/StringSelectGroup.d.ts +8 -0
  73. package/es/Select/StringSelectGroup.js +19 -0
  74. package/es/StandardFormActions.d.ts +6 -0
  75. package/es/StandardFormActions.js +23 -24
  76. package/es/SubmitFormButton.d.ts +7 -0
  77. package/es/SubmitFormButton.js +37 -23
  78. package/es/Validation/ValidatedApiResult.d.ts +6 -0
  79. package/es/Validation/ValidatedApiResult.js +1 -0
  80. package/es/Validation/ValidationError.d.ts +5 -0
  81. package/es/Validation/ValidationError.js +1 -0
  82. package/es/Validation/ValidationFunction.d.ts +4 -0
  83. package/es/Validation/ValidationFunction.js +1 -0
  84. package/es/Validation/validators.d.ts +15 -0
  85. package/es/Validation/validators.js +73 -0
  86. package/es/__Tests__/FormTestBase.d.ts +27 -0
  87. package/es/__Tests__/FormTestBase.js +83 -12
  88. package/{src/__Tests__/index.js → es/__Tests__/index.d.ts} +0 -0
  89. package/es/__Tests__/index.js +2 -2
  90. package/es/index.d.ts +57 -0
  91. package/es/index.js +41 -20
  92. package/es/utils/objectContainsNonSerializableProperty.d.ts +1 -0
  93. package/es/utils/objectContainsNonSerializableProperty.js +14 -16
  94. package/es/utils/objectToFormData.d.ts +10 -0
  95. package/es/utils/objectToFormData.js +77 -65
  96. package/es/utils/typeChecks.d.ts +8 -0
  97. package/es/utils/typeChecks.js +18 -25
  98. package/lib/AddressInput/AddressInput.d.ts +15 -0
  99. package/lib/AddressInput/AddressInput.js +27 -123
  100. package/lib/AddressInput/UsStates.d.ts +3 -0
  101. package/lib/AddressInput/UsStates.js +55 -159
  102. package/lib/ConfirmBaseForm/ConfirmBaseForm.d.ts +10 -0
  103. package/lib/ConfirmBaseForm/ConfirmBaseForm.js +41 -57
  104. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +11 -0
  105. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.js +60 -56
  106. package/lib/DatePickerInput/DatePickerInput.d.ts +14 -0
  107. package/lib/DatePickerInput/DatePickerInput.js +69 -113
  108. package/lib/Field/CustomFieldInputProps.d.ts +7 -0
  109. package/lib/Field/CustomFieldInputProps.js +2 -0
  110. package/lib/Field/CustomFieldMetaProps.d.ts +4 -0
  111. package/lib/Field/CustomFieldMetaProps.js +2 -0
  112. package/lib/Field/Field.d.ts +22 -0
  113. package/lib/Field/Field.js +51 -0
  114. package/lib/Field/FieldErrorScrollTarget.d.ts +2 -0
  115. package/lib/Field/FieldErrorScrollTarget.js +14 -0
  116. package/lib/Field/FieldNameContext.d.ts +3 -0
  117. package/lib/Field/FieldNameContext.js +9 -0
  118. package/lib/Field/FieldSection.d.ts +7 -0
  119. package/lib/Field/FieldSection.js +23 -0
  120. package/lib/Field/InjectedFieldProps.d.ts +7 -0
  121. package/lib/Field/InjectedFieldProps.js +2 -0
  122. package/lib/Field/useStandardField.d.ts +15 -0
  123. package/lib/Field/useStandardField.js +96 -0
  124. package/lib/FieldArray/FieldArray.d.ts +15 -0
  125. package/lib/FieldArray/FieldArray.js +86 -0
  126. package/lib/File/FileGroup.d.ts +8 -0
  127. package/lib/File/FileGroup.js +55 -0
  128. package/lib/File/FileList.d.ts +6 -0
  129. package/lib/File/FileList.js +23 -0
  130. package/lib/File/humanFileSize.d.ts +1 -0
  131. package/lib/File/humanFileSize.js +10 -0
  132. package/lib/Form/FocusError.d.ts +5 -0
  133. package/lib/Form/FocusError.js +47 -66
  134. package/lib/Form/Form.d.ts +22 -0
  135. package/lib/Form/Form.js +117 -153
  136. package/lib/Form/FormBasedPreventNavigation.d.ts +5 -0
  137. package/lib/Form/FormBasedPreventNavigation.js +56 -39
  138. package/lib/Form/ServerErrorContext.d.ts +10 -0
  139. package/lib/Form/ServerErrorContext.js +14 -18
  140. package/lib/FormActions.d.ts +7 -0
  141. package/lib/FormActions.js +28 -0
  142. package/lib/Group.d.ts +13 -0
  143. package/lib/Group.js +28 -0
  144. package/lib/Input/IconInputGroup.d.ts +9 -0
  145. package/lib/Input/IconInputGroup.js +45 -0
  146. package/lib/Input/InputGroup.d.ts +12 -0
  147. package/lib/Input/InputGroup.js +38 -0
  148. package/lib/Input/MoneyInputGroup.d.ts +7 -0
  149. package/lib/Input/MoneyInputGroup.js +46 -0
  150. package/lib/Input/NumberInputGroup.d.ts +7 -0
  151. package/lib/Input/NumberInputGroup.js +46 -0
  152. package/lib/Input/StringInputGroup.d.ts +7 -0
  153. package/lib/Input/StringInputGroup.js +45 -0
  154. package/lib/Normalization/NormalizationFunction.d.ts +4 -0
  155. package/lib/Normalization/NormalizationFunction.js +2 -0
  156. package/lib/Normalization/normalizers.d.ts +2 -0
  157. package/lib/Normalization/normalizers.js +35 -0
  158. package/lib/Select/BooleanSelectGroup.d.ts +7 -0
  159. package/lib/Select/BooleanSelectGroup.js +34 -0
  160. package/lib/Select/NumberSelectGroup.d.ts +8 -0
  161. package/lib/Select/NumberSelectGroup.js +27 -0
  162. package/lib/Select/SelectGroup.d.ts +22 -0
  163. package/lib/Select/SelectGroup.js +65 -0
  164. package/lib/Select/SelectGroupPropsHelper.d.ts +3 -0
  165. package/lib/Select/SelectGroupPropsHelper.js +2 -0
  166. package/lib/Select/StringSelectGroup.d.ts +8 -0
  167. package/lib/Select/StringSelectGroup.js +27 -0
  168. package/lib/StandardFormActions.d.ts +6 -0
  169. package/lib/StandardFormActions.js +29 -37
  170. package/lib/SubmitFormButton.d.ts +7 -0
  171. package/lib/SubmitFormButton.js +42 -38
  172. package/lib/Validation/ValidatedApiResult.d.ts +6 -0
  173. package/lib/Validation/ValidatedApiResult.js +2 -0
  174. package/lib/Validation/ValidationError.d.ts +5 -0
  175. package/lib/Validation/ValidationError.js +2 -0
  176. package/lib/Validation/ValidationFunction.d.ts +4 -0
  177. package/lib/Validation/ValidationFunction.js +2 -0
  178. package/lib/Validation/validators.d.ts +15 -0
  179. package/lib/Validation/validators.js +86 -0
  180. package/lib/__Tests__/FormTestBase.d.ts +27 -0
  181. package/lib/__Tests__/FormTestBase.js +86 -25
  182. package/lib/__Tests__/index.d.ts +2 -0
  183. package/lib/__Tests__/index.js +8 -15
  184. package/lib/index.d.ts +57 -0
  185. package/lib/index.js +101 -174
  186. package/lib/utils/objectContainsNonSerializableProperty.d.ts +1 -0
  187. package/lib/utils/objectContainsNonSerializableProperty.js +17 -24
  188. package/lib/utils/objectToFormData.d.ts +10 -0
  189. package/lib/utils/objectToFormData.js +79 -73
  190. package/lib/utils/typeChecks.d.ts +8 -0
  191. package/lib/utils/typeChecks.js +29 -58
  192. package/package.json +106 -100
  193. package/src/AddressInput/{AddesssInput.test.js → AddressInput.test.tsx} +7 -3
  194. package/src/AddressInput/AddressInput.tsx +72 -0
  195. package/src/AddressInput/{UsStates.js → UsStates.ts} +3 -1
  196. package/src/AddressInput/__snapshots__/AddressInput.test.tsx.snap +175 -0
  197. package/src/ConfirmBaseForm/ConfirmBaseForm.test.tsx +24 -0
  198. package/src/ConfirmBaseForm/ConfirmBaseForm.tsx +50 -0
  199. package/src/ConfirmBaseForm/__snapshots__/{ConfirmBaseForm.test.js.snap → ConfirmBaseForm.test.tsx.snap} +2 -2
  200. package/src/ConfirmDeleteForm/{ConfirmDeleteForm.test.js → ConfirmDeleteForm.test.tsx} +3 -3
  201. package/src/ConfirmDeleteForm/ConfirmDeleteForm.tsx +67 -0
  202. package/src/ConfirmDeleteForm/__snapshots__/{ConfirmDeleteForm.test.js.snap → ConfirmDeleteForm.test.tsx.snap} +2 -2
  203. package/src/DatePickerInput/DatePickerInput.test.tsx +48 -0
  204. package/src/DatePickerInput/DatePickerInput.tsx +85 -0
  205. package/src/DatePickerInput/__snapshots__/DatePickerInput.test.tsx.snap +151 -0
  206. package/src/Field/CustomFieldInputProps.ts +10 -0
  207. package/src/Field/CustomFieldMetaProps.ts +5 -0
  208. package/src/Field/Field.tsx +90 -0
  209. package/src/Field/FieldErrorScrollTarget.tsx +11 -0
  210. package/src/Field/FieldNameContext.ts +6 -0
  211. package/src/Field/FieldSection.tsx +18 -0
  212. package/src/Field/InjectedFieldProps.ts +8 -0
  213. package/src/Field/useStandardField.ts +121 -0
  214. package/src/FieldArray/FieldArray.tsx +133 -0
  215. package/src/File/FileGroup.test.tsx +35 -0
  216. package/src/File/FileGroup.tsx +71 -0
  217. package/src/File/FileList.tsx +19 -0
  218. package/src/File/__snapshots__/FileGroup.test.tsx.snap +32 -0
  219. package/src/File/humanFileSize.ts +8 -0
  220. package/src/Form/{FocusError.js → FocusError.tsx} +10 -6
  221. package/src/Form/Form.test.tsx +14 -0
  222. package/src/Form/{Form.js → Form.tsx} +71 -31
  223. package/src/Form/FormBasedPreventNavigation.tsx +74 -0
  224. package/src/Form/ServerErrorContext.ts +17 -0
  225. package/src/Form/__snapshots__/{Form.test.js.snap → Form.test.tsx.snap} +1 -1
  226. package/src/FormActions.tsx +34 -0
  227. package/src/Group.tsx +43 -0
  228. package/src/Input/IconInputGroup.tsx +48 -0
  229. package/src/Input/InputGroup.tsx +57 -0
  230. package/src/Input/MoneyInputGroup.tsx +44 -0
  231. package/src/Input/NumberInputGroup.tsx +42 -0
  232. package/src/Input/StringInputGroup.tsx +40 -0
  233. package/src/Input/__Tests__/IconInputGroup.test.tsx +35 -0
  234. package/src/Input/__Tests__/MoneyInputGroup.test.tsx +37 -0
  235. package/src/Input/__Tests__/NumberInputGroup.test.tsx +35 -0
  236. package/src/Input/__Tests__/StringInputGroup.test.tsx +27 -0
  237. package/src/Input/__Tests__/__snapshots__/IconInputGroup.test.tsx.snap +29 -0
  238. package/src/Input/__Tests__/__snapshots__/MoneyInputGroup.test.tsx.snap +31 -0
  239. package/src/Input/__Tests__/__snapshots__/NumberInputGroup.test.tsx.snap +29 -0
  240. package/src/Input/__Tests__/__snapshots__/StringInputGroup.test.tsx.snap +28 -0
  241. package/src/Normalization/NormalizationFunction.ts +4 -0
  242. package/src/{normalizers.js → Normalization/normalizers.ts} +5 -5
  243. package/src/Select/BooleanSelectGroup.tsx +27 -0
  244. package/src/Select/NumberSelectGroup.tsx +14 -0
  245. package/src/Select/SelectGroup.tsx +106 -0
  246. package/src/Select/SelectGroupPropsHelper.ts +4 -0
  247. package/src/Select/StringSelectGroup.tsx +14 -0
  248. package/src/Select/__tests__/BooleanSelectGroup.test.tsx +35 -0
  249. package/src/Select/__tests__/NumberSelectGroup.test.tsx +87 -0
  250. package/src/Select/__tests__/StringSelectGroup.test.tsx +89 -0
  251. package/src/Select/__tests__/__snapshots__/BooleanSelectGroup.test.tsx.snap +99 -0
  252. package/src/Select/__tests__/__snapshots__/NumberSelectGroup.test.tsx.snap +197 -0
  253. package/src/Select/__tests__/__snapshots__/StringSelectGroup.test.tsx.snap +197 -0
  254. package/src/{StandardFormActions.js → StandardFormActions.tsx} +12 -6
  255. package/src/SubmitFormButton.tsx +44 -0
  256. package/src/Validation/ValidatedApiResult.ts +8 -0
  257. package/src/Validation/ValidationError.ts +6 -0
  258. package/src/Validation/ValidationFunction.ts +4 -0
  259. package/src/{validators/validators.test.js → Validation/validators.test.tsx} +6 -4
  260. package/src/Validation/validators.ts +92 -0
  261. package/src/__Tests__/FormTestBase.tsx +63 -0
  262. package/src/__Tests__/{StandardFormActions.test.js → StandardFormActions.test.tsx} +2 -8
  263. package/src/__Tests__/{SubmitFormButton.test.js → SubmitFormButton.test.tsx} +2 -8
  264. package/src/__Tests__/__snapshots__/{StandardFormActions.test.js.snap → StandardFormActions.test.tsx.snap} +2 -2
  265. package/src/__Tests__/__snapshots__/{SubmitFormButton.test.js.snap → SubmitFormButton.test.tsx.snap} +1 -1
  266. package/src/__Tests__/index.ts +3 -0
  267. package/src/index.ts +114 -0
  268. package/src/react-app-env.d.ts +1 -0
  269. package/src/styles.scss +0 -7
  270. package/src/utils/{objectContainsNonSerializableProperty.test.js → objectContainsNonSerializableProperty.test.tsx} +0 -0
  271. package/src/utils/{objectContainsNonSerializableProperty.js → objectContainsNonSerializableProperty.ts} +4 -2
  272. package/src/utils/{objectToFormData.test.js → objectToFormData.test.tsx} +0 -0
  273. package/src/utils/{objectToFormData.js → objectToFormData.ts} +29 -13
  274. package/src/utils/typeChecks.ts +18 -0
  275. package/es/AddressInput/index.js +0 -2
  276. package/es/BoolInput/BoolInput.js +0 -10
  277. package/es/BoolInput/InlineBoolInput.js +0 -10
  278. package/es/BoolInput/boolOptions.js +0 -8
  279. package/es/BoolInput/index.js +0 -3
  280. package/es/ConfirmBaseForm/index.js +0 -2
  281. package/es/ConfirmDeleteForm/index.js +0 -2
  282. package/es/DatePickerInput/index.js +0 -2
  283. package/es/ErrorScrollTarget.js +0 -10
  284. package/es/FileInput/DefaultFileList.js +0 -36
  285. package/es/FileInput/DropzoneFileInput.js +0 -58
  286. package/es/FileInput/FileInput.js +0 -62
  287. package/es/FileInput/index.js +0 -3
  288. package/es/Form/index.js +0 -3
  289. package/es/FormGroup.js +0 -22
  290. package/es/FormGroupWrapper.js +0 -22
  291. package/es/FormInput/FormInput.js +0 -206
  292. package/es/FormInput/index.js +0 -2
  293. package/es/FormInputArray/FormInputArray.js +0 -225
  294. package/es/FormInputArray/index.js +0 -2
  295. package/es/FormSection.js +0 -11
  296. package/es/IconInput.js +0 -33
  297. package/es/InlineFormInput/InlineFormInput.js +0 -8
  298. package/es/InlineFormInput/index.js +0 -2
  299. package/es/MoneyInput/InlineMoneyInput.js +0 -7
  300. package/es/MoneyInput/MoneyInput.js +0 -7
  301. package/es/MoneyInput/index.js +0 -3
  302. package/es/MoneyInput/moneyInputProps.js +0 -13
  303. package/es/NestedFormFieldContext.js +0 -4
  304. package/es/ReactSelectField/ReactSelectField.js +0 -128
  305. package/es/ReactSelectField/index.js +0 -2
  306. package/es/normalizers.js +0 -39
  307. package/es/selectors.js +0 -6
  308. package/es/useStandardFormInput.js +0 -119
  309. package/es/utils/index.js +0 -3
  310. package/es/validators/index.js +0 -2
  311. package/es/validators/validators.js +0 -94
  312. package/lib/AddressInput/index.js +0 -13
  313. package/lib/BoolInput/BoolInput.js +0 -23
  314. package/lib/BoolInput/InlineBoolInput.js +0 -23
  315. package/lib/BoolInput/boolOptions.js +0 -15
  316. package/lib/BoolInput/index.js +0 -23
  317. package/lib/ConfirmBaseForm/index.js +0 -13
  318. package/lib/ConfirmDeleteForm/index.js +0 -13
  319. package/lib/DatePickerInput/index.js +0 -13
  320. package/lib/ErrorScrollTarget.js +0 -20
  321. package/lib/FileInput/DefaultFileList.js +0 -47
  322. package/lib/FileInput/DropzoneFileInput.js +0 -75
  323. package/lib/FileInput/FileInput.js +0 -82
  324. package/lib/FileInput/index.js +0 -23
  325. package/lib/Form/index.js +0 -23
  326. package/lib/FormGroup.js +0 -33
  327. package/lib/FormGroupWrapper.js +0 -37
  328. package/lib/FormInput/FormInput.js +0 -229
  329. package/lib/FormInput/index.js +0 -13
  330. package/lib/FormInputArray/FormInputArray.js +0 -248
  331. package/lib/FormInputArray/index.js +0 -13
  332. package/lib/FormSection.js +0 -28
  333. package/lib/IconInput.js +0 -51
  334. package/lib/InlineFormInput/InlineFormInput.js +0 -20
  335. package/lib/InlineFormInput/index.js +0 -13
  336. package/lib/MoneyInput/InlineMoneyInput.js +0 -20
  337. package/lib/MoneyInput/MoneyInput.js +0 -20
  338. package/lib/MoneyInput/index.js +0 -23
  339. package/lib/MoneyInput/moneyInputProps.js +0 -26
  340. package/lib/NestedFormFieldContext.js +0 -16
  341. package/lib/ReactSelectField/ReactSelectField.js +0 -152
  342. package/lib/ReactSelectField/index.js +0 -31
  343. package/lib/normalizers.js +0 -51
  344. package/lib/selectors.js +0 -18
  345. package/lib/useStandardFormInput.js +0 -135
  346. package/lib/utils/index.js +0 -23
  347. package/lib/validators/index.js +0 -17
  348. package/lib/validators/validators.js +0 -130
  349. package/src/AddressInput/AddressInput.js +0 -73
  350. package/src/AddressInput/__snapshots__/AddesssInput.test.js.snap +0 -207
  351. package/src/AddressInput/index.js +0 -2
  352. package/src/BoolInput/BoolInput.js +0 -7
  353. package/src/BoolInput/BoolInput.test.js +0 -23
  354. package/src/BoolInput/InlineBoolInput.js +0 -7
  355. package/src/BoolInput/__snapshots__/BoolInput.test.js.snap +0 -89
  356. package/src/BoolInput/boolOptions.js +0 -6
  357. package/src/BoolInput/index.js +0 -4
  358. package/src/ConfirmBaseForm/ConfirmBaseForm.js +0 -37
  359. package/src/ConfirmBaseForm/ConfirmBaseForm.test.js +0 -14
  360. package/src/ConfirmBaseForm/index.js +0 -2
  361. package/src/ConfirmDeleteForm/ConfirmDeleteForm.js +0 -39
  362. package/src/ConfirmDeleteForm/index.js +0 -2
  363. package/src/DatePickerInput/DatePickerInput.js +0 -49
  364. package/src/DatePickerInput/DatePickerInput.test.js +0 -74
  365. package/src/DatePickerInput/__snapshots__/DatePickerInput.test.js.snap +0 -134
  366. package/src/DatePickerInput/date-picker-input.scss +0 -42
  367. package/src/DatePickerInput/index.js +0 -3
  368. package/src/ErrorScrollTarget.js +0 -6
  369. package/src/FileInput/DefaultFileList.js +0 -39
  370. package/src/FileInput/DropzoneFileInput.js +0 -56
  371. package/src/FileInput/DropzoneFileInput.test.js +0 -24
  372. package/src/FileInput/FileInput.js +0 -77
  373. package/src/FileInput/FileInput.test.js +0 -24
  374. package/src/FileInput/__snapshots__/DropzoneFileInput.test.js.snap +0 -57
  375. package/src/FileInput/__snapshots__/FileInput.test.js.snap +0 -58
  376. package/src/FileInput/file-input.scss +0 -58
  377. package/src/FileInput/index.js +0 -4
  378. package/src/Form/Form.test.js +0 -23
  379. package/src/Form/FormBasedPreventNavigation.js +0 -25
  380. package/src/Form/ServerErrorContext.js +0 -7
  381. package/src/Form/index.js +0 -3
  382. package/src/FormGroup.js +0 -30
  383. package/src/FormGroupWrapper.js +0 -28
  384. package/src/FormInput/FormInput.js +0 -145
  385. package/src/FormInput/FormInput.test.js +0 -66
  386. package/src/FormInput/__snapshots__/FormInput.test.js.snap +0 -323
  387. package/src/FormInput/form-input.scss +0 -9
  388. package/src/FormInput/index.js +0 -2
  389. package/src/FormInputArray/FormInputArray.js +0 -224
  390. package/src/FormInputArray/FormInputArray.test.js +0 -108
  391. package/src/FormInputArray/__snapshots__/FormInputArray.test.js.snap +0 -52
  392. package/src/FormInputArray/form-input-array.scss +0 -13
  393. package/src/FormInputArray/index.js +0 -2
  394. package/src/FormSection.js +0 -13
  395. package/src/IconInput.js +0 -31
  396. package/src/InlineFormInput/InlineFormInput.js +0 -6
  397. package/src/InlineFormInput/InlineFormInput.test.js +0 -23
  398. package/src/InlineFormInput/__snapshots__/InlineFormInput.test.js.snap +0 -26
  399. package/src/InlineFormInput/index.js +0 -3
  400. package/src/InlineFormInput/inline-form-input.scss +0 -3
  401. package/src/MoneyInput/InlineMoneyInput.js +0 -7
  402. package/src/MoneyInput/MoneyInput.js +0 -7
  403. package/src/MoneyInput/MoneyInputs.test.js +0 -43
  404. package/src/MoneyInput/__snapshots__/MoneyInputs.test.js.snap +0 -81
  405. package/src/MoneyInput/index.js +0 -4
  406. package/src/MoneyInput/money-input.scss +0 -3
  407. package/src/MoneyInput/moneyInputProps.js +0 -12
  408. package/src/NestedFormFieldContext.js +0 -6
  409. package/src/ReactSelectField/ReactSelectField.js +0 -122
  410. package/src/ReactSelectField/index.js +0 -6
  411. package/src/ReactSelectField/react-select-field.scss +0 -5
  412. package/src/SubmitFormButton.js +0 -28
  413. package/src/__Tests__/FormTestBase.js +0 -14
  414. package/src/__Tests__/IconInput.test.js +0 -23
  415. package/src/__Tests__/__snapshots__/IconInput.test.js.snap +0 -38
  416. package/src/index.js +0 -45
  417. package/src/selectors.js +0 -3
  418. package/src/useStandardFormInput.js +0 -118
  419. package/src/utils/index.js +0 -3
  420. package/src/utils/typeChecks.js +0 -18
  421. package/src/validators/index.js +0 -2
  422. package/src/validators/validators.js +0 -93
package/es/normalizers.js DELETED
@@ -1,39 +0,0 @@
1
- export var phoneNumber = function phoneNumber(value) {
2
- if (!value) {
3
- return value;
4
- }
5
-
6
- var onlyNums = value.replace(/[^\d]/g, '');
7
-
8
- if (onlyNums.length <= 3) {
9
- return onlyNums;
10
- }
11
-
12
- if (onlyNums.length <= 7) {
13
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3));
14
- }
15
-
16
- if (onlyNums.length <= 10) {
17
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3, 6), "-").concat(onlyNums.slice(6, 10));
18
- }
19
-
20
- if (onlyNums.length <= 13) {
21
- var countryCodeLength = onlyNums - 10;
22
- 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));
23
- }
24
-
25
- return onlyNums;
26
- };
27
- export var zipCode = function zipCode(value) {
28
- if (!value) {
29
- return value;
30
- }
31
-
32
- var onlyNums = value.replace(/[^\d]/g, '');
33
-
34
- if (onlyNums.length > 5) {
35
- return onlyNums.substring(0, 5) + '-' + onlyNums.substring(5, 9);
36
- }
37
-
38
- return onlyNums;
39
- };
package/es/selectors.js DELETED
@@ -1,6 +0,0 @@
1
- export var getForm = function getForm(state, ownProps) {
2
- return state.form[ownProps.form];
3
- };
4
- export var getRegisteredFields = function getRegisteredFields(state, ownProps) {
5
- return getForm(state, ownProps) ? getForm(state, ownProps).registeredFields : {};
6
- };
@@ -1,119 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["id", "name", "disabled", "validate", "normalize"],
4
- _excluded2 = ["onChange", "value"];
5
- import { useField, useFormikContext } from 'formik';
6
- import { useContext, useEffect } from 'react';
7
- import NestedFormFieldContext from './NestedFormFieldContext';
8
- import { ServerErrorContext } from './Form'; // provides a consistent way to deal with all form fields (non array)
9
-
10
- export default function useStandardFormInput(_ref) {
11
- var providedId = _ref.id,
12
- providedName = _ref.name,
13
- disabled = _ref.disabled,
14
- validate = _ref.validate,
15
- normalize = _ref.normalize,
16
- props = _objectWithoutProperties(_ref, _excluded);
17
-
18
- // because the formik errors are evaluated all at the same time we need to keep server errors separate
19
- var _useContext = useContext(ServerErrorContext),
20
- getServerError = _useContext.getError,
21
- setServerError = _useContext.setError; // ensure that form section values are obeyed, e.g. homeAddress.zipCode
22
-
23
-
24
- var parentFormFieldContext = useContext(NestedFormFieldContext);
25
- var name = parentFormFieldContext ? "".concat(parentFormFieldContext, ".").concat(providedName) : providedName; // ensure that nested contexts don't have duplicate id issues when an id is specified
26
-
27
- var id = providedId && parentFormFieldContext ? "".concat(parentFormFieldContext, ".").concat(providedId) : providedId; // ensure that our custom validation rules are handled
28
- // e.g. we allow arrays of validators
29
-
30
- var _useField = useField(Object.assign({
31
- name: name,
32
- id: id
33
- }, props, {
34
- validate: callAllValidators
35
- })),
36
- _useField2 = _slicedToArray(_useField, 2),
37
- _useField2$ = _useField2[0],
38
- formikOnChange = _useField2$.onChange,
39
- value = _useField2$.value,
40
- formikProps = _objectWithoutProperties(_useField2$, _excluded2),
41
- meta = _useField2[1];
42
-
43
- var _useFormikContext = useFormikContext(),
44
- setFieldValue = _useFormikContext.setFieldValue,
45
- isSubmitting = _useFormikContext.isSubmitting; // these are the props we expect consumers of this hook to pass directly to the input (or other control)
46
-
47
-
48
- var inputProps = Object.assign({}, props, formikProps, {
49
- // ensure that we don't send a undefined / null - which signals to react that we are uncontrolled
50
- // also, pass any direct from server props through normalize without making the form dirty (e.g. phone number)
51
- value: value === undefined || value === null ? '' : normalize && normalize(value) || value,
52
- // ensure the id is set if not provided
53
- id: id ? id : name,
54
- // ensure we can handle both events from direct inputs and controlled ones like react select AND normalize
55
- onChange: handleChange,
56
- onBlur: handleBlur,
57
- disabled: disabled
58
- });
59
- useEffect(function () {
60
- if (!meta.touched && isSubmitting) {
61
- // because we do not always register all fields up front.
62
- // e.g. formik expects even a 'create' form to have all fields given, at least, blank values
63
- // that seems to be how it touches on submit:
64
- // see: https://codesandbox.io/s/formik-example-4n7n8 vs https://codesandbox.io/s/formik-example-kttk5
65
- // note in particular the change in line 24
66
- // thus, we manually touch all fields here by calling onBlur
67
- // there is a "setFieldTouched" from useFormikContext but it doesn't appear to work on field arrays
68
- handleBlur();
69
- }
70
- });
71
- var resultMeta = Object.assign({}, meta, {
72
- error: getServerError(name) || (meta.touched ? meta.error : null)
73
- });
74
- return [inputProps, resultMeta];
75
-
76
- function handleBlur(e) {
77
- // some components are fully controlled and do not return synthetic events on blur
78
- if (!e || !e.target) {
79
- formikProps.onBlur({
80
- target: {
81
- name: name
82
- }
83
- });
84
- } else {
85
- formikProps.onBlur(e);
86
- }
87
- }
88
-
89
- function handleChange(e) {
90
- if (disabled) {
91
- return;
92
- } // some components are fully controlled and do not return synthetic events (e.g. ReactSelect) on change
93
- // we should handle all our normal cases here to normalize / get the value / etc
94
-
95
-
96
- var value = e && e.target ? e.target.type === 'checkbox' ? e.target.checked : e.target.value : e;
97
- var normalized = normalize ? normalize(value) : value;
98
- setFieldValue(name, normalized);
99
- setServerError(name, null);
100
- }
101
-
102
- function callAllValidators(value) {
103
- if (disabled || !validate) {
104
- return;
105
- }
106
-
107
- if (!Array.isArray(validate)) {
108
- return validate(value);
109
- }
110
-
111
- for (var i = 0; i < validate.length; i++) {
112
- var result = validate[i](value);
113
-
114
- if (result) {
115
- return result;
116
- }
117
- }
118
- }
119
- }
package/es/utils/index.js DELETED
@@ -1,3 +0,0 @@
1
- import objectToFormData from './objectToFormData';
2
- import objectContainsNonSerializableProperty from './objectContainsNonSerializableProperty';
3
- export { objectToFormData, objectContainsNonSerializableProperty };
@@ -1,2 +0,0 @@
1
- import * as validators from './validators';
2
- export default validators;
@@ -1,94 +0,0 @@
1
- import _typeof from "@babel/runtime/helpers/esm/typeof";
2
- export var required = function required(value) {
3
- return value || value === false || value === 0 ? undefined : 'Required';
4
- }; //asserts that the value is a certain number of characters. numbers are coerced to a string
5
-
6
- export var length = function length(len) {
7
- return function (value) {
8
- var val = value;
9
-
10
- var type = _typeof(val);
11
-
12
- switch (type) {
13
- case 'undefined':
14
- return undefined;
15
-
16
- case 'string':
17
- break;
18
-
19
- case 'number':
20
- val = val.toString();
21
- break;
22
-
23
- default:
24
- console.error("Invalid value type: ".concat(type, " passed to length validator"));
25
- }
26
-
27
- return val.length === len ? undefined : "Length must be ".concat(len);
28
- };
29
- };
30
- export var integer = function integer(val) {
31
- if (!Number.isInteger(parseFloat(val))) {
32
- return 'Must be a whole number';
33
- }
34
- };
35
- export var maxLength = function maxLength(length) {
36
- return function (value) {
37
- if (value) {
38
- return value.length <= length ? undefined : "Maximum length ".concat(length, " exceeded");
39
- } else {
40
- return undefined;
41
- }
42
- };
43
- };
44
- export function maxCount(count) {
45
- return function (value) {
46
- return !value || value.filter(function (x) {
47
- return !x.isDeleted;
48
- }).length <= count ? undefined : "Should not have more than ".concat(count);
49
- };
50
- }
51
- export function minCount(count) {
52
- return function (value) {
53
- return value && value.filter(function (x) {
54
- return !x.isDeleted;
55
- }).length >= count ? undefined : "Should have at least ".concat(count);
56
- };
57
- }
58
- export var maxValue = function maxValue(value) {
59
- return function (inputValue) {
60
- if (inputValue && value) {
61
- return inputValue <= value ? undefined : "Maximum value ".concat(value, " exceeded");
62
- } else {
63
- return undefined;
64
- }
65
- };
66
- };
67
- export var minValue = function minValue(value) {
68
- return function (inputValue) {
69
- if (inputValue && value) {
70
- return inputValue >= value ? undefined : "Minimum value ".concat(value, " not met");
71
- } else {
72
- return undefined;
73
- }
74
- };
75
- };
76
- export var zipCode = function zipCode(value) {
77
- return value && !/^[0-9]{5}(?:-[0-9]{4})?$/.test(value) ? 'Invalid ZIP Code' : undefined;
78
- }; //one of the validators provided must be true
79
-
80
- export var any = function any() {
81
- for (var _len = arguments.length, validatorList = new Array(_len), _key = 0; _key < _len; _key++) {
82
- validatorList[_key] = arguments[_key];
83
- }
84
-
85
- return function (value) {
86
- if (validatorList.length === 0 || !value) {
87
- return;
88
- }
89
-
90
- return validatorList.reduce(function (isAnyTrue, any) {
91
- return isAnyTrue ? isAnyTrue : any(value);
92
- }, false);
93
- };
94
- };
@@ -1,13 +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 _AddressInput = _interopRequireDefault(require("./AddressInput"));
11
-
12
- var _default = _AddressInput["default"];
13
- exports["default"] = _default;
@@ -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
- exports["default"] = BoolInput;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _boolOptions = _interopRequireDefault(require("./boolOptions"));
15
-
16
- var _FormInput = _interopRequireDefault(require("../FormInput"));
17
-
18
- function BoolInput(props) {
19
- return /*#__PURE__*/_react["default"].createElement(_FormInput["default"], (0, _extends2["default"])({
20
- options: _boolOptions["default"],
21
- type: "select"
22
- }, props));
23
- }
@@ -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
- exports["default"] = InlineBoolInput;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _boolOptions = _interopRequireDefault(require("./boolOptions"));
15
-
16
- var _InlineFormInput = _interopRequireDefault(require("../InlineFormInput"));
17
-
18
- function InlineBoolInput(props) {
19
- return /*#__PURE__*/_react["default"].createElement(_InlineFormInput["default"], (0, _extends2["default"])({
20
- options: _boolOptions["default"],
21
- type: "select"
22
- }, props));
23
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var boolOptions = [{
8
- label: 'Yes',
9
- value: true
10
- }, {
11
- label: 'No',
12
- value: false
13
- }];
14
- var _default = boolOptions;
15
- exports["default"] = _default;
@@ -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, "BoolInput", {
9
- enumerable: true,
10
- get: function get() {
11
- return _BoolInput["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "InlineBoolInput", {
15
- enumerable: true,
16
- get: function get() {
17
- return _InlineBoolInput["default"];
18
- }
19
- });
20
-
21
- var _BoolInput = _interopRequireDefault(require("./BoolInput"));
22
-
23
- var _InlineBoolInput = _interopRequireDefault(require("./InlineBoolInput"));
@@ -1,13 +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 _ConfirmBaseForm = _interopRequireDefault(require("./ConfirmBaseForm"));
11
-
12
- var _default = _ConfirmBaseForm["default"];
13
- exports["default"] = _default;
@@ -1,13 +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 _ConfirmDeleteForm = _interopRequireDefault(require("./ConfirmDeleteForm"));
11
-
12
- var _default = _ConfirmDeleteForm["default"];
13
- exports["default"] = _default;
@@ -1,13 +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 _DatePickerInput = _interopRequireDefault(require("./DatePickerInput"));
11
-
12
- var _default = _DatePickerInput["default"];
13
- exports["default"] = _default;
@@ -1,20 +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"] = ErrorScrollTarget;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- function ErrorScrollTarget(props) {
13
- var divId = "".concat(props.name.toLowerCase(), "-error-scroll-target");
14
- return /*#__PURE__*/_react["default"].createElement("div", {
15
- id: divId,
16
- style: {
17
- display: 'none'
18
- }
19
- });
20
- }
@@ -1,47 +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"] = DefaultFileList;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _reactstrap = require("reactstrap");
13
-
14
- function DefaultFileList(_ref) {
15
- var files = _ref.files,
16
- _ref$rejectedFiles = _ref.rejectedFiles,
17
- rejectedFiles = _ref$rejectedFiles === void 0 ? [] : _ref$rejectedFiles;
18
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.ListGroup, null, files.map(function (file) {
19
- return /*#__PURE__*/_react["default"].createElement(Group, {
20
- key: file.path,
21
- item: file,
22
- warning: false
23
- });
24
- }), rejectedFiles.map(function (_ref2) {
25
- var file = _ref2.file;
26
- return /*#__PURE__*/_react["default"].createElement(Group, {
27
- key: file.path,
28
- item: file,
29
- warning: true
30
- });
31
- }));
32
- }
33
-
34
- function Group(_ref3) {
35
- var item = _ref3.item,
36
- warning = _ref3.warning;
37
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.ListGroupItem, {
38
- color: "d-flex ".concat(warning ? 'warning' : 'success', " justify-content-between list-group-item ").concat(warning ? 'list-group-item-warning' : 'list-group-item-success', " px-3 py-1 rounded-1")
39
- }, /*#__PURE__*/_react["default"].createElement("span", {
40
- className: "d-flex justify-content-between w-100"
41
- }, /*#__PURE__*/_react["default"].createElement("span", null, item.name), " ", /*#__PURE__*/_react["default"].createElement("span", null, humanFileSize(item.size))));
42
- }
43
-
44
- function humanFileSize(size) {
45
- var i = Math.floor(Math.log(size) / Math.log(1024));
46
- return (size / Math.pow(1024, i)).toFixed(2) * 1 + ' ' + ['B', 'KB', 'MB', 'GB', 'TB'][i];
47
- }
@@ -1,75 +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"] = DropzoneFileInput;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
-
14
- var _readOnlyError2 = _interopRequireDefault(require("@babel/runtime/helpers/readOnlyError"));
15
-
16
- var _react = _interopRequireDefault(require("react"));
17
-
18
- var _reactDropzone = require("react-dropzone");
19
-
20
- var _classnames = _interopRequireDefault(require("classnames"));
21
-
22
- var _DefaultFileList = _interopRequireDefault(require("./DefaultFileList"));
23
-
24
- var _excluded = ["className", "onChange", "value", "accept", "disabled", "multiple", "FileList", "placeholder", "dropzone"];
25
-
26
- function DropzoneFileInput(_ref) {
27
- var classNameProp = _ref.className,
28
- onChange = _ref.onChange,
29
- value = _ref.value,
30
- accept = _ref.accept,
31
- disabled = _ref.disabled,
32
- _ref$multiple = _ref.multiple,
33
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
34
- _ref$FileList = _ref.FileList,
35
- FileList = _ref$FileList === void 0 ? _DefaultFileList["default"] : _ref$FileList,
36
- _ref$placeholder = _ref.placeholder,
37
- placeholder = _ref$placeholder === void 0 ? 'Drag and drop some file(s) here, or click to select file(s)' : _ref$placeholder,
38
- dropzone = _ref.dropzone,
39
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
40
-
41
- var _useDropzone = (0, _reactDropzone.useDropzone)({
42
- accept: accept,
43
- onDrop: onDrop,
44
- disabled: disabled,
45
- multiple: multiple
46
- }),
47
- _useDropzone$accepted = _useDropzone.acceptedFiles,
48
- acceptedFiles = _useDropzone$accepted === void 0 ? (acceptedFiles[0], (0, _readOnlyError2["default"])("acceptedFiles")) : _useDropzone$accepted,
49
- _useDropzone$fileReje = _useDropzone.fileRejections,
50
- fileRejections = _useDropzone$fileReje === void 0 ? fileRejections.push(acceptedFiles.slice(1, acceptedFiles.length)) : _useDropzone$fileReje,
51
- getRootProps = _useDropzone.getRootProps,
52
- getInputProps = _useDropzone.getInputProps,
53
- isDragAccept = _useDropzone.isDragAccept,
54
- isDragReject = _useDropzone.isDragReject;
55
-
56
- function onDrop(acceptedFiles) {
57
- if (!(acceptedFiles !== null && acceptedFiles !== void 0 && acceptedFiles.length) > 1 && !multiple) {
58
- onChange(null);
59
- } else {
60
- onChange(acceptedFiles);
61
- }
62
- }
63
-
64
- var className = (0, _classnames["default"])('react-dropzone', classNameProp, {
65
- accept: isDragAccept,
66
- reject: isDragReject,
67
- disabled: disabled
68
- });
69
- return /*#__PURE__*/_react["default"].createElement("section", {
70
- className: className
71
- }, /*#__PURE__*/_react["default"].createElement("div", getRootProps(), /*#__PURE__*/_react["default"].createElement("input", (0, _extends2["default"])({}, props, getInputProps())), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, placeholder), !multiple && /*#__PURE__*/_react["default"].createElement("b", null, "Only one file accepted."), accept && /*#__PURE__*/_react["default"].createElement("b", null, "Files of type \"".concat(accept, "\" accepted"))), /*#__PURE__*/_react["default"].createElement("aside", null, /*#__PURE__*/_react["default"].createElement(FileList, {
72
- files: acceptedFiles,
73
- rejectedFiles: fileRejections
74
- })));
75
- }
@@ -1,82 +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"] = FileInput;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _DefaultFileList = _interopRequireDefault(require("./DefaultFileList"));
23
-
24
- var _excluded = ["className", "onChange", "value", "multiple"];
25
-
26
- 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); }
27
-
28
- 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; }
29
-
30
- function FileInput(_ref) {
31
- var className = _ref.className,
32
- onChange = _ref.onChange,
33
- value = _ref.value,
34
- _ref$multiple = _ref.multiple,
35
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
36
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
37
- var inputRef = (0, _react.useRef)();
38
-
39
- var _useState = (0, _react.useState)([]),
40
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
41
- acceptedFiles = _useState2[0],
42
- setAcceptedFiles = _useState2[1];
43
-
44
- (0, _react.useEffect)(function () {
45
- if (!value && inputRef.current) {
46
- inputRef.current.value = null;
47
- }
48
- }, [value]);
49
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
50
- className: "custom-file file-input ".concat(className || '', " ").concat(props.disabled ? 'disabled' : '')
51
- }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("input", (0, _extends2["default"])({
52
- ref: inputRef,
53
- type: "file",
54
- className: "custom-file-input",
55
- onChange: handleChange,
56
- multiple: multiple
57
- }, props))), /*#__PURE__*/_react["default"].createElement("label", {
58
- className: "custom-file-label"
59
- }, /*#__PURE__*/_react["default"].createElement("div", null, !value && /*#__PURE__*/_react["default"].createElement("span", null, "Choose A File..."), value && (!multiple ? /*#__PURE__*/_react["default"].createElement("span", null, value.name, " - size: ", humanFileSize(value.size)) : value.length === 1 ? /*#__PURE__*/_react["default"].createElement("span", null, value[0].name, " - size: ", humanFileSize(value[0].size)) : /*#__PURE__*/_react["default"].createElement("span", null, "Multiple files selected."))))), /*#__PURE__*/_react["default"].createElement(_DefaultFileList["default"], {
60
- files: acceptedFiles
61
- }));
62
-
63
- function handleChange(e) {
64
- if (e == null || !e.target || !e.target.files.length) {
65
- onChange(null);
66
- } else {
67
- var files = (0, _toConsumableArray2["default"])(e.target.files);
68
- setAcceptedFiles(files);
69
-
70
- if (!multiple) {
71
- onChange(files[0]);
72
- } else {
73
- onChange(files);
74
- }
75
- }
76
- }
77
- }
78
-
79
- function humanFileSize(size) {
80
- var i = Math.floor(Math.log(size) / Math.log(1024));
81
- return (size / Math.pow(1024, i)).toFixed(2) * 1 + ' ' + ['B', 'KB', 'MB', 'GB', 'TB'][i];
82
- }
@@ -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, "FileInput", {
9
- enumerable: true,
10
- get: function get() {
11
- return _FileInput["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "DropzoneFileInput", {
15
- enumerable: true,
16
- get: function get() {
17
- return _DropzoneFileInput["default"];
18
- }
19
- });
20
-
21
- var _FileInput = _interopRequireDefault(require("./FileInput"));
22
-
23
- var _DropzoneFileInput = _interopRequireDefault(require("./DropzoneFileInput"));