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
@@ -1,206 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
- var _excluded = ["className", "meta", "helpText"],
6
- _excluded2 = ["meta"],
7
- _excluded3 = ["includeEmptyOption", "options"],
8
- _excluded4 = ["optionsUrl", "includeEmptyOption", "includeOtherOption", "cache", "maxAge"],
9
- _excluded5 = ["meta"],
10
- _excluded6 = ["helpText", "meta"];
11
- import React from 'react';
12
- import classnames from 'classnames';
13
- import { Input as BootstrapInput, FormFeedback, CustomInput, FormText, Alert } from 'reactstrap';
14
- import lru from 'lru-cache';
15
- import PropTypes from 'prop-types';
16
- import TextareaAutosize from 'react-textarea-autosize';
17
- import { useAxiosRequest } from 'envoc-request';
18
- import FormGroupWrapper from '../FormGroupWrapper';
19
- import DatePickerInput from '../DatePickerInput';
20
- import ReactSelectField from '../ReactSelectField';
21
- import useStandardFormInput from '../useStandardFormInput';
22
- import { FileInput, DropzoneFileInput } from '../FileInput';
23
- export default function FormInput(props) {
24
- var _useStandardFormInput = useStandardFormInput(props),
25
- _useStandardFormInput2 = _slicedToArray(_useStandardFormInput, 2),
26
- input = _useStandardFormInput2[0],
27
- meta = _useStandardFormInput2[1];
28
-
29
- var className = props.className,
30
- hide = props.hide;
31
- return /*#__PURE__*/React.createElement(StandardFieldGroup, _extends({}, input, {
32
- className: classnames({
33
- 'd-none': hide
34
- }, className),
35
- meta: meta
36
- }));
37
- }
38
- FormInput.propTypes = {
39
- id: PropTypes.string,
40
- label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
41
- name: PropTypes.string.isRequired,
42
- placeholder: PropTypes.string,
43
- helpText: PropTypes.oneOfType([PropTypes.string, PropTypes.object])
44
- };
45
-
46
- function StandardFieldGroup(props) {
47
- switch (props.type) {
48
- case 'date':
49
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
50
- Component: DatePicker
51
- }));
52
-
53
- case 'select':
54
- if (props.optionsUrl) {
55
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
56
- Component: RemoteSelect
57
- }));
58
- } else {
59
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
60
- Component: Select
61
- }));
62
- }
63
-
64
- case 'checkbox':
65
- case 'radio':
66
- return Checkbox(props);
67
-
68
- case 'file':
69
- if (props.dropzone) {
70
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
71
- Component: DropzoneFileInput
72
- }));
73
- }
74
-
75
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
76
- Component: FileInput
77
- }));
78
-
79
- case 'textarea':
80
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
81
- Component: TextAreaInput
82
- }));
83
-
84
- default:
85
- return /*#__PURE__*/React.createElement(FormGroupWrapper, _extends({}, props, {
86
- Component: DefaultInput
87
- }));
88
- }
89
- }
90
-
91
- var TextAreaInput = function TextAreaInput(_ref) {
92
- var className = _ref.className,
93
- meta = _ref.meta,
94
- helpText = _ref.helpText,
95
- props = _objectWithoutProperties(_ref, _excluded);
96
-
97
- return /*#__PURE__*/React.createElement(TextareaAutosize, _extends({
98
- cacheMeasurements: true,
99
- className: classnames(className, 'form-control', meta.error ? 'is-invalid' : '')
100
- }, props));
101
- };
102
-
103
- var DefaultInput = function DefaultInput(_ref2) {
104
- var meta = _ref2.meta,
105
- props = _objectWithoutProperties(_ref2, _excluded2);
106
-
107
- return /*#__PURE__*/React.createElement(BootstrapInput, _extends({
108
- invalid: !!meta.error
109
- }, props));
110
- };
111
-
112
- var Select = function Select(_ref3) {
113
- var _ref3$includeEmptyOpt = _ref3.includeEmptyOption,
114
- includeEmptyOption = _ref3$includeEmptyOpt === void 0 ? true : _ref3$includeEmptyOpt,
115
- options = _ref3.options,
116
- props = _objectWithoutProperties(_ref3, _excluded3);
117
-
118
- var allOptions = includeEmptyOption && !props.isMulti ? [{
119
- label: ' ',
120
- value: null
121
- }].concat(_toConsumableArray(options)) : options;
122
- return /*#__PURE__*/React.createElement(ReactSelectField, _extends({}, props, {
123
- options: allOptions
124
- }));
125
- }; // low cache value just to prevent the same dropdown from hitting the API at the same time
126
- // TODO: global cache provider / "envoc-cache" instead of this static instance
127
-
128
-
129
- export var optionCache = new lru({
130
- max: 500,
131
- maxAge: 1000 * 10
132
- });
133
-
134
- var RemoteSelect = function RemoteSelect(_ref4) {
135
- var optionsUrl = _ref4.optionsUrl,
136
- _ref4$includeEmptyOpt = _ref4.includeEmptyOption,
137
- includeEmptyOption = _ref4$includeEmptyOpt === void 0 ? true : _ref4$includeEmptyOpt,
138
- _ref4$includeOtherOpt = _ref4.includeOtherOption,
139
- includeOtherOption = _ref4$includeOtherOpt === void 0 ? false : _ref4$includeOtherOpt,
140
- _ref4$cache = _ref4.cache,
141
- cache = _ref4$cache === void 0 ? optionCache : _ref4$cache,
142
- _ref4$maxAge = _ref4.maxAge,
143
- maxAge = _ref4$maxAge === void 0 ? 1000 * 10 : _ref4$maxAge,
144
- props = _objectWithoutProperties(_ref4, _excluded4);
145
-
146
- var request = {
147
- method: 'get',
148
- url: optionsUrl,
149
- cache: cache,
150
- maxAge: maxAge,
151
- autoExecute: true
152
- };
153
- var webRequest = useAxiosRequest(request);
154
-
155
- if (webRequest.error) {
156
- return /*#__PURE__*/React.createElement(Alert, {
157
- color: "danger"
158
- }, "An error occurred while loading.");
159
- }
160
-
161
- var options = [];
162
-
163
- if (webRequest.loading) {
164
- options.push({
165
- label: 'Loading...',
166
- value: ''
167
- });
168
- } else {
169
- if (includeEmptyOption && !props.isMulti) {
170
- options.push({
171
- label: ' ',
172
- value: null
173
- });
174
- }
175
-
176
- options.push.apply(options, _toConsumableArray(webRequest.resp.data.result));
177
-
178
- if (includeOtherOption) {
179
- options.push({
180
- label: 'Other',
181
- value: 'other'
182
- });
183
- }
184
- }
185
-
186
- return /*#__PURE__*/React.createElement(ReactSelectField, _extends({}, props, {
187
- options: options
188
- }));
189
- };
190
-
191
- var DatePicker = function DatePicker(_ref5) {
192
- var meta = _ref5.meta,
193
- props = _objectWithoutProperties(_ref5, _excluded5);
194
-
195
- return /*#__PURE__*/React.createElement(DatePickerInput, _extends({}, props, {
196
- className: meta.error ? 'is-invalid' : ''
197
- }));
198
- };
199
-
200
- var Checkbox = function Checkbox(_ref6) {
201
- var helpText = _ref6.helpText,
202
- meta = _ref6.meta,
203
- props = _objectWithoutProperties(_ref6, _excluded6);
204
-
205
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CustomInput, props), meta.error && /*#__PURE__*/React.createElement(FormFeedback, null, meta.error), helpText && /*#__PURE__*/React.createElement(FormText, null, helpText));
206
- };
@@ -1,2 +0,0 @@
1
- import FormInput from './FormInput';
2
- export default FormInput;
@@ -1,225 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import _extends from "@babel/runtime/helpers/esm/extends";
3
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
- var _excluded = ["id", "name", "label", "newItem", "component", "prepend", "disabled", "validate"],
7
- _excluded2 = ["className"],
8
- _excluded3 = ["className", "children"],
9
- _excluded4 = ["children", "className"],
10
- _excluded5 = ["children", "className"],
11
- _excluded6 = ["children", "className"];
12
-
13
- 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; }
14
-
15
- 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) { _defineProperty(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; }
16
-
17
- import React, { useEffect, useRef, useState } from 'react';
18
- import { v4 as uuid } from 'uuid';
19
- import classnames from 'classnames';
20
- import { Col, Card, Button, CardBody, Row, Alert } from 'reactstrap';
21
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
22
- import { faPlus, faTrash } from '@fortawesome/free-solid-svg-icons';
23
- import PropTypes from 'prop-types';
24
- import useStandardFormInput from '../useStandardFormInput';
25
- import NestedFormFieldContext from '../NestedFormFieldContext';
26
- import classNames from 'classnames';
27
- export default function FormInputArray(_ref) {
28
- var id = _ref.id,
29
- name = _ref.name,
30
- label = _ref.label,
31
- newItem = _ref.newItem,
32
- Component = _ref.component,
33
- Prepend = _ref.prepend,
34
- disabled = _ref.disabled,
35
- validate = _ref.validate,
36
- props = _objectWithoutProperties(_ref, _excluded);
37
-
38
- var _useStandardFormInput = useStandardFormInput(_objectSpread({
39
- id: id,
40
- name: name,
41
- validate: validate,
42
- disabled: disabled
43
- }, props)),
44
- _useStandardFormInput2 = _slicedToArray(_useStandardFormInput, 2),
45
- inputProps = _useStandardFormInput2[0],
46
- meta = _useStandardFormInput2[1];
47
-
48
- var inputPropsRef = useRef();
49
-
50
- var _useState = useState(false),
51
- _useState2 = _slicedToArray(_useState, 2),
52
- hasChangedLength = _useState2[0],
53
- setHasChangedLength = _useState2[1];
54
-
55
- inputPropsRef.current = inputProps;
56
- var values = inputProps.value || [];
57
- var length = values.length;
58
- useEffect(function () {
59
- return function () {
60
- setHasChangedLength(true);
61
- };
62
- }, [length, setHasChangedLength]);
63
- useEffect(function () {
64
- if (!hasChangedLength) {
65
- return;
66
- }
67
-
68
- inputPropsRef.current.onBlur();
69
- }, [length, hasChangedLength]);
70
- return /*#__PURE__*/React.createElement(Card, {
71
- className: "field-array-card"
72
- }, /*#__PURE__*/React.createElement(CardActionHeader, null, /*#__PURE__*/React.createElement(CardActionHeader.Title, null, label), /*#__PURE__*/React.createElement(CardActionHeader.Actions, null, !disabled && /*#__PURE__*/React.createElement(Button, {
73
- color: "link",
74
- onClick: addItem,
75
- title: "Add an additional item",
76
- className: "add-array-item"
77
- }, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
78
- icon: faPlus
79
- }), " Add New"))), /*#__PURE__*/React.createElement(CardBody, null, meta.error && typeof meta.error === 'string' && /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Col, null, /*#__PURE__*/React.createElement(Alert, {
80
- className: "field-array-alert",
81
- color: "danger"
82
- }, meta.error))), Prepend && values.filter(function (x) {
83
- return !x.isDeleted;
84
- }).length > 0 && /*#__PURE__*/React.createElement(Row, {
85
- className: classnames('input-array-header')
86
- }, /*#__PURE__*/React.createElement(Prepend, null), !disabled && /*#__PURE__*/React.createElement("div", {
87
- className: "remove-array-item"
88
- })), values.map(function (value, index) {
89
- var itemName = "".concat(inputProps.name, "[").concat(index, "]");
90
- return /*#__PURE__*/React.createElement(Row, {
91
- key: value && value['form-input-array-key'] || value && value['id'] || itemName,
92
- className: classnames('field-array-item', {
93
- removed: value.isDeleted
94
- }),
95
- role: "listitem"
96
- }, /*#__PURE__*/React.createElement(NestedFormFieldContext.Provider, {
97
- value: itemName
98
- }, /*#__PURE__*/React.createElement("div", {
99
- className: "component"
100
- }, /*#__PURE__*/React.createElement(Component, _extends({
101
- value: value,
102
- name: itemName,
103
- disabled: disabled
104
- }, props)))), !disabled && /*#__PURE__*/React.createElement("div", {
105
- className: "remove-array-item"
106
- }, /*#__PURE__*/React.createElement(Button, {
107
- color: "link",
108
- onClick: function onClick() {
109
- return removeItem(index);
110
- },
111
- title: "Remove Item"
112
- }, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
113
- icon: faTrash
114
- }))));
115
- })));
116
-
117
- function addItem() {
118
- if (disabled) {
119
- return;
120
- }
121
-
122
- var item = Object.assign({}, newItem, {
123
- 'form-input-array-key': uuid()
124
- });
125
- var mapped = [].concat(_toConsumableArray(values), [item]);
126
- inputProps.onChange(mapped);
127
- }
128
-
129
- function removeItem(index) {
130
- if (disabled) {
131
- return;
132
- }
133
-
134
- var itemToRemove = values[index]; // assumes anything from the server has an 'id' value sent
135
-
136
- if (!itemToRemove.id) {
137
- inputProps.onChange(values.filter(function (x) {
138
- return x !== itemToRemove;
139
- }));
140
- return;
141
- }
142
-
143
- var mapped = values.map(function (x) {
144
- return x !== itemToRemove ? x : Object.assign({}, x, {
145
- isDeleted: true
146
- });
147
- });
148
- inputProps.onChange(mapped);
149
- }
150
- }
151
-
152
- FormInputArray.Header = function (_ref2) {
153
- var className = _ref2.className,
154
- props = _objectWithoutProperties(_ref2, _excluded2);
155
-
156
- return /*#__PURE__*/React.createElement(FormInputArray.Column, _extends({
157
- className: classnames('mb-2', className)
158
- }, props));
159
- };
160
-
161
- FormInputArray.Column = function (_ref3) {
162
- var className = _ref3.className,
163
- children = _ref3.children,
164
- props = _objectWithoutProperties(_ref3, _excluded3);
165
-
166
- return /*#__PURE__*/React.createElement(Col, _extends({
167
- className: classnames('d-flex', className)
168
- }, props), children);
169
- };
170
-
171
- FormInputArray.propTypes = {
172
- name: PropTypes.string.isRequired,
173
- label: PropTypes.string.isRequired,
174
-
175
- /**
176
- * The component to use for each element of the array
177
- **/
178
- component: PropTypes.func.isRequired,
179
- disabled: PropTypes.bool,
180
-
181
- /**
182
- * When 'Add Item' is used this object is passed as the default (so you can, as an example, give a default)
183
- **/
184
- newItem: PropTypes.object,
185
-
186
- /**
187
- * Affixes a 'header' above all rows so you can have a grid-like display
188
- **/
189
- prepend: PropTypes.func,
190
-
191
- /**
192
- * standard validator, BUT, will be passed the whole array to validate
193
- **/
194
- validate: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func])
195
- };
196
-
197
- function CardActionHeader(_ref4) {
198
- var children = _ref4.children,
199
- className = _ref4.className,
200
- props = _objectWithoutProperties(_ref4, _excluded4);
201
-
202
- return /*#__PURE__*/React.createElement("div", _extends({
203
- className: classnames('card-header card-action-header d-flex align-items-baseline', className)
204
- }, props), children);
205
- }
206
-
207
- CardActionHeader.Title = function Title(_ref5) {
208
- var children = _ref5.children,
209
- className = _ref5.className,
210
- props = _objectWithoutProperties(_ref5, _excluded5);
211
-
212
- return /*#__PURE__*/React.createElement("strong", _extends({
213
- className: classnames('mr-auto', className)
214
- }, props), children);
215
- };
216
-
217
- CardActionHeader.Actions = function Actions(_ref6) {
218
- var children = _ref6.children,
219
- className = _ref6.className,
220
- props = _objectWithoutProperties(_ref6, _excluded6);
221
-
222
- return /*#__PURE__*/React.createElement("div", _extends({
223
- className: classnames('card-action-header-actions', className)
224
- }, props), children);
225
- };
@@ -1,2 +0,0 @@
1
- import FormInputArray from './FormInputArray';
2
- export default FormInputArray;
package/es/FormSection.js DELETED
@@ -1,11 +0,0 @@
1
- import React, { useContext } from 'react';
2
- import NestedFormFieldContext from './NestedFormFieldContext';
3
- export default function FormSection(_ref) {
4
- var children = _ref.children,
5
- name = _ref.name;
6
- var parentContext = useContext(NestedFormFieldContext);
7
- var effectiveValue = parentContext ? "".concat(parentContext, ".").concat(name) : name;
8
- return /*#__PURE__*/React.createElement(NestedFormFieldContext.Provider, {
9
- value: effectiveValue
10
- }, children);
11
- }
package/es/IconInput.js DELETED
@@ -1,33 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["className", "icon", "helpText"];
5
- import React from 'react';
6
- import PropTypes from 'prop-types';
7
- import { InputGroup, InputGroupAddon, InputGroupText, Input as BootstrapInput, FormFeedback } from 'reactstrap';
8
- import useStandardFormInput from './useStandardFormInput';
9
- export default function IconInput(_ref) {
10
- var className = _ref.className,
11
- icon = _ref.icon,
12
- helpText = _ref.helpText,
13
- props = _objectWithoutProperties(_ref, _excluded);
14
-
15
- var _useStandardFormInput = useStandardFormInput(props),
16
- _useStandardFormInput2 = _slicedToArray(_useStandardFormInput, 2),
17
- input = _useStandardFormInput2[0],
18
- meta = _useStandardFormInput2[1];
19
-
20
- return /*#__PURE__*/React.createElement(InputGroup, {
21
- className: className
22
- }, /*#__PURE__*/React.createElement(InputGroupAddon, {
23
- addonType: "prepend"
24
- }, /*#__PURE__*/React.createElement(InputGroupText, null, /*#__PURE__*/React.createElement("i", {
25
- className: icon
26
- }))), /*#__PURE__*/React.createElement(BootstrapInput, _extends({
27
- invalid: !!meta.error
28
- }, input)), meta.error && /*#__PURE__*/React.createElement(FormFeedback, null, meta.error), helpText && /*#__PURE__*/React.createElement(FormFeedback, null, helpText));
29
- }
30
- IconInput.propTypes = {
31
- icon: PropTypes.string,
32
- className: PropTypes.string
33
- };
@@ -1,8 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import React from 'react';
3
- import FormInput from '../FormInput';
4
- export default function InlineFormInput(props) {
5
- return /*#__PURE__*/React.createElement(FormInput, _extends({
6
- className: "inline-form-input col"
7
- }, props));
8
- }
@@ -1,2 +0,0 @@
1
- import InlineFormInput from './InlineFormInput';
2
- export default InlineFormInput;
@@ -1,7 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import React from 'react';
3
- import InlineFormInput from '../InlineFormInput';
4
- import moneyInputProps from './moneyInputProps';
5
- export default function InlineMoneyInput(props) {
6
- return /*#__PURE__*/React.createElement(InlineFormInput, _extends({}, moneyInputProps, props));
7
- }
@@ -1,7 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import React from 'react';
3
- import FormInput from '../FormInput';
4
- import moneyInputProps from './moneyInputProps';
5
- export default function MoneyInput(props) {
6
- return /*#__PURE__*/React.createElement(FormInput, _extends({}, moneyInputProps, props));
7
- }
@@ -1,3 +0,0 @@
1
- import MoneyInput from './MoneyInput';
2
- import InlineMoneyInput from './InlineMoneyInput';
3
- export { MoneyInput, InlineMoneyInput };
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
- import { InputGroupAddon } from 'reactstrap';
3
- var MoneyPrepend = /*#__PURE__*/React.createElement(InputGroupAddon, {
4
- addonType: "prepend"
5
- }, "$");
6
- var moneyInputProps = {
7
- type: 'number',
8
- step: '0.01',
9
- min: '0',
10
- prepend: MoneyPrepend,
11
- className: 'money-input'
12
- };
13
- export default moneyInputProps;
@@ -1,4 +0,0 @@
1
- import React from 'react'; // TODO: better name?
2
-
3
- var NestedFormFieldContext = /*#__PURE__*/React.createContext();
4
- export default NestedFormFieldContext;
@@ -1,128 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- var _excluded = ["className", "meta", "disabled", "onSelected", "onChange", "onBlur", "value", "options", "defaultValue", "defaultIndex"];
5
-
6
- 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; }
7
-
8
- 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) { _defineProperty(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; }
9
-
10
- import React, { useEffect, useRef } from 'react';
11
- import { default as ReactSelect } from 'react-select';
12
- export var overrideTheme = function overrideTheme(theme) {
13
- return _objectSpread(_objectSpread({}, theme), {}, {
14
- borderRadius: 0,
15
- spacing: Object.assign({}, _objectSpread({}, theme.spacing), {
16
- baseUnit: 2,
17
- controlHeight: 35
18
- })
19
- });
20
- };
21
- var red = '#f86c6b';
22
- var inputBorderColor = '#c2cfd6';
23
- var inputBorderColorFocused = '#8ad4ee';
24
- var inputBoxShadowFocused = '0 0 0 0.2rem rgba(32, 168, 216, 0.25)';
25
- export var customStyles = {
26
- control: function control(provided, _ref) {
27
- var isFocused = _ref.isFocused,
28
- selectProps = _ref.selectProps;
29
- return _objectSpread(_objectSpread({}, provided), {}, {
30
- paddingLeft: '7px',
31
- '&:hover': {
32
- borderColor: isFocused ? inputBorderColorFocused : inputBorderColor
33
- },
34
- borderColor: selectProps.hasErrors ? red : isFocused ? inputBorderColorFocused : inputBorderColor,
35
- boxShadow: isFocused ? inputBoxShadowFocused : ''
36
- });
37
- },
38
- menu: function menu(provided) {
39
- return _objectSpread(_objectSpread({}, provided), {}, {
40
- zIndex: 3
41
- });
42
- }
43
- }; // internal to forms use only
44
-
45
- export default function ReactSelectInput(_ref2) {
46
- var className = _ref2.className,
47
- meta = _ref2.meta,
48
- disabled = _ref2.disabled,
49
- onSelected = _ref2.onSelected,
50
- onChange = _ref2.onChange,
51
- onBlur = _ref2.onBlur,
52
- value = _ref2.value,
53
- options = _ref2.options,
54
- defaultValue = _ref2.defaultValue,
55
- defaultIndex = _ref2.defaultIndex,
56
- props = _objectWithoutProperties(_ref2, _excluded);
57
-
58
- var selectedItems = getSelectedItems();
59
- var onSelectedRef = useRef(onSelected);
60
- onSelectedRef.current = onSelected;
61
- useEffect(function () {
62
- onSelectedRef.current && onSelectedRef.current(selectedItems);
63
- }, [selectedItems]);
64
- return /*#__PURE__*/React.createElement(ReactSelect, _extends({}, props, {
65
- options: options,
66
- isDisabled: disabled,
67
- hasErrors: meta.error,
68
- getOptionLabel: function getOptionLabel(option) {
69
- return option.label;
70
- },
71
- getOptionValue: getOptionValue,
72
- value: selectedItems,
73
- onChange: handleChange,
74
- className: "react-select-input",
75
- theme: overrideTheme,
76
- styles: customStyles,
77
- menuPortalTarget: document.body,
78
- menuPlacement: "auto"
79
- }));
80
-
81
- function getOptionValue(option) {
82
- if (typeof props.getOptionValue === 'function') {
83
- return props.getOptionValue(option);
84
- } else {
85
- return option.value;
86
- }
87
- }
88
-
89
- function getSelectedItems() {
90
- if (defaultValue !== undefined && value === '') {
91
- value = defaultValue;
92
- onChange(defaultValue);
93
- }
94
-
95
- if (defaultIndex !== undefined && value === '') {
96
- var item = options[defaultIndex];
97
- onChange(getOptionValue(item));
98
- return item;
99
- }
100
-
101
- var valueIsArray = Array.isArray(value);
102
- var matches = options.filter(function (x) {
103
- if (valueIsArray) {
104
- return value.includes(getOptionValue(x));
105
- } else {
106
- return value === getOptionValue(x);
107
- }
108
- });
109
-
110
- if (matches.length < 1) {
111
- return null;
112
- }
113
-
114
- return matches;
115
- }
116
-
117
- function handleChange(e) {
118
- if (e == null) {
119
- onChange(null);
120
- } else if (Array.isArray(e)) {
121
- onChange(e.map(function (x) {
122
- return x.value;
123
- }));
124
- } else {
125
- onChange(e.value);
126
- }
127
- }
128
- }
@@ -1,2 +0,0 @@
1
- import ReactSelectField, { overrideTheme, customStyles } from './ReactSelectField';
2
- export { ReactSelectField as default, overrideTheme, customStyles };