envoc-form 3.3.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 (428) 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 -25
  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 -262
  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 -101
  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 -3
  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 -4
  288. package/es/Form/index.js +0 -5
  289. package/es/FormGroup.js +0 -22
  290. package/es/FormGroupWrapper.js +0 -22
  291. package/es/FormInput/FormInput.js +0 -212
  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/MoneyFormattedInput/MoneyFormattedInput.js +0 -106
  300. package/es/MoneyFormattedInput/index.js +0 -2
  301. package/es/MoneyInput/InlineMoneyInput.js +0 -7
  302. package/es/MoneyInput/MoneyInput.js +0 -7
  303. package/es/MoneyInput/index.js +0 -3
  304. package/es/MoneyInput/moneyInputProps.js +0 -13
  305. package/es/NestedFormFieldContext.js +0 -4
  306. package/es/ReactSelectField/ReactSelectField.js +0 -162
  307. package/es/ReactSelectField/index.js +0 -2
  308. package/es/normalizers.js +0 -39
  309. package/es/selectors.js +0 -6
  310. package/es/useStandardFormInput.js +0 -119
  311. package/es/utils/index.js +0 -3
  312. package/es/validators/index.js +0 -2
  313. package/es/validators/validators.js +0 -94
  314. package/lib/AddressInput/index.js +0 -23
  315. package/lib/BoolInput/BoolInput.js +0 -23
  316. package/lib/BoolInput/InlineBoolInput.js +0 -23
  317. package/lib/BoolInput/boolOptions.js +0 -15
  318. package/lib/BoolInput/index.js +0 -23
  319. package/lib/ConfirmBaseForm/index.js +0 -13
  320. package/lib/ConfirmDeleteForm/index.js +0 -13
  321. package/lib/DatePickerInput/index.js +0 -13
  322. package/lib/ErrorScrollTarget.js +0 -20
  323. package/lib/FileInput/DefaultFileList.js +0 -47
  324. package/lib/FileInput/DropzoneFileInput.js +0 -75
  325. package/lib/FileInput/FileInput.js +0 -82
  326. package/lib/FileInput/index.js +0 -31
  327. package/lib/Form/index.js +0 -39
  328. package/lib/FormGroup.js +0 -33
  329. package/lib/FormGroupWrapper.js +0 -37
  330. package/lib/FormInput/FormInput.js +0 -236
  331. package/lib/FormInput/index.js +0 -13
  332. package/lib/FormInputArray/FormInputArray.js +0 -248
  333. package/lib/FormInputArray/index.js +0 -13
  334. package/lib/FormSection.js +0 -28
  335. package/lib/IconInput.js +0 -51
  336. package/lib/InlineFormInput/InlineFormInput.js +0 -20
  337. package/lib/InlineFormInput/index.js +0 -13
  338. package/lib/MoneyFormattedInput/MoneyFormattedInput.js +0 -126
  339. package/lib/MoneyFormattedInput/index.js +0 -15
  340. package/lib/MoneyInput/InlineMoneyInput.js +0 -20
  341. package/lib/MoneyInput/MoneyInput.js +0 -20
  342. package/lib/MoneyInput/index.js +0 -23
  343. package/lib/MoneyInput/moneyInputProps.js +0 -26
  344. package/lib/NestedFormFieldContext.js +0 -16
  345. package/lib/ReactSelectField/ReactSelectField.js +0 -187
  346. package/lib/ReactSelectField/index.js +0 -31
  347. package/lib/normalizers.js +0 -51
  348. package/lib/selectors.js +0 -18
  349. package/lib/useStandardFormInput.js +0 -135
  350. package/lib/utils/index.js +0 -23
  351. package/lib/validators/index.js +0 -17
  352. package/lib/validators/validators.js +0 -130
  353. package/src/AddressInput/AddressInput.js +0 -73
  354. package/src/AddressInput/__snapshots__/AddesssInput.test.js.snap +0 -207
  355. package/src/AddressInput/index.js +0 -3
  356. package/src/BoolInput/BoolInput.js +0 -7
  357. package/src/BoolInput/BoolInput.test.js +0 -23
  358. package/src/BoolInput/InlineBoolInput.js +0 -7
  359. package/src/BoolInput/__snapshots__/BoolInput.test.js.snap +0 -89
  360. package/src/BoolInput/boolOptions.js +0 -6
  361. package/src/BoolInput/index.js +0 -4
  362. package/src/ConfirmBaseForm/ConfirmBaseForm.js +0 -37
  363. package/src/ConfirmBaseForm/ConfirmBaseForm.test.js +0 -14
  364. package/src/ConfirmBaseForm/index.js +0 -2
  365. package/src/ConfirmDeleteForm/ConfirmDeleteForm.js +0 -39
  366. package/src/ConfirmDeleteForm/index.js +0 -2
  367. package/src/DatePickerInput/DatePickerInput.js +0 -49
  368. package/src/DatePickerInput/DatePickerInput.test.js +0 -74
  369. package/src/DatePickerInput/__snapshots__/DatePickerInput.test.js.snap +0 -134
  370. package/src/DatePickerInput/date-picker-input.scss +0 -42
  371. package/src/DatePickerInput/index.js +0 -3
  372. package/src/ErrorScrollTarget.js +0 -6
  373. package/src/FileInput/DefaultFileList.js +0 -39
  374. package/src/FileInput/DropzoneFileInput.js +0 -56
  375. package/src/FileInput/DropzoneFileInput.test.js +0 -24
  376. package/src/FileInput/FileInput.js +0 -77
  377. package/src/FileInput/FileInput.test.js +0 -24
  378. package/src/FileInput/__snapshots__/DropzoneFileInput.test.js.snap +0 -57
  379. package/src/FileInput/__snapshots__/FileInput.test.js.snap +0 -58
  380. package/src/FileInput/file-input.scss +0 -58
  381. package/src/FileInput/index.js +0 -5
  382. package/src/Form/Form.test.js +0 -23
  383. package/src/Form/FormBasedPreventNavigation.js +0 -25
  384. package/src/Form/ServerErrorContext.js +0 -7
  385. package/src/Form/index.js +0 -11
  386. package/src/FormGroup.js +0 -30
  387. package/src/FormGroupWrapper.js +0 -28
  388. package/src/FormInput/FormInput.js +0 -148
  389. package/src/FormInput/FormInput.test.js +0 -66
  390. package/src/FormInput/__snapshots__/FormInput.test.js.snap +0 -323
  391. package/src/FormInput/form-input.scss +0 -9
  392. package/src/FormInput/index.js +0 -2
  393. package/src/FormInputArray/FormInputArray.js +0 -224
  394. package/src/FormInputArray/FormInputArray.test.js +0 -108
  395. package/src/FormInputArray/__snapshots__/FormInputArray.test.js.snap +0 -52
  396. package/src/FormInputArray/form-input-array.scss +0 -13
  397. package/src/FormInputArray/index.js +0 -2
  398. package/src/FormSection.js +0 -13
  399. package/src/IconInput.js +0 -31
  400. package/src/InlineFormInput/InlineFormInput.js +0 -6
  401. package/src/InlineFormInput/InlineFormInput.test.js +0 -23
  402. package/src/InlineFormInput/__snapshots__/InlineFormInput.test.js.snap +0 -26
  403. package/src/InlineFormInput/index.js +0 -3
  404. package/src/InlineFormInput/inline-form-input.scss +0 -3
  405. package/src/MoneyFormattedInput/MoneyFormattedInput.js +0 -115
  406. package/src/MoneyFormattedInput/index.js +0 -3
  407. package/src/MoneyInput/InlineMoneyInput.js +0 -7
  408. package/src/MoneyInput/MoneyInput.js +0 -7
  409. package/src/MoneyInput/MoneyInputs.test.js +0 -43
  410. package/src/MoneyInput/__snapshots__/MoneyInputs.test.js.snap +0 -81
  411. package/src/MoneyInput/index.js +0 -4
  412. package/src/MoneyInput/money-input.scss +0 -3
  413. package/src/MoneyInput/moneyInputProps.js +0 -12
  414. package/src/NestedFormFieldContext.js +0 -6
  415. package/src/ReactSelectField/ReactSelectField.js +0 -155
  416. package/src/ReactSelectField/index.js +0 -6
  417. package/src/ReactSelectField/react-select-field.scss +0 -5
  418. package/src/SubmitFormButton.js +0 -28
  419. package/src/__Tests__/FormTestBase.js +0 -14
  420. package/src/__Tests__/IconInput.test.js +0 -23
  421. package/src/__Tests__/__snapshots__/IconInput.test.js.snap +0 -38
  422. package/src/index.js +0 -70
  423. package/src/selectors.js +0 -3
  424. package/src/useStandardFormInput.js +0 -118
  425. package/src/utils/index.js +0 -3
  426. package/src/utils/typeChecks.js +0 -18
  427. package/src/validators/index.js +0 -2
  428. package/src/validators/validators.js +0 -93
@@ -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,106 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import React, { useEffect, useMemo, useState } from 'react';
3
- import { useField } from 'formik';
4
- import debounce from 'lodash/debounce';
5
- import classNames from 'classnames'; // Money input that will format the value to always have commas, a single decimal, and
6
- // exactly two digits after the decimal. This happens after a delay (using debounce).
7
-
8
- export default function MoneyFormattedInput(_ref) {
9
- var name = _ref.name,
10
- onBlur = _ref.onBlur,
11
- onChange = _ref.onChange,
12
- classname = _ref.classname,
13
- _ref$disabled = _ref.disabled,
14
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
15
- _ref$debounceTimer = _ref.debounceTimer,
16
- debounceTimer = _ref$debounceTimer === void 0 ? 1500 : _ref$debounceTimer,
17
- meta = _ref.meta;
18
-
19
- // The displayed state and formik state are two seperate values that we handle
20
- var _useState = useState(''),
21
- _useState2 = _slicedToArray(_useState, 2),
22
- inputValue = _useState2[0],
23
- setInputValue = _useState2[1];
24
-
25
- var _useField = useField(name),
26
- _useField2 = _slicedToArray(_useField, 1),
27
- formikValue = _useField2[0].value;
28
-
29
- var handleChangeDebounce = useMemo(function () {
30
- return debounce(debouncedUpdateInput, debounceTimer);
31
-
32
- function debouncedUpdateInput(value) {
33
- var result = formatToCurrency(value);
34
- setInputValue(result !== null && result !== void 0 ? result : ''); // sets value in formik
35
-
36
- onChange(result !== null && result !== void 0 ? result : '');
37
- onBlur();
38
- }
39
- }, [onBlur, onChange]); // Format first render
40
-
41
- useEffect(function () {
42
- var formattedFormikValue = formatToCurrency(formikValue);
43
- setInputValue(formattedFormikValue !== null && formattedFormikValue !== void 0 ? formattedFormikValue : '');
44
- }, [formikValue]);
45
-
46
- function handleChange(e) {
47
- var onlyNumbersDecimalComma = e.target.value.toString().replace(/[^.,0-9]/g, '');
48
- setInputValue(onlyNumbersDecimalComma);
49
- handleChangeDebounce(onlyNumbersDecimalComma);
50
- }
51
-
52
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
53
- className: "input-group"
54
- }, /*#__PURE__*/React.createElement("div", {
55
- className: "input-group-prepend"
56
- }, /*#__PURE__*/React.createElement("span", {
57
- className: "input-group-text"
58
- }, "$")), /*#__PURE__*/React.createElement("input", {
59
- name: name,
60
- type: "text",
61
- value: inputValue,
62
- onChange: handleChange,
63
- onBlur: onBlur,
64
- disabled: disabled,
65
- className: classNames(classname, meta.error === 'Required' ? 'is-invalid' : '', 'react-select-input money-input form-control')
66
- })));
67
- }
68
-
69
- function formatToCurrency(value) {
70
- if (value === null || value === undefined) {
71
- return null;
72
- } // 'value' is sometimes a number on first render
73
-
74
-
75
- var onlyNumbersDecimal = value.toString().replace(/[^.0-9]/g, '');
76
-
77
- if (!onlyNumbersDecimal) {
78
- return null;
79
- }
80
-
81
- var result = new Intl.NumberFormat('en-US', {
82
- style: 'decimal',
83
- minimumSignificantDigits: 2,
84
- minimumFractionDigits: 2
85
- }).format(parseFloat(onlyNumbersDecimal));
86
- result = formatTwoDecimalPlaces(result);
87
- return result;
88
- }
89
-
90
- function formatTwoDecimalPlaces(value) {
91
- var decimalIndex = value.indexOf('.'); // If the string doesn't contain a decimal OR
92
- // the string contains a single '.' with nothing to the right of the decimal -> append '.00'
93
- // Reason: parseFloat will remove '.00' from whole numbers (ex. 350.00 -> 350)
94
-
95
- if (!value.includes('.')) {
96
- return value.concat('.00');
97
- } // If 2 or more characters to the right of the decimal
98
- else if (!!value.charAt(decimalIndex + 2)) {
99
- return value.substring(0, decimalIndex + 3);
100
- } // If only 1 character to the right of the decimal
101
- else if (!!value.charAt(decimalIndex + 1)) {
102
- return value.substring(0, decimalIndex + 2).concat('0');
103
- }
104
-
105
- return value;
106
- }
@@ -1,2 +0,0 @@
1
- import MoneyFormattedInput from './MoneyFormattedInput';
2
- export { MoneyFormattedInput };
@@ -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,162 +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 classNames from 'classnames';
11
- import React, { useEffect, useRef } from 'react';
12
- import { default as ReactSelect } from 'react-select';
13
- export var overrideTheme = function overrideTheme(theme) {
14
- return _objectSpread(_objectSpread({}, theme), {}, {
15
- borderRadius: 0,
16
- spacing: Object.assign({}, _objectSpread({}, theme.spacing), {
17
- baseUnit: 2,
18
- controlHeight: 35
19
- })
20
- });
21
- };
22
- var red = '#f86c6b';
23
- var inputBorderColor = '#c2cfd6';
24
- var inputBorderColorFocused = '#8ad4ee';
25
- var inputBoxShadowFocused = '0 0 0 0.2rem rgba(32, 168, 216, 0.25)';
26
- var placeholderColor = '#9ca3af';
27
- var disabledSingleValueColor = '#4b5563';
28
- export var customStyles = {
29
- control: function control(provided, _ref) {
30
- var isFocused = _ref.isFocused,
31
- selectProps = _ref.selectProps;
32
- return _objectSpread(_objectSpread({}, provided), {}, {
33
- paddingLeft: '7px',
34
- '&:hover': {
35
- borderColor: isFocused ? inputBorderColorFocused : inputBorderColor
36
- },
37
- borderColor: selectProps.hasErrors ? red : isFocused ? inputBorderColorFocused : inputBorderColor,
38
- boxShadow: isFocused ? inputBoxShadowFocused : ''
39
- });
40
- },
41
- menu: function menu(provided) {
42
- return _objectSpread(_objectSpread({}, provided), {}, {
43
- zIndex: 3
44
- });
45
- },
46
- singleValue: function singleValue(provided, state) {
47
- var color = state.isDisabled ? disabledSingleValueColor : '';
48
- return _objectSpread(_objectSpread({}, provided), {}, {
49
- color: color
50
- });
51
- },
52
- placeholder: function placeholder(defaultStyles) {
53
- return _objectSpread(_objectSpread({}, defaultStyles), {}, {
54
- color: placeholderColor
55
- });
56
- }
57
- }; // internal to forms use only
58
-
59
- export default function ReactSelectInput(_ref2) {
60
- var className = _ref2.className,
61
- meta = _ref2.meta,
62
- disabled = _ref2.disabled,
63
- onSelected = _ref2.onSelected,
64
- onChange = _ref2.onChange,
65
- _onBlur = _ref2.onBlur,
66
- value = _ref2.value,
67
- options = _ref2.options,
68
- defaultValue = _ref2.defaultValue,
69
- defaultIndex = _ref2.defaultIndex,
70
- props = _objectWithoutProperties(_ref2, _excluded);
71
-
72
- var selectedItems = getSelectedItems();
73
- var onSelectedRef = useRef(onSelected);
74
- onSelectedRef.current = onSelected;
75
- useEffect(function () {
76
- onSelectedRef.current && onSelectedRef.current(selectedItems);
77
- }, [selectedItems]);
78
- var onBlurRef = useRef(_onBlur);
79
- onBlurRef.current = _onBlur;
80
- var touched = meta.touched;
81
- useEffect(function () {
82
- if (!touched) return; // without the timer set to 0, if the empty option is selected the required message doesn't appear until clicked away from the select input
83
-
84
- var timerRef = setTimeout(function () {
85
- onBlurRef.current && onBlurRef.current();
86
- }, 0);
87
- return function () {
88
- clearTimeout(timerRef);
89
- };
90
- }, [value, touched]);
91
- var classes = classNames(className, 'react-select-input', {
92
- 'is-invalid': !!meta.error,
93
- disabled: disabled
94
- });
95
- return /*#__PURE__*/React.createElement(ReactSelect, _extends({}, props, {
96
- options: options,
97
- isDisabled: disabled,
98
- hasErrors: meta.error,
99
- getOptionLabel: function getOptionLabel(option) {
100
- return option.label;
101
- },
102
- getOptionValue: getOptionValue,
103
- value: selectedItems,
104
- onChange: handleChange,
105
- onBlur: function onBlur() {
106
- return _onBlur();
107
- },
108
- className: classes,
109
- theme: overrideTheme,
110
- styles: customStyles,
111
- menuPortalTarget: document.body,
112
- menuPlacement: "auto"
113
- }));
114
-
115
- function getOptionValue(option) {
116
- if (typeof props.getOptionValue === 'function') {
117
- return props.getOptionValue(option);
118
- } else {
119
- return option.value;
120
- }
121
- }
122
-
123
- function getSelectedItems() {
124
- if (defaultValue !== undefined && value === '') {
125
- value = defaultValue;
126
- onChange(defaultValue);
127
- }
128
-
129
- if (defaultIndex !== undefined && value === '') {
130
- var item = options[defaultIndex];
131
- onChange(getOptionValue(item));
132
- return item;
133
- }
134
-
135
- var valueIsArray = Array.isArray(value);
136
- var matches = options.filter(function (x) {
137
- if (valueIsArray) {
138
- return value.includes(getOptionValue(x));
139
- } else {
140
- return value === getOptionValue(x);
141
- }
142
- });
143
-
144
- if (matches.length < 1) {
145
- return null;
146
- }
147
-
148
- return matches;
149
- }
150
-
151
- function handleChange(e) {
152
- if (e == null) {
153
- onChange(null);
154
- } else if (Array.isArray(e)) {
155
- onChange(e.map(function (x) {
156
- return x.value;
157
- }));
158
- } else {
159
- onChange(e.value);
160
- }
161
- }
162
- }
@@ -1,2 +0,0 @@
1
- import ReactSelectField, { overrideTheme, customStyles } from './ReactSelectField';
2
- export { ReactSelectField as default, overrideTheme, customStyles };
package/es/normalizers.js DELETED
@@ -1,39 +0,0 @@
1
- export var phoneNumber = function phoneNumber(value) {
2
- if (!value) {
3
- return value;
4
- }
5
-
6
- var onlyNums = value.replace(/[^\d]/g, '');
7
-
8
- if (onlyNums.length <= 3) {
9
- return onlyNums;
10
- }
11
-
12
- if (onlyNums.length <= 7) {
13
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3));
14
- }
15
-
16
- if (onlyNums.length <= 10) {
17
- return "".concat(onlyNums.slice(0, 3), "-").concat(onlyNums.slice(3, 6), "-").concat(onlyNums.slice(6, 10));
18
- }
19
-
20
- if (onlyNums.length <= 13) {
21
- var countryCodeLength = onlyNums - 10;
22
- return "+".concat(onlyNums.slice(0, countryCodeLength), " ").concat(onlyNums.slice(countryCodeLength, 3 + countryCodeLength), "-").concat(onlyNums.slice(3 + countryCodeLength, 6 + countryCodeLength), "-").concat(onlyNums.slice(6 + countryCodeLength, onlyNums.length));
23
- }
24
-
25
- return onlyNums;
26
- };
27
- export var zipCode = function zipCode(value) {
28
- if (!value) {
29
- return value;
30
- }
31
-
32
- var onlyNums = value.replace(/[^\d]/g, '');
33
-
34
- if (onlyNums.length > 5) {
35
- return onlyNums.substring(0, 5) + '-' + onlyNums.substring(5, 9);
36
- }
37
-
38
- return onlyNums;
39
- };
package/es/selectors.js DELETED
@@ -1,6 +0,0 @@
1
- export var getForm = function getForm(state, ownProps) {
2
- return state.form[ownProps.form];
3
- };
4
- export var getRegisteredFields = function getRegisteredFields(state, ownProps) {
5
- return getForm(state, ownProps) ? getForm(state, ownProps).registeredFields : {};
6
- };