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/lib/Form/index.js DELETED
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- Object.defineProperty(exports, "default", {
9
- enumerable: true,
10
- get: function get() {
11
- return _Form["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "ServerErrorContext", {
15
- enumerable: true,
16
- get: function get() {
17
- return _ServerErrorContext["default"];
18
- }
19
- });
20
-
21
- var _Form = _interopRequireDefault(require("./Form"));
22
-
23
- var _ServerErrorContext = _interopRequireDefault(require("./ServerErrorContext"));
package/lib/FormGroup.js DELETED
@@ -1,33 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _reactstrap = require("reactstrap");
13
-
14
- var FormGroup = function FormGroup(_ref) {
15
- var label = _ref.label,
16
- id = _ref.id,
17
- helpText = _ref.helpText,
18
- className = _ref.className,
19
- style = _ref.style,
20
- children = _ref.children,
21
- meta = _ref.meta;
22
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.FormGroup, {
23
- className: className,
24
- style: style
25
- }, !!meta.warning && /*#__PURE__*/_react["default"].createElement(_reactstrap.Alert, {
26
- color: "warning"
27
- }, meta.warning), label && /*#__PURE__*/_react["default"].createElement(_reactstrap.Label, {
28
- htmlFor: id
29
- }, label), children, meta.error && /*#__PURE__*/_react["default"].createElement(_reactstrap.FormFeedback, null, meta.error), helpText && /*#__PURE__*/_react["default"].createElement(_reactstrap.FormText, null, helpText));
30
- };
31
-
32
- var _default = FormGroup;
33
- exports["default"] = _default;
@@ -1,37 +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"] = FormGroupWrapper;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _reactstrap = require("reactstrap");
17
-
18
- var _FormGroup = _interopRequireDefault(require("./FormGroup"));
19
-
20
- var _ErrorScrollTarget = _interopRequireDefault(require("./ErrorScrollTarget"));
21
-
22
- var _excluded = ["prepend", "append", "Component", "helpText"];
23
-
24
- function FormGroupWrapper(_ref) {
25
- var prepend = _ref.prepend,
26
- append = _ref.append,
27
- Component = _ref.Component,
28
- helpText = _ref.helpText,
29
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
30
- var meta = props.meta;
31
- return /*#__PURE__*/_react["default"].createElement(_FormGroup["default"], (0, _extends2["default"])({
32
- meta: meta,
33
- helpText: helpText
34
- }, props), /*#__PURE__*/_react["default"].createElement(_ErrorScrollTarget["default"], {
35
- name: props.name
36
- }), prepend || append ? /*#__PURE__*/_react["default"].createElement(_reactstrap.InputGroup, null, prepend, /*#__PURE__*/_react["default"].createElement(Component, props), append) : /*#__PURE__*/_react["default"].createElement(Component, props));
37
- }
@@ -1,229 +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"] = FormInput;
9
- exports.optionCache = void 0;
10
-
11
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
-
13
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
14
-
15
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
16
-
17
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
18
-
19
- var _react = _interopRequireDefault(require("react"));
20
-
21
- var _classnames = _interopRequireDefault(require("classnames"));
22
-
23
- var _reactstrap = require("reactstrap");
24
-
25
- var _lruCache = _interopRequireDefault(require("lru-cache"));
26
-
27
- var _propTypes = _interopRequireDefault(require("prop-types"));
28
-
29
- var _reactTextareaAutosize = _interopRequireDefault(require("react-textarea-autosize"));
30
-
31
- var _envocRequest = require("envoc-request");
32
-
33
- var _FormGroupWrapper = _interopRequireDefault(require("../FormGroupWrapper"));
34
-
35
- var _DatePickerInput = _interopRequireDefault(require("../DatePickerInput"));
36
-
37
- var _ReactSelectField = _interopRequireDefault(require("../ReactSelectField"));
38
-
39
- var _useStandardFormInput3 = _interopRequireDefault(require("../useStandardFormInput"));
40
-
41
- var _FileInput = require("../FileInput");
42
-
43
- var _excluded = ["className", "meta", "helpText"],
44
- _excluded2 = ["meta"],
45
- _excluded3 = ["includeEmptyOption", "options"],
46
- _excluded4 = ["optionsUrl", "includeEmptyOption", "includeOtherOption", "cache", "maxAge"],
47
- _excluded5 = ["meta"],
48
- _excluded6 = ["helpText", "meta"];
49
-
50
- function FormInput(props) {
51
- var _useStandardFormInput = (0, _useStandardFormInput3["default"])(props),
52
- _useStandardFormInput2 = (0, _slicedToArray2["default"])(_useStandardFormInput, 2),
53
- input = _useStandardFormInput2[0],
54
- meta = _useStandardFormInput2[1];
55
-
56
- var className = props.className,
57
- hide = props.hide;
58
- return /*#__PURE__*/_react["default"].createElement(StandardFieldGroup, (0, _extends2["default"])({}, input, {
59
- className: (0, _classnames["default"])({
60
- 'd-none': hide
61
- }, className),
62
- meta: meta
63
- }));
64
- }
65
-
66
- FormInput.propTypes = {
67
- id: _propTypes["default"].string,
68
- label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
69
- name: _propTypes["default"].string.isRequired,
70
- placeholder: _propTypes["default"].string,
71
- helpText: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object])
72
- };
73
-
74
- function StandardFieldGroup(props) {
75
- switch (props.type) {
76
- case 'date':
77
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
78
- Component: DatePicker
79
- }));
80
-
81
- case 'select':
82
- if (props.optionsUrl) {
83
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
84
- Component: RemoteSelect
85
- }));
86
- } else {
87
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
88
- Component: Select
89
- }));
90
- }
91
-
92
- case 'checkbox':
93
- case 'radio':
94
- return Checkbox(props);
95
-
96
- case 'file':
97
- if (props.dropzone) {
98
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
99
- Component: _FileInput.DropzoneFileInput
100
- }));
101
- }
102
-
103
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
104
- Component: _FileInput.FileInput
105
- }));
106
-
107
- case 'textarea':
108
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
109
- Component: TextAreaInput
110
- }));
111
-
112
- default:
113
- return /*#__PURE__*/_react["default"].createElement(_FormGroupWrapper["default"], (0, _extends2["default"])({}, props, {
114
- Component: DefaultInput
115
- }));
116
- }
117
- }
118
-
119
- var TextAreaInput = function TextAreaInput(_ref) {
120
- var className = _ref.className,
121
- meta = _ref.meta,
122
- helpText = _ref.helpText,
123
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
124
- return /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], (0, _extends2["default"])({
125
- cacheMeasurements: true,
126
- className: (0, _classnames["default"])(className, 'form-control', meta.error ? 'is-invalid' : '')
127
- }, props));
128
- };
129
-
130
- var DefaultInput = function DefaultInput(_ref2) {
131
- var meta = _ref2.meta,
132
- props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
133
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.Input, (0, _extends2["default"])({
134
- invalid: !!meta.error
135
- }, props));
136
- };
137
-
138
- var Select = function Select(_ref3) {
139
- var _ref3$includeEmptyOpt = _ref3.includeEmptyOption,
140
- includeEmptyOption = _ref3$includeEmptyOpt === void 0 ? true : _ref3$includeEmptyOpt,
141
- options = _ref3.options,
142
- props = (0, _objectWithoutProperties2["default"])(_ref3, _excluded3);
143
- var allOptions = includeEmptyOption && !props.isMulti ? [{
144
- label: ' ',
145
- value: null
146
- }].concat((0, _toConsumableArray2["default"])(options)) : options;
147
- return /*#__PURE__*/_react["default"].createElement(_ReactSelectField["default"], (0, _extends2["default"])({}, props, {
148
- options: allOptions
149
- }));
150
- }; // low cache value just to prevent the same dropdown from hitting the API at the same time
151
- // TODO: global cache provider / "envoc-cache" instead of this static instance
152
-
153
-
154
- var optionCache = new _lruCache["default"]({
155
- max: 500,
156
- maxAge: 1000 * 10
157
- });
158
- exports.optionCache = optionCache;
159
-
160
- var RemoteSelect = function RemoteSelect(_ref4) {
161
- var optionsUrl = _ref4.optionsUrl,
162
- _ref4$includeEmptyOpt = _ref4.includeEmptyOption,
163
- includeEmptyOption = _ref4$includeEmptyOpt === void 0 ? true : _ref4$includeEmptyOpt,
164
- _ref4$includeOtherOpt = _ref4.includeOtherOption,
165
- includeOtherOption = _ref4$includeOtherOpt === void 0 ? false : _ref4$includeOtherOpt,
166
- _ref4$cache = _ref4.cache,
167
- cache = _ref4$cache === void 0 ? optionCache : _ref4$cache,
168
- _ref4$maxAge = _ref4.maxAge,
169
- maxAge = _ref4$maxAge === void 0 ? 1000 * 10 : _ref4$maxAge,
170
- props = (0, _objectWithoutProperties2["default"])(_ref4, _excluded4);
171
- var request = {
172
- method: 'get',
173
- url: optionsUrl,
174
- cache: cache,
175
- maxAge: maxAge,
176
- autoExecute: true
177
- };
178
- var webRequest = (0, _envocRequest.useAxiosRequest)(request);
179
-
180
- if (webRequest.error) {
181
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.Alert, {
182
- color: "danger"
183
- }, "An error occurred while loading.");
184
- }
185
-
186
- var options = [];
187
-
188
- if (webRequest.loading) {
189
- options.push({
190
- label: 'Loading...',
191
- value: ''
192
- });
193
- } else {
194
- if (includeEmptyOption && !props.isMulti) {
195
- options.push({
196
- label: ' ',
197
- value: null
198
- });
199
- }
200
-
201
- options.push.apply(options, (0, _toConsumableArray2["default"])(webRequest.resp.data.result));
202
-
203
- if (includeOtherOption) {
204
- options.push({
205
- label: 'Other',
206
- value: 'other'
207
- });
208
- }
209
- }
210
-
211
- return /*#__PURE__*/_react["default"].createElement(_ReactSelectField["default"], (0, _extends2["default"])({}, props, {
212
- options: options
213
- }));
214
- };
215
-
216
- var DatePicker = function DatePicker(_ref5) {
217
- var meta = _ref5.meta,
218
- props = (0, _objectWithoutProperties2["default"])(_ref5, _excluded5);
219
- return /*#__PURE__*/_react["default"].createElement(_DatePickerInput["default"], (0, _extends2["default"])({}, props, {
220
- className: meta.error ? 'is-invalid' : ''
221
- }));
222
- };
223
-
224
- var Checkbox = function Checkbox(_ref6) {
225
- var helpText = _ref6.helpText,
226
- meta = _ref6.meta,
227
- props = (0, _objectWithoutProperties2["default"])(_ref6, _excluded6);
228
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_reactstrap.CustomInput, props), meta.error && /*#__PURE__*/_react["default"].createElement(_reactstrap.FormFeedback, null, meta.error), helpText && /*#__PURE__*/_react["default"].createElement(_reactstrap.FormText, null, helpText));
229
- };
@@ -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 _FormInput = _interopRequireDefault(require("./FormInput"));
11
-
12
- var _default = _FormInput["default"];
13
- exports["default"] = _default;
@@ -1,248 +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"] = FormInputArray;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
-
22
- var _react = _interopRequireWildcard(require("react"));
23
-
24
- var _uuid = require("uuid");
25
-
26
- var _classnames = _interopRequireDefault(require("classnames"));
27
-
28
- var _reactstrap = require("reactstrap");
29
-
30
- var _reactFontawesome = require("@fortawesome/react-fontawesome");
31
-
32
- var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
33
-
34
- var _propTypes = _interopRequireDefault(require("prop-types"));
35
-
36
- var _useStandardFormInput3 = _interopRequireDefault(require("../useStandardFormInput"));
37
-
38
- var _NestedFormFieldContext = _interopRequireDefault(require("../NestedFormFieldContext"));
39
-
40
- var _excluded = ["id", "name", "label", "newItem", "component", "prepend", "disabled", "validate"],
41
- _excluded2 = ["className"],
42
- _excluded3 = ["className", "children"],
43
- _excluded4 = ["children", "className"],
44
- _excluded5 = ["children", "className"],
45
- _excluded6 = ["children", "className"];
46
-
47
- 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); }
48
-
49
- 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; }
50
-
51
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
52
-
53
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
54
-
55
- function FormInputArray(_ref) {
56
- var id = _ref.id,
57
- name = _ref.name,
58
- label = _ref.label,
59
- newItem = _ref.newItem,
60
- Component = _ref.component,
61
- Prepend = _ref.prepend,
62
- disabled = _ref.disabled,
63
- validate = _ref.validate,
64
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
65
-
66
- var _useStandardFormInput = (0, _useStandardFormInput3["default"])(_objectSpread({
67
- id: id,
68
- name: name,
69
- validate: validate,
70
- disabled: disabled
71
- }, props)),
72
- _useStandardFormInput2 = (0, _slicedToArray2["default"])(_useStandardFormInput, 2),
73
- inputProps = _useStandardFormInput2[0],
74
- meta = _useStandardFormInput2[1];
75
-
76
- var inputPropsRef = (0, _react.useRef)();
77
-
78
- var _useState = (0, _react.useState)(false),
79
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
80
- hasChangedLength = _useState2[0],
81
- setHasChangedLength = _useState2[1];
82
-
83
- inputPropsRef.current = inputProps;
84
- var values = inputProps.value || [];
85
- var length = values.length;
86
- (0, _react.useEffect)(function () {
87
- return function () {
88
- setHasChangedLength(true);
89
- };
90
- }, [length, setHasChangedLength]);
91
- (0, _react.useEffect)(function () {
92
- if (!hasChangedLength) {
93
- return;
94
- }
95
-
96
- inputPropsRef.current.onBlur();
97
- }, [length, hasChangedLength]);
98
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.Card, {
99
- className: "field-array-card"
100
- }, /*#__PURE__*/_react["default"].createElement(CardActionHeader, null, /*#__PURE__*/_react["default"].createElement(CardActionHeader.Title, null, label), /*#__PURE__*/_react["default"].createElement(CardActionHeader.Actions, null, !disabled && /*#__PURE__*/_react["default"].createElement(_reactstrap.Button, {
101
- color: "link",
102
- onClick: addItem,
103
- title: "Add an additional item",
104
- className: "add-array-item"
105
- }, /*#__PURE__*/_react["default"].createElement(_reactFontawesome.FontAwesomeIcon, {
106
- icon: _freeSolidSvgIcons.faPlus
107
- }), " Add New"))), /*#__PURE__*/_react["default"].createElement(_reactstrap.CardBody, null, meta.error && typeof meta.error === 'string' && /*#__PURE__*/_react["default"].createElement(_reactstrap.Row, null, /*#__PURE__*/_react["default"].createElement(_reactstrap.Col, null, /*#__PURE__*/_react["default"].createElement(_reactstrap.Alert, {
108
- className: "field-array-alert",
109
- color: "danger"
110
- }, meta.error))), Prepend && values.filter(function (x) {
111
- return !x.isDeleted;
112
- }).length > 0 && /*#__PURE__*/_react["default"].createElement(_reactstrap.Row, {
113
- className: (0, _classnames["default"])('input-array-header')
114
- }, /*#__PURE__*/_react["default"].createElement(Prepend, null), !disabled && /*#__PURE__*/_react["default"].createElement("div", {
115
- className: "remove-array-item"
116
- })), values.map(function (value, index) {
117
- var itemName = "".concat(inputProps.name, "[").concat(index, "]");
118
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.Row, {
119
- key: value && value['form-input-array-key'] || value && value['id'] || itemName,
120
- className: (0, _classnames["default"])('field-array-item', {
121
- removed: value.isDeleted
122
- }),
123
- role: "listitem"
124
- }, /*#__PURE__*/_react["default"].createElement(_NestedFormFieldContext["default"].Provider, {
125
- value: itemName
126
- }, /*#__PURE__*/_react["default"].createElement("div", {
127
- className: "component"
128
- }, /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
129
- value: value,
130
- name: itemName,
131
- disabled: disabled
132
- }, props)))), !disabled && /*#__PURE__*/_react["default"].createElement("div", {
133
- className: "remove-array-item"
134
- }, /*#__PURE__*/_react["default"].createElement(_reactstrap.Button, {
135
- color: "link",
136
- onClick: function onClick() {
137
- return removeItem(index);
138
- },
139
- title: "Remove Item"
140
- }, /*#__PURE__*/_react["default"].createElement(_reactFontawesome.FontAwesomeIcon, {
141
- icon: _freeSolidSvgIcons.faTrash
142
- }))));
143
- })));
144
-
145
- function addItem() {
146
- if (disabled) {
147
- return;
148
- }
149
-
150
- var item = Object.assign({}, newItem, {
151
- 'form-input-array-key': (0, _uuid.v4)()
152
- });
153
- var mapped = [].concat((0, _toConsumableArray2["default"])(values), [item]);
154
- inputProps.onChange(mapped);
155
- }
156
-
157
- function removeItem(index) {
158
- if (disabled) {
159
- return;
160
- }
161
-
162
- var itemToRemove = values[index]; // assumes anything from the server has an 'id' value sent
163
-
164
- if (!itemToRemove.id) {
165
- inputProps.onChange(values.filter(function (x) {
166
- return x !== itemToRemove;
167
- }));
168
- return;
169
- }
170
-
171
- var mapped = values.map(function (x) {
172
- return x !== itemToRemove ? x : Object.assign({}, x, {
173
- isDeleted: true
174
- });
175
- });
176
- inputProps.onChange(mapped);
177
- }
178
- }
179
-
180
- FormInputArray.Header = function (_ref2) {
181
- var className = _ref2.className,
182
- props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
183
- return /*#__PURE__*/_react["default"].createElement(FormInputArray.Column, (0, _extends2["default"])({
184
- className: (0, _classnames["default"])('mb-2', className)
185
- }, props));
186
- };
187
-
188
- FormInputArray.Column = function (_ref3) {
189
- var className = _ref3.className,
190
- children = _ref3.children,
191
- props = (0, _objectWithoutProperties2["default"])(_ref3, _excluded3);
192
- return /*#__PURE__*/_react["default"].createElement(_reactstrap.Col, (0, _extends2["default"])({
193
- className: (0, _classnames["default"])('d-flex', className)
194
- }, props), children);
195
- };
196
-
197
- FormInputArray.propTypes = {
198
- name: _propTypes["default"].string.isRequired,
199
- label: _propTypes["default"].string.isRequired,
200
-
201
- /**
202
- * The component to use for each element of the array
203
- **/
204
- component: _propTypes["default"].func.isRequired,
205
- disabled: _propTypes["default"].bool,
206
-
207
- /**
208
- * When 'Add Item' is used this object is passed as the default (so you can, as an example, give a default)
209
- **/
210
- newItem: _propTypes["default"].object,
211
-
212
- /**
213
- * Affixes a 'header' above all rows so you can have a grid-like display
214
- **/
215
- prepend: _propTypes["default"].func,
216
-
217
- /**
218
- * standard validator, BUT, will be passed the whole array to validate
219
- **/
220
- validate: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].func), _propTypes["default"].func])
221
- };
222
-
223
- function CardActionHeader(_ref4) {
224
- var children = _ref4.children,
225
- className = _ref4.className,
226
- props = (0, _objectWithoutProperties2["default"])(_ref4, _excluded4);
227
- return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
228
- className: (0, _classnames["default"])('card-header card-action-header d-flex align-items-baseline', className)
229
- }, props), children);
230
- }
231
-
232
- CardActionHeader.Title = function Title(_ref5) {
233
- var children = _ref5.children,
234
- className = _ref5.className,
235
- props = (0, _objectWithoutProperties2["default"])(_ref5, _excluded5);
236
- return /*#__PURE__*/_react["default"].createElement("strong", (0, _extends2["default"])({
237
- className: (0, _classnames["default"])('mr-auto', className)
238
- }, props), children);
239
- };
240
-
241
- CardActionHeader.Actions = function Actions(_ref6) {
242
- var children = _ref6.children,
243
- className = _ref6.className,
244
- props = (0, _objectWithoutProperties2["default"])(_ref6, _excluded6);
245
- return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
246
- className: (0, _classnames["default"])('card-action-header-actions', className)
247
- }, props), children);
248
- };
@@ -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 _FormInputArray = _interopRequireDefault(require("./FormInputArray"));
11
-
12
- var _default = _FormInputArray["default"];
13
- exports["default"] = _default;
@@ -1,28 +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"] = FormSection;
11
-
12
- var _react = _interopRequireWildcard(require("react"));
13
-
14
- var _NestedFormFieldContext = _interopRequireDefault(require("./NestedFormFieldContext"));
15
-
16
- 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); }
17
-
18
- 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; }
19
-
20
- function FormSection(_ref) {
21
- var children = _ref.children,
22
- name = _ref.name;
23
- var parentContext = (0, _react.useContext)(_NestedFormFieldContext["default"]);
24
- var effectiveValue = parentContext ? "".concat(parentContext, ".").concat(name) : name;
25
- return /*#__PURE__*/_react["default"].createElement(_NestedFormFieldContext["default"].Provider, {
26
- value: effectiveValue
27
- }, children);
28
- }