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
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { SelectGroupPropsHelper } from './SelectGroupPropsHelper';
3
+ export interface MultiStringSelectGroupProps extends SelectGroupPropsHelper<string[]> {
4
+ }
5
+ export declare function MultiStringSelectGroup(props: MultiStringSelectGroupProps): JSX.Element;
6
+ export interface SingleStringSelectGroupProps extends SelectGroupPropsHelper<string> {
7
+ }
8
+ export declare function SingleStringSelectGroup(props: SingleStringSelectGroupProps): JSX.Element;
@@ -0,0 +1,19 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import SelectGroup from './SelectGroup';
14
+ export function MultiStringSelectGroup(props) {
15
+ return _jsx(SelectGroup, __assign({ multiple: true }, props));
16
+ }
17
+ export function SingleStringSelectGroup(props) {
18
+ return _jsx(SelectGroup, __assign({ multiple: false }, props));
19
+ }
@@ -0,0 +1,6 @@
1
+ import { MouseEventHandler } from 'react';
2
+ export interface StandardFormActionsProps {
3
+ allowPristineSubmit?: boolean;
4
+ handleCancel?: MouseEventHandler<HTMLButtonElement>;
5
+ }
6
+ export default function StandardFormActions({ allowPristineSubmit, handleCancel, }: StandardFormActionsProps): JSX.Element;
@@ -1,24 +1,23 @@
1
- import React from 'react';
2
- import { Button } from 'reactstrap';
3
- import { useFormikContext } from 'formik';
4
- import SubmitFormButton from './SubmitFormButton';
5
- export default function StandardFormActions(_ref) {
6
- var allowPristineSubmit = _ref.allowPristineSubmit,
7
- handleCancel = _ref.handleCancel;
8
-
9
- var _useFormikContext = useFormikContext(),
10
- isSubmitting = _useFormikContext.isSubmitting;
11
-
12
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SubmitFormButton, {
13
- allowPristineSubmit: allowPristineSubmit
14
- }), "\xA0", /*#__PURE__*/React.createElement(Button, {
15
- type: "button",
16
- color: "link",
17
- disabled: isSubmitting,
18
- onClick: handleCancel || goBack
19
- }, "Cancel"));
20
-
21
- function goBack() {
22
- window.history.back();
23
- }
24
- }
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import classNames from 'classnames';
14
+ import { useFormikContext } from 'formik';
15
+ import SubmitFormButton from './SubmitFormButton';
16
+ export default function StandardFormActions(_a) {
17
+ var allowPristineSubmit = _a.allowPristineSubmit, handleCancel = _a.handleCancel;
18
+ var isSubmitting = useFormikContext().isSubmitting;
19
+ return (_jsxs(_Fragment, { children: [_jsx(SubmitFormButton, { allowPristineSubmit: allowPristineSubmit }), "\u00A0", _jsx("button", __assign({ className: classNames('standard-form-actions-cancel-button'), type: "button", disabled: isSubmitting, onClick: handleCancel || goBack }, { children: "Cancel" }))] }));
20
+ function goBack() {
21
+ window.history.back();
22
+ }
23
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ export interface SubmitFormButtonProps extends Omit<React.HTMLProps<HTMLButtonElement>, 'type'> {
3
+ allowPristineSubmit?: boolean;
4
+ children?: React.ReactNode;
5
+ }
6
+ declare const _default: React.ComponentType<SubmitFormButtonProps>;
7
+ export default _default;
@@ -1,23 +1,37 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["allowPristineSubmit", "children"];
4
- import React from 'react';
5
- import { Button } from 'reactstrap';
6
- import { useFormikContext } from 'formik';
7
- export default function SubmitFormButton(_ref) {
8
- var allowPristineSubmit = _ref.allowPristineSubmit,
9
- children = _ref.children,
10
- props = _objectWithoutProperties(_ref, _excluded);
11
-
12
- var _useFormikContext = useFormikContext(),
13
- isSubmitting = _useFormikContext.isSubmitting,
14
- dirty = _useFormikContext.dirty;
15
-
16
- var preventSubmit = !dirty && !allowPristineSubmit || isSubmitting;
17
- return /*#__PURE__*/React.createElement(Button, _extends({
18
- type: "submit",
19
- color: "primary",
20
- disabled: preventSubmit,
21
- title: isSubmitting ? 'Loading, please wait...' : preventSubmit ? "You haven't made any changes" : ''
22
- }, props), children || 'Submit');
23
- }
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import { jsx as _jsx } from "react/jsx-runtime";
24
+ import React from 'react';
25
+ import classNames from 'classnames';
26
+ import { useFormikContext } from 'formik';
27
+ function SubmitFormButton(_a, ref) {
28
+ var allowPristineSubmit = _a.allowPristineSubmit, children = _a.children, disabled = _a.disabled, title = _a.title, className = _a.className, props = __rest(_a, ["allowPristineSubmit", "children", "disabled", "title", "className"]);
29
+ var _b = useFormikContext(), isSubmitting = _b.isSubmitting, dirty = _b.dirty;
30
+ var preventSubmit = (!dirty && !allowPristineSubmit) || isSubmitting;
31
+ return (_jsx("button", __assign({}, props, { ref: ref, type: "submit", disabled: preventSubmit || disabled, title: title || isSubmitting
32
+ ? 'Loading, please wait...'
33
+ : preventSubmit
34
+ ? "You haven't made any changes"
35
+ : '', className: classNames('submit-form-button', className) }, { children: children || 'Submit' })));
36
+ }
37
+ export default React.forwardRef(SubmitFormButton);
@@ -0,0 +1,6 @@
1
+ import { ValidationError } from './ValidationError';
2
+ /** The root result from a typical envoc API call when forms are returned */
3
+ export interface ValidatedApiResult {
4
+ validationFailures?: ValidationError[];
5
+ hasErrors?: boolean;
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ /** Represents a server side validation failure - only 'standard' for envoc */
2
+ export interface ValidationError {
3
+ propertyName?: string;
4
+ errorMessage?: string;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ /** Client side validation function */
2
+ export interface ValidationFunction<TValue> {
3
+ (value: TValue): string | undefined;
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,15 @@
1
+ import { ValidationFunction } from './ValidationFunction';
2
+ export declare const required: (value: any) => "Required" | undefined;
3
+ export declare const length: (len: number) => (value: string | number | undefined) => string | undefined;
4
+ export declare const integer: (val: string | undefined) => "Must be a whole number" | undefined;
5
+ export declare const maxLength: (len: number) => (value: string | number | undefined) => string | undefined;
6
+ export declare const maxCount: (count: number) => (value: {
7
+ isDeleted?: boolean;
8
+ }[] | undefined) => string | undefined;
9
+ export declare const minCount: (count: number) => (value: {
10
+ isDeleted?: boolean;
11
+ }[] | undefined) => string | undefined;
12
+ export declare const maxValue: (max: number) => (value: number | undefined) => string | undefined;
13
+ export declare const minValue: (min: number) => (value: number | undefined) => string | undefined;
14
+ export declare const zipCode: (value: string | undefined) => "Invalid ZIP Code" | undefined;
15
+ export declare const any: <TValue>(validatorList: ValidationFunction<TValue>[]) => (value: TValue) => string | undefined;
@@ -0,0 +1,73 @@
1
+ export var required = function (value) {
2
+ return Array.isArray(value)
3
+ ? value.length > 0
4
+ ? undefined
5
+ : 'Required'
6
+ : value || value === false || value === 0
7
+ ? undefined
8
+ : 'Required';
9
+ };
10
+ //asserts that the value is a certain number of characters. numbers are coerced to a string
11
+ export var length = function (len) { return function (value) {
12
+ var hasError = getLengthOfValue(value) !== len;
13
+ return !hasError ? undefined : "Length must be ".concat(len);
14
+ }; };
15
+ export var integer = function (val) {
16
+ if (!val) {
17
+ return undefined;
18
+ }
19
+ if (!Number.isInteger(parseFloat(val))) {
20
+ return 'Must be a whole number';
21
+ }
22
+ };
23
+ export var maxLength = function (len) { return function (value) {
24
+ var hasError = getLengthOfValue(value) > len;
25
+ return !hasError ? undefined : "Maximum length ".concat(len, " exceeded");
26
+ }; };
27
+ export var maxCount = function (count) { return function (value) {
28
+ var hasError = !!value && value.filter(function (x) { return !x.isDeleted; }).length > count;
29
+ return !hasError ? undefined : "Should not have more than ".concat(count);
30
+ }; };
31
+ export var minCount = function (count) { return function (value) {
32
+ var hasError = !value || value.filter(function (x) { return !x.isDeleted; }).length < count;
33
+ return !hasError ? undefined : "Should have at least ".concat(count);
34
+ }; };
35
+ export var maxValue = function (max) { return function (value) {
36
+ var hasError = !!value && value > max;
37
+ return !hasError ? undefined : "Maximum value ".concat(max, " exceeded");
38
+ }; };
39
+ export var minValue = function (min) { return function (value) {
40
+ var hasError = !value || value < min;
41
+ return !hasError ? undefined : "Minimum value ".concat(min, " not met");
42
+ }; };
43
+ export var zipCode = function (value) {
44
+ return value && !/^[0-9]{5}(?:-[0-9]{4})?$/.test(value)
45
+ ? 'Invalid ZIP Code'
46
+ : undefined;
47
+ };
48
+ //one of the validators provided must be true
49
+ export var any = function (validatorList) {
50
+ return function (value) {
51
+ if (validatorList.length === 0 || !value) {
52
+ return;
53
+ }
54
+ return validatorList.reduce(function (isAnyTrue, x) { return (isAnyTrue ? isAnyTrue : x(value)); }, undefined);
55
+ };
56
+ };
57
+ function getLengthOfValue(value) {
58
+ switch (typeof value) {
59
+ case 'undefined':
60
+ return 0;
61
+ case 'string':
62
+ return value.length;
63
+ case 'number':
64
+ // TODO: this seems iffy to me - what if the actual visible value is a fixed length or some special format (e.g. with commas?)
65
+ return value.toString().length;
66
+ default:
67
+ assertUnreachable(value);
68
+ return 0;
69
+ }
70
+ }
71
+ function assertUnreachable(x) {
72
+ return null;
73
+ }
@@ -0,0 +1,27 @@
1
+ /// <reference types="react" />
2
+ import '@testing-library/jest-dom/extend-expect';
3
+ import { DateOnly, FormBuilderProp } from '../../src';
4
+ interface FormTestBaseProps<TForm extends object> {
5
+ children: (formBuilder: FormBuilderProp<TForm>) => JSX.Element;
6
+ initialValues?: TForm;
7
+ }
8
+ export default function FormTestBase<TForm extends PersonDto>({ children, initialValues, }: FormTestBaseProps<TForm>): JSX.Element;
9
+ interface PersonDto {
10
+ name?: string | undefined;
11
+ nameWithIcon?: string | undefined;
12
+ numberOfArms?: number;
13
+ phoneNumber?: string;
14
+ yearlySalaryUSD?: number;
15
+ isCool?: boolean;
16
+ gradDate?: DateOnly;
17
+ favoriteDate?: DateOnly;
18
+ favoriteNumber?: number;
19
+ favoriteColor?: string;
20
+ favoriteColors?: string[];
21
+ favoriteNames?: string[];
22
+ allowLogin?: boolean;
23
+ userRoles?: number[];
24
+ profileImage?: any;
25
+ favoritePictures?: any[];
26
+ }
27
+ export {};
@@ -1,12 +1,83 @@
1
- import '@testing-library/jest-dom/extend-expect';
2
- import React from 'react';
3
- import { HashRouter } from 'react-router-dom';
4
- import Form from '../Form';
5
- export default function FormTestBase(_ref) {
6
- var children = _ref.children,
7
- initialValues = _ref.initialValues;
8
- return /*#__PURE__*/React.createElement(HashRouter, null, /*#__PURE__*/React.createElement(Form, {
9
- onSubmit: function onSubmit() {},
10
- initialValues: initialValues
11
- }, children));
12
- }
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (_) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ import { jsx as _jsx } from "react/jsx-runtime";
49
+ import '@testing-library/jest-dom/extend-expect';
50
+ import { HashRouter } from 'react-router-dom';
51
+ import { Form } from '../../src';
52
+ export default function FormTestBase(_a) {
53
+ var children = _a.children, initialValues = _a.initialValues;
54
+ return (_jsx(HashRouter, { children: _jsx(Form, __assign({ onSubmit: onSubmit, initialValues: initialValues }, { children: children })) }));
55
+ function onSubmit(data) {
56
+ return __awaiter(this, void 0, void 0, function () {
57
+ var isFormData, result, apiResult;
58
+ return __generator(this, function (_a) {
59
+ switch (_a.label) {
60
+ case 0:
61
+ isFormData = data instanceof FormData;
62
+ return [4 /*yield*/, fetch('/api/submit', {
63
+ body: isFormData ? data : JSON.stringify(data),
64
+ method: 'POST',
65
+ headers: {
66
+ 'Content-Type': isFormData ? 'multipart/form-data' : 'application/json',
67
+ 'X-Show-Errors': "Errors go here",
68
+ },
69
+ })];
70
+ case 1:
71
+ result = _a.sent();
72
+ return [4 /*yield*/, result.json()];
73
+ case 2:
74
+ apiResult = _a.sent();
75
+ if (!apiResult.hasErrors) {
76
+ alert('submitted');
77
+ }
78
+ return [2 /*return*/, apiResult];
79
+ }
80
+ });
81
+ });
82
+ }
83
+ }
@@ -1,2 +1,2 @@
1
- import FormTestBase from './FormTestBase';
2
- export { FormTestBase };
1
+ import FormTestBase from './FormTestBase';
2
+ export { FormTestBase };
package/es/index.d.ts ADDED
@@ -0,0 +1,57 @@
1
+ export { default as AddressInput } from './AddressInput/AddressInput';
2
+ export type { AddressInputProps } from './AddressInput/AddressInput';
3
+ export { default as SubmitFormButton } from './SubmitFormButton';
4
+ export type { SubmitFormButtonProps } from './SubmitFormButton';
5
+ export { default as ConfirmBaseForm } from './ConfirmBaseForm/ConfirmBaseForm';
6
+ export type { ConfirmBaseFormProps } from './ConfirmBaseForm/ConfirmBaseForm';
7
+ export { default as ConfirmDeleteForm } from './ConfirmDeleteForm/ConfirmDeleteForm';
8
+ export type { ConfirmDeleteFormProps } from './ConfirmDeleteForm/ConfirmDeleteForm';
9
+ export { default as DatePickerInput } from './DatePickerInput/DatePickerInput';
10
+ export type { DatePickerInputProps, DateOnly } from './DatePickerInput/DatePickerInput';
11
+ export { default as Field } from './Field/Field';
12
+ export type { FieldProps } from './Field/Field';
13
+ export { default as FieldErrorScrollTarget } from './Field/FieldErrorScrollTarget';
14
+ export { FieldNameContext } from './Field/FieldNameContext';
15
+ export type { InjectedFieldProps } from './Field/InjectedFieldProps';
16
+ export { default as useStandardField } from './Field/useStandardField';
17
+ export type { useStandardFieldProps } from './Field/useStandardField';
18
+ export { default as FieldArray } from './FieldArray/FieldArray';
19
+ export type { FieldArrayProps, ArrayFormBuilderProp, } from './FieldArray/FieldArray';
20
+ export { default as FileGroup } from './File/FileGroup';
21
+ export type { FileGroupProps } from './File/FileGroup';
22
+ export { default as Form } from './Form/Form';
23
+ export type { FormBuilderProp, FormProps } from './Form/Form';
24
+ export { ServerErrorContext } from './Form/ServerErrorContext';
25
+ export type { ServerErrorContextProps, ServerErrors, } from './Form/ServerErrorContext';
26
+ export { default as FormActions } from './FormActions';
27
+ export type { FormActionsProps as FormActionsProps } from './FormActions';
28
+ export { default as Group } from './Group';
29
+ export type { GroupProps as GroupProps } from './Group';
30
+ export { default as IconInputGroup } from './Input/IconInputGroup';
31
+ export type { IconInputGroupProps } from './Input/IconInputGroup';
32
+ export { default as InputGroup } from './Input/InputGroup';
33
+ export type { InputGroupProps } from './Input/InputGroup';
34
+ export { default as MoneyInputGroup } from './Input/MoneyInputGroup';
35
+ export type { MoneyInputGroupProps } from './Input/MoneyInputGroup';
36
+ export { default as NumberInputGroup } from './Input/NumberInputGroup';
37
+ export type { NumberInputGroupProps } from './Input/NumberInputGroup';
38
+ export { default as StringInputGroup } from './Input/StringInputGroup';
39
+ export type { StringInputGroupProps } from './Input/StringInputGroup';
40
+ export type { NormalizationFunction } from './Normalization/NormalizationFunction';
41
+ export * as normalizers from './Normalization/normalizers';
42
+ export { default as SelectGroup } from './Select/SelectGroup';
43
+ export type { SelectGroupProps } from './Select/SelectGroup';
44
+ export { BooleanSelectGroup } from './Select/BooleanSelectGroup';
45
+ export type { BooleanSelectGroupProps } from './Select/BooleanSelectGroup';
46
+ export { MultiNumberSelectGroup, SingleNumberSelectGroup, } from './Select/NumberSelectGroup';
47
+ export type { MultiNumberSelectGroupProps, SingleNumberSelectGroupProps } from './Select/NumberSelectGroup';
48
+ export { MultiStringSelectGroup, SingleStringSelectGroup, } from './Select/StringSelectGroup';
49
+ export type { MultiStringSelectGroupProps, SingleStringSelectGroupProps } from './Select/StringSelectGroup';
50
+ export { default as objectContainsNonSerializableProperty } from './utils/objectContainsNonSerializableProperty';
51
+ export { default as serialize } from './utils/objectToFormData';
52
+ export type { ObjectToFormDataCfgProps } from './utils/objectToFormData';
53
+ export * from './utils/typeChecks';
54
+ export type { ValidatedApiResult } from './Validation/ValidatedApiResult';
55
+ export type { ValidationError } from './Validation/ValidationError';
56
+ export type { ValidationFunction } from './Validation/ValidationFunction';
57
+ export * as validators from './Validation/validators';
package/es/index.js CHANGED
@@ -1,20 +1,41 @@
1
- import * as normalizers from './normalizers';
2
- import { BoolInput, InlineBoolInput } from './BoolInput';
3
- import { InlineMoneyInput, MoneyInput } from './MoneyInput';
4
- import AddressInput from './AddressInput';
5
- import ConfirmBaseForm from './ConfirmBaseForm';
6
- import ConfirmDeleteForm from './ConfirmDeleteForm';
7
- import ErrorScrollTarget from './ErrorScrollTarget';
8
- import Form from './Form';
9
- import FormGroup from './FormGroup';
10
- import FormGroupWrapper from './FormGroupWrapper';
11
- import FormInput from './FormInput';
12
- import FormInputArray from './FormInputArray';
13
- import FormSection from './FormSection';
14
- import IconInput from './IconInput';
15
- import InlineFormInput from './InlineFormInput';
16
- import StandardFormActions from './StandardFormActions';
17
- import SubmitFormButton from './SubmitFormButton';
18
- import useStandardFormInput from './useStandardFormInput';
19
- import validators from './validators';
20
- export { AddressInput, BoolInput, ConfirmBaseForm, ConfirmDeleteForm, ErrorScrollTarget, Form, FormGroup, FormGroupWrapper, FormInput, FormInputArray, FormSection, IconInput, InlineBoolInput, InlineFormInput, InlineMoneyInput, MoneyInput, normalizers, StandardFormActions, SubmitFormButton, useStandardFormInput, validators };
1
+ // Address
2
+ export { default as AddressInput } from './AddressInput/AddressInput';
3
+ // Button
4
+ export { default as SubmitFormButton } from './SubmitFormButton';
5
+ // ConfirmBaseForm
6
+ export { default as ConfirmBaseForm } from './ConfirmBaseForm/ConfirmBaseForm';
7
+ // ConfirmDeleteForm
8
+ export { default as ConfirmDeleteForm } from './ConfirmDeleteForm/ConfirmDeleteForm';
9
+ // Date
10
+ export { default as DatePickerInput } from './DatePickerInput/DatePickerInput';
11
+ // Field
12
+ export { default as Field } from './Field/Field';
13
+ export { default as FieldErrorScrollTarget } from './Field/FieldErrorScrollTarget';
14
+ export { FieldNameContext } from './Field/FieldNameContext';
15
+ export { default as useStandardField } from './Field/useStandardField';
16
+ // Field Array
17
+ export { default as FieldArray } from './FieldArray/FieldArray';
18
+ // File
19
+ export { default as FileGroup } from './File/FileGroup';
20
+ // Form
21
+ export { default as Form } from './Form/Form';
22
+ export { ServerErrorContext } from './Form/ServerErrorContext';
23
+ export { default as FormActions } from './FormActions';
24
+ // Input
25
+ export { default as Group } from './Group';
26
+ export { default as IconInputGroup } from './Input/IconInputGroup';
27
+ export { default as InputGroup } from './Input/InputGroup';
28
+ export { default as MoneyInputGroup } from './Input/MoneyInputGroup';
29
+ export { default as NumberInputGroup } from './Input/NumberInputGroup';
30
+ export { default as StringInputGroup } from './Input/StringInputGroup';
31
+ export * as normalizers from './Normalization/normalizers';
32
+ // Select
33
+ export { default as SelectGroup } from './Select/SelectGroup';
34
+ export { BooleanSelectGroup } from './Select/BooleanSelectGroup';
35
+ export { MultiNumberSelectGroup, SingleNumberSelectGroup, } from './Select/NumberSelectGroup';
36
+ export { MultiStringSelectGroup, SingleStringSelectGroup, } from './Select/StringSelectGroup';
37
+ // Utils
38
+ export { default as objectContainsNonSerializableProperty } from './utils/objectContainsNonSerializableProperty';
39
+ export { default as serialize } from './utils/objectToFormData';
40
+ export * from './utils/typeChecks';
41
+ export * as validators from './Validation/validators';
@@ -0,0 +1 @@
1
+ export default function objectContainsNonSerializableProperty(object: any): boolean;
@@ -1,16 +1,14 @@
1
- import { isObject, isBlob, isFile } from './typeChecks';
2
- export default function objectContainsNonSerializableProperty(object) {
3
- return Object.entries(object).some(function (value) {
4
- if (value) {
5
- if (isBlob(value[1]) || isFile(value[1])) {
6
- return true;
7
- }
8
-
9
- if (isObject(value[1])) {
10
- return objectContainsNonSerializableProperty(value[1]);
11
- }
12
- }
13
-
14
- return false;
15
- });
16
- }
1
+ import { isBlob, isFile, isObject } from './typeChecks';
2
+ export default function objectContainsNonSerializableProperty(object) {
3
+ return Object.entries(object).some(function (value) {
4
+ if (value) {
5
+ if (isBlob(value[1]) || isFile(value[1])) {
6
+ return true;
7
+ }
8
+ if (isObject(value[1])) {
9
+ return objectContainsNonSerializableProperty(value[1]);
10
+ }
11
+ }
12
+ return false;
13
+ });
14
+ }
@@ -0,0 +1,10 @@
1
+ export interface ObjectToFormDataCfgProps {
2
+ indices: boolean;
3
+ dotNotation: boolean;
4
+ allowEmptyArrays: boolean;
5
+ noFileListBrackets: boolean;
6
+ nullsAsUndefineds?: boolean;
7
+ booleansAsIntegers?: boolean;
8
+ }
9
+ declare const serialize: (obj: any, cfg: ObjectToFormDataCfgProps, fd?: FormData | undefined, pre?: string | undefined) => FormData;
10
+ export default serialize;