envoc-form 4.1.0 → 5.0.2

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 (231) hide show
  1. package/README.md +367 -176
  2. package/es/AddressInput/AddressInput.d.ts +24 -25
  3. package/es/AddressInput/AddressInput.js +20 -31
  4. package/es/AddressInput/UsStates.d.ts +3 -3
  5. package/es/AddressInput/UsStates.js +53 -53
  6. package/es/ConfirmBaseForm/ConfirmBaseForm.d.ts +26 -26
  7. package/es/ConfirmBaseForm/ConfirmBaseForm.js +42 -42
  8. package/es/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +24 -24
  9. package/es/ConfirmDeleteForm/ConfirmDeleteForm.js +60 -60
  10. package/es/DatePicker/DatePickerGroup.d.ts +13 -14
  11. package/es/DatePicker/DatePickerGroup.js +87 -87
  12. package/es/DatePicker/DatePickerHelper.d.ts +3 -3
  13. package/es/DatePicker/DatePickerHelper.js +1 -1
  14. package/es/DatePicker/StringDateOnlyPickerGroup.d.ts +9 -10
  15. package/es/DatePicker/StringDateOnlyPickerGroup.js +29 -29
  16. package/es/DatePicker/StringDatePickerGroup.d.ts +9 -10
  17. package/es/DatePicker/StringDatePickerGroup.js +24 -24
  18. package/es/Field/CustomFieldInputProps.d.ts +7 -7
  19. package/es/Field/CustomFieldInputProps.js +1 -1
  20. package/es/Field/CustomFieldMetaProps.d.ts +4 -4
  21. package/es/Field/CustomFieldMetaProps.js +1 -1
  22. package/es/Field/Field.d.ts +28 -28
  23. package/es/Field/Field.js +51 -51
  24. package/es/Field/FieldErrorScrollTarget.d.ts +2 -3
  25. package/es/Field/FieldErrorScrollTarget.js +12 -12
  26. package/es/Field/FieldNameContext.d.ts +3 -3
  27. package/es/Field/FieldNameContext.js +3 -3
  28. package/es/Field/FieldSection.d.ts +7 -7
  29. package/es/Field/FieldSection.js +9 -20
  30. package/es/Field/InjectedFieldProps.d.ts +7 -7
  31. package/es/Field/InjectedFieldProps.js +1 -1
  32. package/es/Field/StandAloneInput.d.ts +13 -13
  33. package/es/Field/StandAloneInput.js +50 -50
  34. package/es/Field/useStandardField.d.ts +21 -21
  35. package/es/Field/useStandardField.js +92 -92
  36. package/es/FieldArray/FieldArray.d.ts +24 -24
  37. package/es/FieldArray/FieldArray.js +77 -88
  38. package/es/File/FileGroup.d.ts +10 -10
  39. package/es/File/FileGroup.js +53 -53
  40. package/es/File/FileList.d.ts +5 -6
  41. package/es/File/FileList.js +10 -21
  42. package/es/File/humanFileSize.d.ts +1 -1
  43. package/es/File/humanFileSize.js +6 -6
  44. package/es/Form/FocusError.d.ts +7 -7
  45. package/es/Form/FocusError.js +42 -42
  46. package/es/Form/Form.d.ts +33 -33
  47. package/es/Form/Form.js +141 -141
  48. package/es/Form/FormBasedPreventNavigation.d.ts +6 -7
  49. package/es/Form/FormBasedPreventNavigation.js +20 -20
  50. package/es/Form/LegacyFormBasedPreventNavigation.d.ts +17 -17
  51. package/es/Form/LegacyFormBasedPreventNavigation.js +69 -69
  52. package/es/Form/NewFormBasedPreventNavigation.d.ts +14 -14
  53. package/es/Form/NewFormBasedPreventNavigation.js +39 -39
  54. package/es/Form/ServerErrorContext.d.ts +11 -11
  55. package/es/Form/ServerErrorContext.js +9 -9
  56. package/es/FormActions.d.ts +12 -13
  57. package/es/FormActions.js +16 -27
  58. package/es/FormDefaults.d.ts +4 -4
  59. package/es/FormDefaults.js +2 -2
  60. package/es/Group.d.ts +16 -16
  61. package/es/Group.js +14 -25
  62. package/es/Input/IconInputGroup.d.ts +12 -12
  63. package/es/Input/IconInputGroup.js +43 -43
  64. package/es/Input/InputGroup.d.ts +12 -12
  65. package/es/Input/InputGroup.js +34 -34
  66. package/es/Input/MoneyInputGroup.d.ts +9 -9
  67. package/es/Input/MoneyInputGroup.js +43 -43
  68. package/es/Input/NumberInputGroup.d.ts +9 -9
  69. package/es/Input/NumberInputGroup.js +43 -43
  70. package/es/Input/PhoneNumberInputGroup.d.ts +10 -0
  71. package/es/Input/PhoneNumberInputGroup.js +47 -0
  72. package/es/Input/StringInputGroup.d.ts +8 -8
  73. package/es/Input/StringInputGroup.js +43 -43
  74. package/es/Normalization/NormalizationFunction.d.ts +4 -4
  75. package/es/Normalization/NormalizationFunction.js +1 -1
  76. package/es/Normalization/normalizers.d.ts +4 -4
  77. package/es/Normalization/normalizers.js +32 -32
  78. package/es/Select/BooleanSelectGroup.d.ts +7 -8
  79. package/es/Select/BooleanSelectGroup.js +28 -28
  80. package/es/Select/NumberSelectGroup.d.ts +9 -10
  81. package/es/Select/NumberSelectGroup.js +21 -21
  82. package/es/Select/SelectGroup.d.ts +27 -28
  83. package/es/Select/SelectGroup.js +65 -65
  84. package/es/Select/SelectGroupPropsHelper.d.ts +3 -3
  85. package/es/Select/SelectGroupPropsHelper.js +1 -1
  86. package/es/Select/StringSelectGroup.d.ts +9 -10
  87. package/es/Select/StringSelectGroup.js +21 -21
  88. package/es/StandardFormActions.d.ts +11 -11
  89. package/es/StandardFormActions.js +14 -25
  90. package/es/SubmitFormButton.d.ts +10 -10
  91. package/es/SubmitFormButton.js +40 -40
  92. package/es/TextArea/TextAreaGroup.d.ts +9 -9
  93. package/es/TextArea/TextAreaGroup.js +35 -35
  94. package/es/Validation/ValidatedApiResult.d.ts +6 -6
  95. package/es/Validation/ValidatedApiResult.js +1 -1
  96. package/es/Validation/ValidationError.d.ts +5 -5
  97. package/es/Validation/ValidationError.js +1 -1
  98. package/es/Validation/ValidationFunction.d.ts +4 -4
  99. package/es/Validation/ValidationFunction.js +1 -1
  100. package/es/Validation/validators.d.ts +18 -18
  101. package/es/Validation/validators.js +77 -77
  102. package/es/index.d.ts +75 -73
  103. package/es/index.js +51 -50
  104. package/es/setupTests.d.ts +1 -1
  105. package/es/setupTests.js +1 -1
  106. package/es/utils/objectContainsNonSerializableProperty.d.ts +1 -1
  107. package/es/utils/objectContainsNonSerializableProperty.js +14 -14
  108. package/es/utils/objectToFormData.d.ts +10 -10
  109. package/es/utils/objectToFormData.js +77 -77
  110. package/es/utils/typeChecks.d.ts +8 -8
  111. package/es/utils/typeChecks.js +18 -18
  112. package/lib/AddressInput/AddressInput.d.ts +24 -25
  113. package/lib/AddressInput/AddressInput.js +26 -37
  114. package/lib/AddressInput/UsStates.d.ts +3 -3
  115. package/lib/AddressInput/UsStates.js +55 -55
  116. package/lib/ConfirmBaseForm/ConfirmBaseForm.d.ts +26 -26
  117. package/lib/ConfirmBaseForm/ConfirmBaseForm.js +48 -48
  118. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.d.ts +24 -24
  119. package/lib/ConfirmDeleteForm/ConfirmDeleteForm.js +66 -66
  120. package/lib/DatePicker/DatePickerGroup.d.ts +13 -14
  121. package/lib/DatePicker/DatePickerGroup.js +95 -95
  122. package/lib/DatePicker/DatePickerHelper.d.ts +3 -3
  123. package/lib/DatePicker/DatePickerHelper.js +2 -2
  124. package/lib/DatePicker/StringDateOnlyPickerGroup.d.ts +9 -10
  125. package/lib/DatePicker/StringDateOnlyPickerGroup.js +35 -35
  126. package/lib/DatePicker/StringDatePickerGroup.d.ts +9 -10
  127. package/lib/DatePicker/StringDatePickerGroup.js +30 -30
  128. package/lib/Field/CustomFieldInputProps.d.ts +7 -7
  129. package/lib/Field/CustomFieldInputProps.js +2 -2
  130. package/lib/Field/CustomFieldMetaProps.d.ts +4 -4
  131. package/lib/Field/CustomFieldMetaProps.js +2 -2
  132. package/lib/Field/Field.d.ts +28 -28
  133. package/lib/Field/Field.js +56 -56
  134. package/lib/Field/FieldErrorScrollTarget.d.ts +2 -3
  135. package/lib/Field/FieldErrorScrollTarget.js +15 -15
  136. package/lib/Field/FieldNameContext.d.ts +3 -3
  137. package/lib/Field/FieldNameContext.js +9 -9
  138. package/lib/Field/FieldSection.d.ts +7 -7
  139. package/lib/Field/FieldSection.js +12 -23
  140. package/lib/Field/InjectedFieldProps.d.ts +7 -7
  141. package/lib/Field/InjectedFieldProps.js +2 -2
  142. package/lib/Field/StandAloneInput.d.ts +13 -13
  143. package/lib/Field/StandAloneInput.js +76 -76
  144. package/lib/Field/useStandardField.d.ts +21 -21
  145. package/lib/Field/useStandardField.js +95 -95
  146. package/lib/FieldArray/FieldArray.d.ts +24 -24
  147. package/lib/FieldArray/FieldArray.js +83 -94
  148. package/lib/File/FileGroup.d.ts +10 -10
  149. package/lib/File/FileGroup.js +58 -58
  150. package/lib/File/FileList.d.ts +5 -6
  151. package/lib/File/FileList.js +13 -24
  152. package/lib/File/humanFileSize.d.ts +1 -1
  153. package/lib/File/humanFileSize.js +10 -10
  154. package/lib/Form/FocusError.d.ts +7 -7
  155. package/lib/Form/FocusError.js +48 -48
  156. package/lib/Form/Form.d.ts +33 -33
  157. package/lib/Form/Form.js +147 -147
  158. package/lib/Form/FormBasedPreventNavigation.d.ts +6 -7
  159. package/lib/Form/FormBasedPreventNavigation.js +26 -26
  160. package/lib/Form/LegacyFormBasedPreventNavigation.d.ts +17 -17
  161. package/lib/Form/LegacyFormBasedPreventNavigation.js +72 -72
  162. package/lib/Form/NewFormBasedPreventNavigation.d.ts +14 -14
  163. package/lib/Form/NewFormBasedPreventNavigation.js +42 -42
  164. package/lib/Form/ServerErrorContext.d.ts +11 -11
  165. package/lib/Form/ServerErrorContext.js +15 -15
  166. package/lib/FormActions.d.ts +12 -13
  167. package/lib/FormActions.js +22 -33
  168. package/lib/FormDefaults.d.ts +4 -4
  169. package/lib/FormDefaults.js +5 -5
  170. package/lib/Group.d.ts +16 -16
  171. package/lib/Group.js +20 -31
  172. package/lib/Input/IconInputGroup.d.ts +12 -12
  173. package/lib/Input/IconInputGroup.js +48 -48
  174. package/lib/Input/InputGroup.d.ts +12 -12
  175. package/lib/Input/InputGroup.js +39 -39
  176. package/lib/Input/MoneyInputGroup.d.ts +9 -9
  177. package/lib/Input/MoneyInputGroup.js +48 -48
  178. package/lib/Input/NumberInputGroup.d.ts +9 -9
  179. package/lib/Input/NumberInputGroup.js +48 -48
  180. package/lib/Input/PhoneNumberInputGroup.d.ts +10 -0
  181. package/lib/Input/PhoneNumberInputGroup.js +52 -0
  182. package/lib/Input/StringInputGroup.d.ts +8 -8
  183. package/lib/Input/StringInputGroup.js +48 -48
  184. package/lib/Normalization/NormalizationFunction.d.ts +4 -4
  185. package/lib/Normalization/NormalizationFunction.js +2 -2
  186. package/lib/Normalization/normalizers.d.ts +4 -4
  187. package/lib/Normalization/normalizers.js +37 -37
  188. package/lib/Select/BooleanSelectGroup.d.ts +7 -8
  189. package/lib/Select/BooleanSelectGroup.js +35 -35
  190. package/lib/Select/NumberSelectGroup.d.ts +9 -10
  191. package/lib/Select/NumberSelectGroup.js +29 -29
  192. package/lib/Select/SelectGroup.d.ts +27 -28
  193. package/lib/Select/SelectGroup.js +71 -71
  194. package/lib/Select/SelectGroupPropsHelper.d.ts +3 -3
  195. package/lib/Select/SelectGroupPropsHelper.js +2 -2
  196. package/lib/Select/StringSelectGroup.d.ts +9 -10
  197. package/lib/Select/StringSelectGroup.js +29 -29
  198. package/lib/StandardFormActions.d.ts +11 -11
  199. package/lib/StandardFormActions.js +20 -31
  200. package/lib/SubmitFormButton.d.ts +10 -10
  201. package/lib/SubmitFormButton.js +45 -45
  202. package/lib/TextArea/TextAreaGroup.d.ts +9 -9
  203. package/lib/TextArea/TextAreaGroup.js +40 -40
  204. package/lib/Validation/ValidatedApiResult.d.ts +6 -6
  205. package/lib/Validation/ValidatedApiResult.js +2 -2
  206. package/lib/Validation/ValidationError.d.ts +5 -5
  207. package/lib/Validation/ValidationError.js +2 -2
  208. package/lib/Validation/ValidationFunction.d.ts +4 -4
  209. package/lib/Validation/ValidationFunction.js +2 -2
  210. package/lib/Validation/validators.d.ts +18 -18
  211. package/lib/Validation/validators.js +90 -90
  212. package/lib/index.d.ts +75 -73
  213. package/lib/index.js +119 -117
  214. package/lib/setupTests.d.ts +1 -1
  215. package/lib/setupTests.js +3 -3
  216. package/lib/utils/objectContainsNonSerializableProperty.d.ts +1 -1
  217. package/lib/utils/objectContainsNonSerializableProperty.js +17 -17
  218. package/lib/utils/objectToFormData.d.ts +10 -10
  219. package/lib/utils/objectToFormData.js +79 -79
  220. package/lib/utils/typeChecks.d.ts +8 -8
  221. package/lib/utils/typeChecks.js +29 -29
  222. package/package.json +12 -12
  223. package/src/AddressInput/__snapshots__/AddressInput.test.tsx.snap +6 -8
  224. package/src/Input/PhoneNumberInputGroup.tsx +45 -0
  225. package/src/Input/__Tests__/PhoneNumberInputGroup.test.tsx +36 -0
  226. package/src/Input/__Tests__/__snapshots__/PhoneNumberInputGroup.test.tsx.snap +33 -0
  227. package/src/Select/__tests__/__snapshots__/BooleanSelectGroup.test.tsx.snap +6 -8
  228. package/src/Select/__tests__/__snapshots__/NumberSelectGroup.test.tsx.snap +12 -16
  229. package/src/Select/__tests__/__snapshots__/StringSelectGroup.test.tsx.snap +12 -16
  230. package/src/index.ts +3 -0
  231. package/src/utils/objectToFormData.test.tsx +1 -1
@@ -1,14 +1,13 @@
1
- /// <reference types="react" />
2
- import { DatePickerProps } from 'react-date-picker/dist/entry.nostyle';
3
- import { InjectedFieldProps } from '../Field/InjectedFieldProps';
4
- import { GroupProps } from '../Group';
5
- export interface DatePickerGroupProps<T> extends InjectedFieldProps<T | undefined | null>, Omit<DatePickerProps, keyof InjectedFieldProps<T> | 'name' | 'value' | 'className'>, Omit<GroupProps, keyof InjectedFieldProps<T> | 'children'> {
6
- convert: (arg: Date) => T;
7
- }
8
- /**
9
- * Field for inputting dates. Uses `<Group/>` and `<DatePicker/>`.
10
- *
11
- * Uses [react-date-picker](https://www.npmjs.com/package/react-date-picker)
12
- */
13
- export default function DatePickerGroup<T>({ input, meta, label, helpText, className, required, disabled, convert, ...rest }: DatePickerGroupProps<T>): JSX.Element;
14
- export declare function convertToTimeZoneInsensitiveISOString(date: Date): string;
1
+ import { DatePickerProps } from 'react-date-picker/dist/entry.nostyle';
2
+ import { InjectedFieldProps } from '../Field/InjectedFieldProps';
3
+ import { GroupProps } from '../Group';
4
+ export interface DatePickerGroupProps<T> extends InjectedFieldProps<T | undefined | null>, Omit<DatePickerProps, keyof InjectedFieldProps<T> | 'name' | 'value' | 'className'>, Omit<GroupProps, keyof InjectedFieldProps<T> | 'children'> {
5
+ convert: (arg: Date) => T;
6
+ }
7
+ /**
8
+ * Field for inputting dates. Uses `<Group/>` and `<DatePicker/>`.
9
+ *
10
+ * Uses [react-date-picker](https://www.npmjs.com/package/react-date-picker)
11
+ */
12
+ export default function DatePickerGroup<T>({ input, meta, label, helpText, className, required, disabled, convert, ...rest }: DatePickerGroupProps<T>): import("react/jsx-runtime").JSX.Element;
13
+ export declare function convertToTimeZoneInsensitiveISOString(date: Date): string;
@@ -1,95 +1,95 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.convertToTimeZoneInsensitiveISOString = void 0;
29
- var jsx_runtime_1 = require("react/jsx-runtime");
30
- var react_1 = require("react");
31
- var entry_nostyle_1 = __importDefault(require("react-date-picker/dist/entry.nostyle"));
32
- var classnames_1 = __importDefault(require("classnames"));
33
- var parseISO_1 = __importDefault(require("date-fns/parseISO"));
34
- var FormDefaults_1 = require("../FormDefaults");
35
- var Group_1 = __importDefault(require("../Group"));
36
- /**
37
- * Field for inputting dates. Uses `<Group/>` and `<DatePicker/>`.
38
- *
39
- * Uses [react-date-picker](https://www.npmjs.com/package/react-date-picker)
40
- */
41
- function DatePickerGroup(_a) {
42
- var input = _a.input, meta = _a.meta, label = _a.label, helpText = _a.helpText, className = _a.className, required = _a.required, disabled = _a.disabled, convert = _a.convert, rest = __rest(_a, ["input", "meta", "label", "helpText", "className", "required", "disabled", "convert"]);
43
- var _b = (0, react_1.useState)(null), displayDate = _b[0], setDisplayDate = _b[1];
44
- (0, react_1.useEffect)(function () {
45
- if (!input.value) {
46
- setDisplayDate(null);
47
- }
48
- else if (typeof input.value === 'string') {
49
- if (input.value.indexOf('T') === -1) {
50
- setDisplayDate(new Date("".concat(input.value, "T00:00:00.000")));
51
- }
52
- else {
53
- setDisplayDate(new Date(input.value));
54
- }
55
- }
56
- }, [setDisplayDate, input.value]);
57
- return ((0, jsx_runtime_1.jsx)(Group_1.default, __assign({ input: input, meta: meta, label: label, helpText: helpText, className: (0, classnames_1.default)(className, FormDefaults_1.FormDefaults.cssClassPrefix + 'date-picker'), required: required, disabled: disabled }, { children: (0, jsx_runtime_1.jsx)(entry_nostyle_1.default, __assign({}, rest, { className: (0, classnames_1.default)(FormDefaults_1.FormDefaults.cssClassPrefix + 'date-picker', className), value: displayDate, onChange: handleChange })) })));
58
- function handleChange(e) {
59
- var onChange = input.onChange;
60
- if (onChange === null) {
61
- return;
62
- }
63
- if (!e) {
64
- onChange(undefined);
65
- setDisplayDate(null);
66
- return;
67
- }
68
- else if (typeof e === 'string') {
69
- var parsedValue = (0, parseISO_1.default)(e.toString().split('T')[0]);
70
- setDisplayDate(parsedValue);
71
- onChange(convert(parsedValue));
72
- }
73
- else if (e instanceof Date) {
74
- var parsedValue = (0, parseISO_1.default)(convertToTimeZoneInsensitiveISOString(e).split('T')[0]);
75
- setDisplayDate(parsedValue);
76
- onChange(convert(parsedValue));
77
- }
78
- else {
79
- // e is instanceof Date[]
80
- var parsedValue = (0, parseISO_1.default)(convertToTimeZoneInsensitiveISOString(e[0]).split('T')[0]);
81
- setDisplayDate(parsedValue);
82
- onChange(convert(parsedValue));
83
- }
84
- }
85
- }
86
- exports.default = DatePickerGroup;
87
- function convertToTimeZoneInsensitiveISOString(date) {
88
- var year = new Intl.DateTimeFormat('en', { year: 'numeric' })
89
- .format(date)
90
- .padStart(4, '0');
91
- var month = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(date);
92
- var day = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(date);
93
- return "".concat(year, "-").concat(month, "-").concat(day, "T00:00:00.000Z");
94
- }
95
- exports.convertToTimeZoneInsensitiveISOString = convertToTimeZoneInsensitiveISOString;
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.convertToTimeZoneInsensitiveISOString = void 0;
29
+ var jsx_runtime_1 = require("react/jsx-runtime");
30
+ var react_1 = require("react");
31
+ var entry_nostyle_1 = __importDefault(require("react-date-picker/dist/entry.nostyle"));
32
+ var classnames_1 = __importDefault(require("classnames"));
33
+ var parseISO_1 = __importDefault(require("date-fns/parseISO"));
34
+ var FormDefaults_1 = require("../FormDefaults");
35
+ var Group_1 = __importDefault(require("../Group"));
36
+ /**
37
+ * Field for inputting dates. Uses `<Group/>` and `<DatePicker/>`.
38
+ *
39
+ * Uses [react-date-picker](https://www.npmjs.com/package/react-date-picker)
40
+ */
41
+ function DatePickerGroup(_a) {
42
+ var input = _a.input, meta = _a.meta, label = _a.label, helpText = _a.helpText, className = _a.className, required = _a.required, disabled = _a.disabled, convert = _a.convert, rest = __rest(_a, ["input", "meta", "label", "helpText", "className", "required", "disabled", "convert"]);
43
+ var _b = (0, react_1.useState)(null), displayDate = _b[0], setDisplayDate = _b[1];
44
+ (0, react_1.useEffect)(function () {
45
+ if (!input.value) {
46
+ setDisplayDate(null);
47
+ }
48
+ else if (typeof input.value === 'string') {
49
+ if (input.value.indexOf('T') === -1) {
50
+ setDisplayDate(new Date("".concat(input.value, "T00:00:00.000")));
51
+ }
52
+ else {
53
+ setDisplayDate(new Date(input.value));
54
+ }
55
+ }
56
+ }, [setDisplayDate, input.value]);
57
+ return ((0, jsx_runtime_1.jsx)(Group_1.default, { input: input, meta: meta, label: label, helpText: helpText, className: (0, classnames_1.default)(className, FormDefaults_1.FormDefaults.cssClassPrefix + 'date-picker'), required: required, disabled: disabled, children: (0, jsx_runtime_1.jsx)(entry_nostyle_1.default, __assign({}, rest, { className: (0, classnames_1.default)(FormDefaults_1.FormDefaults.cssClassPrefix + 'date-picker', className), value: displayDate, onChange: handleChange })) }));
58
+ function handleChange(e) {
59
+ var onChange = input.onChange;
60
+ if (onChange === null) {
61
+ return;
62
+ }
63
+ if (!e) {
64
+ onChange(undefined);
65
+ setDisplayDate(null);
66
+ return;
67
+ }
68
+ else if (typeof e === 'string') {
69
+ var parsedValue = (0, parseISO_1.default)(e.toString().split('T')[0]);
70
+ setDisplayDate(parsedValue);
71
+ onChange(convert(parsedValue));
72
+ }
73
+ else if (e instanceof Date) {
74
+ var parsedValue = (0, parseISO_1.default)(convertToTimeZoneInsensitiveISOString(e).split('T')[0]);
75
+ setDisplayDate(parsedValue);
76
+ onChange(convert(parsedValue));
77
+ }
78
+ else {
79
+ // e is instanceof Date[]
80
+ var parsedValue = (0, parseISO_1.default)(convertToTimeZoneInsensitiveISOString(e[0]).split('T')[0]);
81
+ setDisplayDate(parsedValue);
82
+ onChange(convert(parsedValue));
83
+ }
84
+ }
85
+ }
86
+ exports.default = DatePickerGroup;
87
+ function convertToTimeZoneInsensitiveISOString(date) {
88
+ var year = new Intl.DateTimeFormat('en', { year: 'numeric' })
89
+ .format(date)
90
+ .padStart(4, '0');
91
+ var month = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(date);
92
+ var day = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(date);
93
+ return "".concat(year, "-").concat(month, "-").concat(day, "T00:00:00.000Z");
94
+ }
95
+ exports.convertToTimeZoneInsensitiveISOString = convertToTimeZoneInsensitiveISOString;
@@ -1,3 +1,3 @@
1
- import { DatePickerGroupProps } from './DatePickerGroup';
2
- export interface DatePickerHelper<T> extends Omit<DatePickerGroupProps<T>, 'convert'> {
3
- }
1
+ import { DatePickerGroupProps } from './DatePickerGroup';
2
+ export interface DatePickerHelper<T> extends Omit<DatePickerGroupProps<T>, 'convert'> {
3
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,10 +1,9 @@
1
- /// <reference types="react" />
2
- import { DatePickerHelper } from './DatePickerHelper';
3
- export interface StringDateOnlyPickerGroupProps extends DatePickerHelper<string | undefined | null> {
4
- }
5
- /**
6
- * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DD`.
7
- *
8
- * Default display to the user is in `MM/DD/YYYY` format.
9
- */
10
- export default function StringDatePickerGroup(props: StringDateOnlyPickerGroupProps): JSX.Element;
1
+ import { DatePickerHelper } from './DatePickerHelper';
2
+ export interface StringDateOnlyPickerGroupProps extends DatePickerHelper<string | undefined | null> {
3
+ }
4
+ /**
5
+ * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DD`.
6
+ *
7
+ * Default display to the user is in `MM/DD/YYYY` format.
8
+ */
9
+ export default function StringDatePickerGroup(props: StringDateOnlyPickerGroupProps): import("react/jsx-runtime").JSX.Element;
@@ -1,35 +1,35 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- var jsx_runtime_1 = require("react/jsx-runtime");
18
- var DatePickerGroup_1 = __importDefault(require("./DatePickerGroup"));
19
- /**
20
- * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DD`.
21
- *
22
- * Default display to the user is in `MM/DD/YYYY` format.
23
- */
24
- function StringDatePickerGroup(props) {
25
- return (0, jsx_runtime_1.jsx)(DatePickerGroup_1.default, __assign({}, props, { convert: convertToDateOnly }));
26
- }
27
- exports.default = StringDatePickerGroup;
28
- function convertToDateOnly(arg) {
29
- var year = new Intl.DateTimeFormat('en', { year: 'numeric' })
30
- .format(arg)
31
- .padStart(4, '0');
32
- var month = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(arg);
33
- var day = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(arg);
34
- return "".concat(year, "-").concat(month, "-").concat(day);
35
- }
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var jsx_runtime_1 = require("react/jsx-runtime");
18
+ var DatePickerGroup_1 = __importDefault(require("./DatePickerGroup"));
19
+ /**
20
+ * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DD`.
21
+ *
22
+ * Default display to the user is in `MM/DD/YYYY` format.
23
+ */
24
+ function StringDatePickerGroup(props) {
25
+ return (0, jsx_runtime_1.jsx)(DatePickerGroup_1.default, __assign({}, props, { convert: convertToDateOnly }));
26
+ }
27
+ exports.default = StringDatePickerGroup;
28
+ function convertToDateOnly(arg) {
29
+ var year = new Intl.DateTimeFormat('en', { year: 'numeric' })
30
+ .format(arg)
31
+ .padStart(4, '0');
32
+ var month = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(arg);
33
+ var day = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(arg);
34
+ return "".concat(year, "-").concat(month, "-").concat(day);
35
+ }
@@ -1,10 +1,9 @@
1
- /// <reference types="react" />
2
- import { DatePickerHelper } from './DatePickerHelper';
3
- export interface StringDatePickerGroupProps extends DatePickerHelper<string | undefined | null> {
4
- }
5
- /**
6
- * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DDTHH:mm:ss.sssZ` or `±YYYYYY-MM-DDTHH:mm:ss.sssZ`
7
- *
8
- * If you need `YYYY-MM-DD` format use `<StringDateOnlyPickerGroup/>`.
9
- */
10
- export default function StringDatePickerGroup(props: StringDatePickerGroupProps): JSX.Element;
1
+ import { DatePickerHelper } from './DatePickerHelper';
2
+ export interface StringDatePickerGroupProps extends DatePickerHelper<string | undefined | null> {
3
+ }
4
+ /**
5
+ * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DDTHH:mm:ss.sssZ` or `±YYYYYY-MM-DDTHH:mm:ss.sssZ`
6
+ *
7
+ * If you need `YYYY-MM-DD` format use `<StringDateOnlyPickerGroup/>`.
8
+ */
9
+ export default function StringDatePickerGroup(props: StringDatePickerGroupProps): import("react/jsx-runtime").JSX.Element;
@@ -1,30 +1,30 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- var jsx_runtime_1 = require("react/jsx-runtime");
18
- var DatePickerGroup_1 = __importDefault(require("./DatePickerGroup"));
19
- /**
20
- * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DDTHH:mm:ss.sssZ` or `±YYYYYY-MM-DDTHH:mm:ss.sssZ`
21
- *
22
- * If you need `YYYY-MM-DD` format use `<StringDateOnlyPickerGroup/>`.
23
- */
24
- function StringDatePickerGroup(props) {
25
- return (0, jsx_runtime_1.jsx)(DatePickerGroup_1.default, __assign({}, props, { convert: convertToDateOnly }));
26
- }
27
- exports.default = StringDatePickerGroup;
28
- function convertToDateOnly(arg) {
29
- return arg.toISOString();
30
- }
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var jsx_runtime_1 = require("react/jsx-runtime");
18
+ var DatePickerGroup_1 = __importDefault(require("./DatePickerGroup"));
19
+ /**
20
+ * Date picker input that consumes and outputs as a date only string in ISO format `YYYY-MM-DDTHH:mm:ss.sssZ` or `±YYYYYY-MM-DDTHH:mm:ss.sssZ`
21
+ *
22
+ * If you need `YYYY-MM-DD` format use `<StringDateOnlyPickerGroup/>`.
23
+ */
24
+ function StringDatePickerGroup(props) {
25
+ return (0, jsx_runtime_1.jsx)(DatePickerGroup_1.default, __assign({}, props, { convert: convertToDateOnly }));
26
+ }
27
+ exports.default = StringDatePickerGroup;
28
+ function convertToDateOnly(arg) {
29
+ return arg.toISOString();
30
+ }
@@ -1,7 +1,7 @@
1
- export interface CustomFieldInputProps<TValue> {
2
- id: string;
3
- name: string;
4
- value: TValue;
5
- onChange: (newValue: TValue) => void;
6
- onBlur: () => void;
7
- }
1
+ export interface CustomFieldInputProps<TValue> {
2
+ id: string;
3
+ name: string;
4
+ value: TValue;
5
+ onChange: (newValue: TValue) => void;
6
+ onBlur: () => void;
7
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,4 @@
1
- import { FieldMetaProps } from 'formik';
2
- export interface CustomFieldMetaProps<TValue> extends FieldMetaProps<TValue> {
3
- warning: string | undefined;
4
- }
1
+ import { FieldMetaProps } from 'formik';
2
+ export interface CustomFieldMetaProps<TValue> extends FieldMetaProps<TValue> {
3
+ warning: string | undefined;
4
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,28 +1,28 @@
1
- import { ComponentProps, ElementType, LegacyRef } from 'react';
2
- import { InjectedFieldProps } from './InjectedFieldProps';
3
- import { NormalizationFunction } from '../Normalization/NormalizationFunction';
4
- import { ValidationFunction } from '../Validation/ValidationFunction';
5
- export declare type RenderComponent<TValue, TRenderComponent extends ElementType> = Partial<ComponentProps<TRenderComponent>> extends Partial<InjectedFieldProps<TValue | undefined | null>> ? TRenderComponent : never;
6
- export declare type RenderComponentProps<TValue, TRenderComponent extends ElementType> = Partial<ComponentProps<TRenderComponent>> extends Partial<InjectedFieldProps<TValue | undefined | null>> ? ComponentProps<TRenderComponent> : never;
7
- /** A specific Field instance to be rendered by the given TRenderComponent or by whatever default is reasonable */
8
- export declare type FieldProps<TForm extends object, TProp extends keyof TForm, TRenderComponent extends ElementType> = {
9
- /** Name of the field. Used on submission. */
10
- name: TProp;
11
- /** Component to be rendered. Usually this is a type of input group e.g. `<StringInputGroup/>` */
12
- Component: RenderComponent<TForm[TProp], TRenderComponent>;
13
- /** Id of the field. */
14
- id?: string;
15
- /** Whether the field should be disabled. */
16
- disabled?: boolean;
17
- /** Client side validation functions */
18
- validate?: ValidationFunction<TForm[TProp]> | ValidationFunction<TForm[TProp]>[];
19
- /** Function to modify the field value without making the form dirty. (e.g. phone number) */
20
- normalize?: NormalizationFunction<TForm[TProp]>;
21
- } & Omit<RenderComponentProps<TForm[TProp], TRenderComponent>, keyof InjectedFieldProps<TForm[TProp]>>;
22
- /**
23
- * Renders whatever Component is passed - injecting the formik values needed to finish wiring up that individual field.
24
- * Should no Component be used then the default will be provided by the default lookup based on typeof(TForm[TProp])
25
- */
26
- declare function Field<TForm extends object, TProp extends keyof TForm, TRenderComponent extends ElementType>({ name, Component, id, disabled, validate, normalize, ...rest }: FieldProps<TForm, TProp, TRenderComponent>, ref: LegacyRef<any>): JSX.Element;
27
- declare const _default: typeof Field;
28
- export default _default;
1
+ import { ComponentProps, ElementType, LegacyRef } from 'react';
2
+ import { InjectedFieldProps } from './InjectedFieldProps';
3
+ import { NormalizationFunction } from '../Normalization/NormalizationFunction';
4
+ import { ValidationFunction } from '../Validation/ValidationFunction';
5
+ export type RenderComponent<TValue, TRenderComponent extends ElementType> = Partial<ComponentProps<TRenderComponent>> extends Partial<InjectedFieldProps<TValue | undefined | null>> ? TRenderComponent : never;
6
+ export type RenderComponentProps<TValue, TRenderComponent extends ElementType> = Partial<ComponentProps<TRenderComponent>> extends Partial<InjectedFieldProps<TValue | undefined | null>> ? ComponentProps<TRenderComponent> : never;
7
+ /** A specific Field instance to be rendered by the given TRenderComponent or by whatever default is reasonable */
8
+ export type FieldProps<TForm extends object, TProp extends keyof TForm, TRenderComponent extends ElementType> = {
9
+ /** Name of the field. Used on submission. */
10
+ name: TProp;
11
+ /** Component to be rendered. Usually this is a type of input group e.g. `<StringInputGroup/>` */
12
+ Component: RenderComponent<TForm[TProp], TRenderComponent>;
13
+ /** Id of the field. */
14
+ id?: string;
15
+ /** Whether the field should be disabled. */
16
+ disabled?: boolean;
17
+ /** Client side validation functions */
18
+ validate?: ValidationFunction<TForm[TProp]> | ValidationFunction<TForm[TProp]>[];
19
+ /** Function to modify the field value without making the form dirty. (e.g. phone number) */
20
+ normalize?: NormalizationFunction<TForm[TProp]>;
21
+ } & Omit<RenderComponentProps<TForm[TProp], TRenderComponent>, keyof InjectedFieldProps<TForm[TProp]>>;
22
+ /**
23
+ * Renders whatever Component is passed - injecting the formik values needed to finish wiring up that individual field.
24
+ * Should no Component be used then the default will be provided by the default lookup based on typeof(TForm[TProp])
25
+ */
26
+ declare function Field<TForm extends object, TProp extends keyof TForm, TRenderComponent extends ElementType>({ name, Component, id, disabled, validate, normalize, ...rest }: FieldProps<TForm, TProp, TRenderComponent>, ref: LegacyRef<any>): import("react/jsx-runtime").JSX.Element;
27
+ declare const _default: typeof Field;
28
+ export default _default;
@@ -1,56 +1,56 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- var jsx_runtime_1 = require("react/jsx-runtime");
29
- var react_1 = __importDefault(require("react"));
30
- var FieldNameContext_1 = require("./FieldNameContext");
31
- var useStandardField_1 = __importDefault(require("./useStandardField"));
32
- var validators_1 = require("../Validation/validators");
33
- /**
34
- * Renders whatever Component is passed - injecting the formik values needed to finish wiring up that individual field.
35
- * Should no Component be used then the default will be provided by the default lookup based on typeof(TForm[TProp])
36
- */
37
- function Field(_a, ref) {
38
- var name = _a.name, Component = _a.Component, id = _a.id, disabled = _a.disabled, validate = _a.validate, normalize = _a.normalize, rest = __rest(_a, ["name", "Component", "id", "disabled", "validate", "normalize"]);
39
- var _b = (0, useStandardField_1.default)({
40
- name: String(name),
41
- id: id,
42
- disabled: disabled,
43
- validate: validate,
44
- normalize: normalize,
45
- }), input = _b[0], meta = _b[1];
46
- var isRequired = (rest === null || rest === void 0 ? void 0 : rest.required) !== undefined
47
- ? rest.required
48
- : validate === validators_1.required ||
49
- (Array.isArray(validate) && validate.includes(validators_1.required));
50
- // a bit of a hack so JSX is happy with us
51
- var Wrapped = Component;
52
- return ((0, jsx_runtime_1.jsx)(FieldNameContext_1.FieldNameContext.Provider, __assign({ value: input.name }, { children: (0, jsx_runtime_1.jsx)(Wrapped, __assign({}, rest, { ref: ref, id: input.id, input: input, meta: meta, required: isRequired, disabled: disabled })) })));
53
- }
54
- // hack to get forwarded refs to work
55
- var FieldWithRef = react_1.default.forwardRef(Field);
56
- exports.default = FieldWithRef;
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var jsx_runtime_1 = require("react/jsx-runtime");
29
+ var react_1 = __importDefault(require("react"));
30
+ var FieldNameContext_1 = require("./FieldNameContext");
31
+ var useStandardField_1 = __importDefault(require("./useStandardField"));
32
+ var validators_1 = require("../Validation/validators");
33
+ /**
34
+ * Renders whatever Component is passed - injecting the formik values needed to finish wiring up that individual field.
35
+ * Should no Component be used then the default will be provided by the default lookup based on typeof(TForm[TProp])
36
+ */
37
+ function Field(_a, ref) {
38
+ var name = _a.name, Component = _a.Component, id = _a.id, disabled = _a.disabled, validate = _a.validate, normalize = _a.normalize, rest = __rest(_a, ["name", "Component", "id", "disabled", "validate", "normalize"]);
39
+ var _b = (0, useStandardField_1.default)({
40
+ name: String(name),
41
+ id: id,
42
+ disabled: disabled,
43
+ validate: validate,
44
+ normalize: normalize,
45
+ }), input = _b[0], meta = _b[1];
46
+ var isRequired = (rest === null || rest === void 0 ? void 0 : rest.required) !== undefined
47
+ ? rest.required
48
+ : validate === validators_1.required ||
49
+ (Array.isArray(validate) && validate.includes(validators_1.required));
50
+ // a bit of a hack so JSX is happy with us
51
+ var Wrapped = Component;
52
+ return ((0, jsx_runtime_1.jsx)(FieldNameContext_1.FieldNameContext.Provider, { value: input.name, children: (0, jsx_runtime_1.jsx)(Wrapped, __assign({}, rest, { ref: ref, id: input.id, input: input, meta: meta, required: isRequired, disabled: disabled })) }));
53
+ }
54
+ // hack to get forwarded refs to work
55
+ var FieldWithRef = react_1.default.forwardRef(Field);
56
+ exports.default = FieldWithRef;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
- /** Hidden `<div/>` that acts as an anchor to scroll to when a form error occurs. */
3
- export default function FieldErrorScrollTarget(): JSX.Element | null;
1
+ /** Hidden `<div/>` that acts as an anchor to scroll to when a form error occurs. */
2
+ export default function FieldErrorScrollTarget(): import("react/jsx-runtime").JSX.Element | null;