@ttoss/forms 0.32.7 → 0.33.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.
- package/README.md +0 -1
- package/dist/Brazil/index.d.ts +1 -1
- package/dist/{FormFieldPatternFormat-SKHmLjAO.d.ts → FormFieldPatternFormat-nQpHzJqa.d.ts} +4 -17
- package/dist/esm/Brazil/index.js +3 -5
- package/dist/esm/MultistepForm/index.js +2 -2
- package/dist/esm/{chunk-474RNBAE.js → chunk-GAPBDW3G.js} +31 -41
- package/dist/esm/{chunk-A5YD5USY.js → chunk-UO6326GP.js} +24 -95
- package/dist/esm/index.js +2 -2
- package/dist/index.d.ts +3 -3
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -232,7 +232,6 @@ All form field components share common props:
|
|
|
232
232
|
- `disabled`: Disables the field
|
|
233
233
|
- `defaultValue`: Initial field value
|
|
234
234
|
- `tooltip`: Label tooltip configuration
|
|
235
|
-
- `inputTooltip`: Input field tooltip configuration
|
|
236
235
|
- `warning`: Warning message displayed below the field
|
|
237
236
|
- `sx`: Theme-UI styling object
|
|
238
237
|
|
package/dist/Brazil/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { FieldValues, FieldPath } from 'react-hook-form';
|
|
3
3
|
import { PatternFormatProps } from 'react-number-format';
|
|
4
|
-
import { F as FormFieldProps, a as FormFieldPatternFormatProps } from '../FormFieldPatternFormat-
|
|
4
|
+
import { F as FormFieldProps, a as FormFieldPatternFormatProps } from '../FormFieldPatternFormat-nQpHzJqa.js';
|
|
5
5
|
import '@ttoss/ui';
|
|
6
6
|
import 'react';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { TooltipProps, SxProp, InputProps } from '@ttoss/ui';
|
|
2
3
|
import { FieldValues, FieldPath, UseControllerReturn, FieldPathValue, RegisterOptions } from 'react-hook-form';
|
|
3
4
|
import { PatternFormatProps } from 'react-number-format';
|
|
4
|
-
import { ThemeUIStyleObject, Theme, SxProp } from '@ttoss/ui';
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
|
|
7
7
|
type Rules<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<RegisterOptions<TFieldValues, TName>, 'valueAsNumber' | 'valueAsDate' | 'setValueAs' | 'disabled'>;
|
|
@@ -11,29 +11,16 @@ type FormFieldProps<TFieldValues extends FieldValues = FieldValues, TName extend
|
|
|
11
11
|
name: TName;
|
|
12
12
|
defaultValue?: FieldPathValue<TFieldValues, TName>;
|
|
13
13
|
disabled?: boolean;
|
|
14
|
-
|
|
15
|
-
render: string | React.ReactNode;
|
|
16
|
-
place: 'top';
|
|
17
|
-
openOnClick?: boolean;
|
|
18
|
-
clickable?: boolean;
|
|
19
|
-
};
|
|
20
|
-
inputTooltip?: {
|
|
21
|
-
render: string | React.ReactNode;
|
|
22
|
-
place: 'bottom' | 'top' | 'left' | 'right';
|
|
23
|
-
openOnClick?: boolean;
|
|
24
|
-
clickable?: boolean;
|
|
25
|
-
variant?: 'info' | 'warning' | 'success' | 'error';
|
|
26
|
-
sx?: ThemeUIStyleObject<Theme>;
|
|
27
|
-
};
|
|
14
|
+
labelTooltip?: TooltipProps;
|
|
28
15
|
warning?: string | React.ReactNode;
|
|
29
16
|
rules?: Rules<TFieldValues, TName>;
|
|
30
17
|
} & SxProp;
|
|
31
18
|
type FormFieldCompleteProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
|
32
19
|
render: (props: UseControllerReturn<TFieldValues, TName>) => React.ReactElement;
|
|
33
20
|
} & FormFieldProps<TFieldValues, TName>;
|
|
34
|
-
declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ label, id: idProp, name, defaultValue, disabled: propsDisabled,
|
|
21
|
+
declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ label, id: idProp, name, defaultValue, disabled: propsDisabled, labelTooltip, sx, css, render, warning, rules, }: FormFieldCompleteProps<TFieldValues, TName>) => react_jsx_runtime.JSX.Element;
|
|
35
22
|
|
|
36
|
-
type FormFieldPatternFormatProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldProps<TFieldValues, TName> & Omit<PatternFormatProps, 'name'>;
|
|
23
|
+
type FormFieldPatternFormatProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldProps<TFieldValues, TName> & Omit<PatternFormatProps, 'name'> & Pick<InputProps, 'leadingIcon' | 'trailingIcon'>;
|
|
37
24
|
declare const FormFieldPatternFormat: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ disabled, ...props }: FormFieldPatternFormatProps<TFieldValues, TName>) => react_jsx_runtime.JSX.Element;
|
|
38
25
|
|
|
39
26
|
export { type FormFieldProps as F, type FormFieldPatternFormatProps as a, FormField as b, FormFieldPatternFormat as c };
|
package/dist/esm/Brazil/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { FormField, FormFieldCNPJ, FormFieldPatternFormat, __name, isCnpjValid } from "../chunk-
|
|
3
|
+
import { FormField, FormFieldCNPJ, FormFieldPatternFormat, __name, isCnpjValid } from "../chunk-UO6326GP.js";
|
|
4
4
|
|
|
5
5
|
// src/Brazil/FormFieldPhone.tsx
|
|
6
6
|
import { Input } from "@ttoss/ui";
|
|
@@ -12,8 +12,7 @@ var FormFieldPhone = /* @__PURE__ */__name(({
|
|
|
12
12
|
const {
|
|
13
13
|
label,
|
|
14
14
|
name,
|
|
15
|
-
|
|
16
|
-
inputTooltip,
|
|
15
|
+
labelTooltip,
|
|
17
16
|
warning,
|
|
18
17
|
sx,
|
|
19
18
|
css,
|
|
@@ -27,8 +26,7 @@ var FormFieldPhone = /* @__PURE__ */__name(({
|
|
|
27
26
|
id,
|
|
28
27
|
label,
|
|
29
28
|
name,
|
|
30
|
-
|
|
31
|
-
inputTooltip,
|
|
29
|
+
labelTooltip,
|
|
32
30
|
warning,
|
|
33
31
|
sx,
|
|
34
32
|
css,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { Form, useForm, yupResolver } from "../chunk-
|
|
4
|
-
import { __name } from "../chunk-
|
|
3
|
+
import { Form, useForm, yupResolver } from "../chunk-GAPBDW3G.js";
|
|
4
|
+
import { __name } from "../chunk-UO6326GP.js";
|
|
5
5
|
|
|
6
6
|
// src/MultistepForm/MultistepForm.tsx
|
|
7
7
|
import { Flex as Flex6 } from "@ttoss/ui";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { FormErrorMessage, FormField, FormFieldPatternFormat, __name, isCnpjValid } from "./chunk-
|
|
3
|
+
import { FormErrorMessage, FormField, FormFieldPatternFormat, __name, isCnpjValid } from "./chunk-UO6326GP.js";
|
|
4
4
|
|
|
5
5
|
// src/Form.tsx
|
|
6
6
|
import { Box } from "@ttoss/ui";
|
|
@@ -32,8 +32,7 @@ var FormFieldCheckbox = /* @__PURE__ */__name(({
|
|
|
32
32
|
const {
|
|
33
33
|
label,
|
|
34
34
|
name,
|
|
35
|
-
|
|
36
|
-
inputTooltip,
|
|
35
|
+
labelTooltip,
|
|
37
36
|
warning,
|
|
38
37
|
sx,
|
|
39
38
|
css,
|
|
@@ -45,8 +44,7 @@ var FormFieldCheckbox = /* @__PURE__ */__name(({
|
|
|
45
44
|
id,
|
|
46
45
|
label,
|
|
47
46
|
name,
|
|
48
|
-
|
|
49
|
-
inputTooltip,
|
|
47
|
+
labelTooltip,
|
|
50
48
|
warning,
|
|
51
49
|
sx,
|
|
52
50
|
css,
|
|
@@ -98,22 +96,22 @@ var FormFieldNumericFormat = /* @__PURE__ */__name(({
|
|
|
98
96
|
const {
|
|
99
97
|
label,
|
|
100
98
|
name,
|
|
101
|
-
|
|
102
|
-
inputTooltip,
|
|
99
|
+
labelTooltip,
|
|
103
100
|
warning,
|
|
104
101
|
sx,
|
|
105
102
|
css,
|
|
106
103
|
rules,
|
|
107
104
|
id,
|
|
108
105
|
defaultValue,
|
|
106
|
+
leadingIcon,
|
|
107
|
+
trailingIcon,
|
|
109
108
|
...numericFormatProps
|
|
110
109
|
} = props;
|
|
111
110
|
return /* @__PURE__ */React.createElement(FormField, {
|
|
112
111
|
id,
|
|
113
112
|
label,
|
|
114
113
|
name,
|
|
115
|
-
|
|
116
|
-
inputTooltip,
|
|
114
|
+
labelTooltip,
|
|
117
115
|
warning,
|
|
118
116
|
sx,
|
|
119
117
|
css,
|
|
@@ -132,6 +130,8 @@ var FormFieldNumericFormat = /* @__PURE__ */__name(({
|
|
|
132
130
|
field.onChange(values.floatValue);
|
|
133
131
|
}, "onValueChange"),
|
|
134
132
|
customInput: Input,
|
|
133
|
+
leadingIcon,
|
|
134
|
+
trailingIcon,
|
|
135
135
|
disabled: disabled ?? field.disabled
|
|
136
136
|
});
|
|
137
137
|
}, "render")
|
|
@@ -188,21 +188,21 @@ var FormFieldInput = /* @__PURE__ */__name(({
|
|
|
188
188
|
const {
|
|
189
189
|
label,
|
|
190
190
|
name,
|
|
191
|
-
|
|
192
|
-
inputTooltip,
|
|
191
|
+
labelTooltip,
|
|
193
192
|
warning,
|
|
194
193
|
sx,
|
|
195
194
|
css,
|
|
196
195
|
rules,
|
|
197
196
|
id,
|
|
197
|
+
leadingIcon,
|
|
198
|
+
trailingIcon,
|
|
198
199
|
...inputProps
|
|
199
200
|
} = props;
|
|
200
201
|
return /* @__PURE__ */React.createElement(FormField, {
|
|
201
202
|
id,
|
|
202
203
|
label,
|
|
203
204
|
name,
|
|
204
|
-
|
|
205
|
-
inputTooltip,
|
|
205
|
+
labelTooltip,
|
|
206
206
|
warning,
|
|
207
207
|
sx,
|
|
208
208
|
css,
|
|
@@ -216,6 +216,8 @@ var FormFieldInput = /* @__PURE__ */__name(({
|
|
|
216
216
|
return /* @__PURE__ */React.createElement(Input2, {
|
|
217
217
|
...inputProps,
|
|
218
218
|
...field,
|
|
219
|
+
leadingIcon,
|
|
220
|
+
trailingIcon,
|
|
219
221
|
disabled: disabled ?? field.disabled,
|
|
220
222
|
"aria-invalid": fieldState.error ? "true" : void 0
|
|
221
223
|
});
|
|
@@ -233,21 +235,20 @@ var FormFieldPassword = /* @__PURE__ */__name(({
|
|
|
233
235
|
const {
|
|
234
236
|
label,
|
|
235
237
|
name,
|
|
236
|
-
|
|
237
|
-
inputTooltip,
|
|
238
|
+
labelTooltip,
|
|
238
239
|
warning,
|
|
239
240
|
sx,
|
|
240
241
|
css,
|
|
241
242
|
rules,
|
|
242
243
|
id,
|
|
244
|
+
leadingIcon,
|
|
243
245
|
...inputProps
|
|
244
246
|
} = props;
|
|
245
247
|
return /* @__PURE__ */React.createElement(FormField, {
|
|
246
248
|
id,
|
|
247
249
|
label,
|
|
248
250
|
name,
|
|
249
|
-
|
|
250
|
-
inputTooltip,
|
|
251
|
+
labelTooltip,
|
|
251
252
|
warning,
|
|
252
253
|
sx,
|
|
253
254
|
css,
|
|
@@ -261,6 +262,7 @@ var FormFieldPassword = /* @__PURE__ */__name(({
|
|
|
261
262
|
return /* @__PURE__ */React.createElement(InputPassword, {
|
|
262
263
|
...inputProps,
|
|
263
264
|
...field,
|
|
265
|
+
leadingIcon,
|
|
264
266
|
disabled: disabled ?? field.disabled,
|
|
265
267
|
"aria-invalid": fieldState.error ? "true" : void 0
|
|
266
268
|
});
|
|
@@ -278,8 +280,7 @@ var FormFieldRadio = /* @__PURE__ */__name(({
|
|
|
278
280
|
const {
|
|
279
281
|
label,
|
|
280
282
|
name,
|
|
281
|
-
|
|
282
|
-
inputTooltip,
|
|
283
|
+
labelTooltip,
|
|
283
284
|
warning,
|
|
284
285
|
sx,
|
|
285
286
|
css,
|
|
@@ -292,8 +293,7 @@ var FormFieldRadio = /* @__PURE__ */__name(({
|
|
|
292
293
|
id,
|
|
293
294
|
label,
|
|
294
295
|
name,
|
|
295
|
-
|
|
296
|
-
inputTooltip,
|
|
296
|
+
labelTooltip,
|
|
297
297
|
warning,
|
|
298
298
|
sx,
|
|
299
299
|
css,
|
|
@@ -339,8 +339,7 @@ var FormFieldRadioCard = /* @__PURE__ */__name(({
|
|
|
339
339
|
const {
|
|
340
340
|
label,
|
|
341
341
|
name,
|
|
342
|
-
|
|
343
|
-
inputTooltip,
|
|
342
|
+
labelTooltip,
|
|
344
343
|
warning,
|
|
345
344
|
sx,
|
|
346
345
|
css,
|
|
@@ -356,8 +355,7 @@ var FormFieldRadioCard = /* @__PURE__ */__name(({
|
|
|
356
355
|
id,
|
|
357
356
|
label,
|
|
358
357
|
name,
|
|
359
|
-
|
|
360
|
-
inputTooltip,
|
|
358
|
+
labelTooltip,
|
|
361
359
|
warning,
|
|
362
360
|
sx,
|
|
363
361
|
css,
|
|
@@ -423,8 +421,7 @@ var FormFieldRadioCardIcony = /* @__PURE__ */__name(({
|
|
|
423
421
|
const {
|
|
424
422
|
label,
|
|
425
423
|
name,
|
|
426
|
-
|
|
427
|
-
inputTooltip,
|
|
424
|
+
labelTooltip,
|
|
428
425
|
warning,
|
|
429
426
|
sx,
|
|
430
427
|
css,
|
|
@@ -439,8 +436,7 @@ var FormFieldRadioCardIcony = /* @__PURE__ */__name(({
|
|
|
439
436
|
id,
|
|
440
437
|
label,
|
|
441
438
|
name,
|
|
442
|
-
|
|
443
|
-
inputTooltip,
|
|
439
|
+
labelTooltip,
|
|
444
440
|
warning,
|
|
445
441
|
sx,
|
|
446
442
|
css,
|
|
@@ -534,8 +530,7 @@ var FormFieldSelect = /* @__PURE__ */__name(({
|
|
|
534
530
|
const {
|
|
535
531
|
label,
|
|
536
532
|
name,
|
|
537
|
-
|
|
538
|
-
inputTooltip,
|
|
533
|
+
labelTooltip,
|
|
539
534
|
warning,
|
|
540
535
|
sx,
|
|
541
536
|
css,
|
|
@@ -548,8 +543,7 @@ var FormFieldSelect = /* @__PURE__ */__name(({
|
|
|
548
543
|
id,
|
|
549
544
|
label,
|
|
550
545
|
name,
|
|
551
|
-
|
|
552
|
-
inputTooltip,
|
|
546
|
+
labelTooltip,
|
|
553
547
|
warning,
|
|
554
548
|
sx,
|
|
555
549
|
css,
|
|
@@ -579,8 +573,7 @@ var FormFieldSwitch = /* @__PURE__ */__name(({
|
|
|
579
573
|
const {
|
|
580
574
|
label,
|
|
581
575
|
name,
|
|
582
|
-
|
|
583
|
-
inputTooltip,
|
|
576
|
+
labelTooltip,
|
|
584
577
|
warning,
|
|
585
578
|
sx,
|
|
586
579
|
css,
|
|
@@ -593,8 +586,7 @@ var FormFieldSwitch = /* @__PURE__ */__name(({
|
|
|
593
586
|
id,
|
|
594
587
|
label,
|
|
595
588
|
name,
|
|
596
|
-
|
|
597
|
-
inputTooltip,
|
|
589
|
+
labelTooltip,
|
|
598
590
|
warning,
|
|
599
591
|
sx,
|
|
600
592
|
css,
|
|
@@ -625,8 +617,7 @@ var FormFieldTextarea = /* @__PURE__ */__name(({
|
|
|
625
617
|
const {
|
|
626
618
|
label,
|
|
627
619
|
name,
|
|
628
|
-
|
|
629
|
-
inputTooltip,
|
|
620
|
+
labelTooltip,
|
|
630
621
|
warning,
|
|
631
622
|
sx,
|
|
632
623
|
css,
|
|
@@ -638,8 +629,7 @@ var FormFieldTextarea = /* @__PURE__ */__name(({
|
|
|
638
629
|
id,
|
|
639
630
|
label,
|
|
640
631
|
name,
|
|
641
|
-
|
|
642
|
-
inputTooltip,
|
|
632
|
+
labelTooltip,
|
|
643
633
|
warning,
|
|
644
634
|
sx,
|
|
645
635
|
css,
|
|
@@ -46,7 +46,7 @@ var FormErrorMessage = /* @__PURE__ */__name(({
|
|
|
46
46
|
}, "FormErrorMessage");
|
|
47
47
|
|
|
48
48
|
// src/FormField.tsx
|
|
49
|
-
import { Checkbox, Flex, Label, Switch
|
|
49
|
+
import { Checkbox, Flex, Label, Switch } from "@ttoss/ui";
|
|
50
50
|
import * as React2 from "react";
|
|
51
51
|
import { useController, useFormContext as useFormContext2 } from "react-hook-form";
|
|
52
52
|
var FormField = /* @__PURE__ */__name(({
|
|
@@ -55,8 +55,7 @@ var FormField = /* @__PURE__ */__name(({
|
|
|
55
55
|
name,
|
|
56
56
|
defaultValue,
|
|
57
57
|
disabled: propsDisabled,
|
|
58
|
-
|
|
59
|
-
inputTooltip,
|
|
58
|
+
labelTooltip,
|
|
60
59
|
sx,
|
|
61
60
|
css,
|
|
62
61
|
render,
|
|
@@ -77,63 +76,6 @@ var FormField = /* @__PURE__ */__name(({
|
|
|
77
76
|
const hasError = !!errors[name];
|
|
78
77
|
const uniqueId = React2.useId();
|
|
79
78
|
const id = idProp || `form-field-${name}-${uniqueId}`;
|
|
80
|
-
const tooltipId = `${id}-tooltip`;
|
|
81
|
-
const [showInputTooltip, setShowInputTooltip] = React2.useState(false);
|
|
82
|
-
const inputRef = React2.useRef(null);
|
|
83
|
-
const handleClickOutside = React2.useCallback(event => {
|
|
84
|
-
if (inputRef.current && !inputRef.current.contains(event.target)) {
|
|
85
|
-
setShowInputTooltip(false);
|
|
86
|
-
}
|
|
87
|
-
}, []);
|
|
88
|
-
const handleEscapeKey = React2.useCallback(event => {
|
|
89
|
-
if (event.key === "Escape") {
|
|
90
|
-
setShowInputTooltip(false);
|
|
91
|
-
}
|
|
92
|
-
}, []);
|
|
93
|
-
React2.useEffect(() => {
|
|
94
|
-
if (!inputTooltip || !showInputTooltip) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
document.addEventListener("mousedown", handleClickOutside);
|
|
98
|
-
document.addEventListener("keydown", handleEscapeKey);
|
|
99
|
-
return () => {
|
|
100
|
-
document.removeEventListener("mousedown", handleClickOutside);
|
|
101
|
-
document.removeEventListener("keydown", handleEscapeKey);
|
|
102
|
-
};
|
|
103
|
-
}, [showInputTooltip, inputTooltip, handleClickOutside, handleEscapeKey]);
|
|
104
|
-
const handleInputClick = React2.useCallback(() => {
|
|
105
|
-
if (inputTooltip) {
|
|
106
|
-
setShowInputTooltip(true);
|
|
107
|
-
}
|
|
108
|
-
}, [inputTooltip]);
|
|
109
|
-
const handleInputFocus = React2.useCallback(() => {
|
|
110
|
-
if (inputTooltip && !inputTooltip.openOnClick) {
|
|
111
|
-
setShowInputTooltip(true);
|
|
112
|
-
}
|
|
113
|
-
}, [inputTooltip]);
|
|
114
|
-
const handleInputBlur = React2.useCallback(() => {
|
|
115
|
-
if (inputTooltip && !inputTooltip.openOnClick) {
|
|
116
|
-
setShowInputTooltip(false);
|
|
117
|
-
}
|
|
118
|
-
}, [inputTooltip]);
|
|
119
|
-
const tooltipElement = React2.useMemo(() => {
|
|
120
|
-
if (!inputTooltip || !showInputTooltip) {
|
|
121
|
-
return null;
|
|
122
|
-
}
|
|
123
|
-
return /* @__PURE__ */React2.createElement(Flex, {
|
|
124
|
-
sx: {
|
|
125
|
-
width: "full",
|
|
126
|
-
fontSize: "sm"
|
|
127
|
-
}
|
|
128
|
-
}, /* @__PURE__ */React2.createElement(Tooltip, {
|
|
129
|
-
id: tooltipId,
|
|
130
|
-
place: inputTooltip.place,
|
|
131
|
-
clickable: inputTooltip.clickable,
|
|
132
|
-
isOpen: showInputTooltip,
|
|
133
|
-
variant: inputTooltip.variant,
|
|
134
|
-
sx: inputTooltip.sx
|
|
135
|
-
}, inputTooltip.render));
|
|
136
|
-
}, [inputTooltip, showInputTooltip, tooltipId]);
|
|
137
79
|
const isCheckboxOrSwitch = /* @__PURE__ */__name(element => {
|
|
138
80
|
return [Checkbox, Switch].some(component => {
|
|
139
81
|
return element.type === component;
|
|
@@ -154,41 +96,28 @@ var FormField = /* @__PURE__ */__name(({
|
|
|
154
96
|
return null;
|
|
155
97
|
}
|
|
156
98
|
const childProps = child.props;
|
|
157
|
-
const inputProps = {
|
|
158
|
-
...childProps,
|
|
159
|
-
ref: inputRef,
|
|
160
|
-
onClick: /* @__PURE__ */__name(e => {
|
|
161
|
-
childProps.onClick?.(e);
|
|
162
|
-
handleInputClick();
|
|
163
|
-
}, "onClick"),
|
|
164
|
-
onFocus: /* @__PURE__ */__name(e => {
|
|
165
|
-
childProps.onFocus?.(e);
|
|
166
|
-
handleInputFocus();
|
|
167
|
-
}, "onFocus"),
|
|
168
|
-
onBlur: /* @__PURE__ */__name(e => {
|
|
169
|
-
childProps.onBlur?.(e);
|
|
170
|
-
handleInputBlur();
|
|
171
|
-
}, "onBlur"),
|
|
172
|
-
...(inputTooltip && showInputTooltip ? {
|
|
173
|
-
"data-tooltip-id": tooltipId
|
|
174
|
-
} : {})
|
|
175
|
-
};
|
|
176
99
|
const elementProps = {
|
|
177
100
|
id,
|
|
178
|
-
...
|
|
101
|
+
...childProps,
|
|
179
102
|
...(warning && {
|
|
180
103
|
trailingIcon: "warning-alt"
|
|
181
104
|
})
|
|
182
105
|
};
|
|
183
106
|
if (label && isCheckboxOrSwitch(child)) {
|
|
184
|
-
return /* @__PURE__ */React2.createElement(
|
|
185
|
-
|
|
186
|
-
|
|
107
|
+
return /* @__PURE__ */React2.createElement(Flex, {
|
|
108
|
+
sx: {
|
|
109
|
+
flexDirection: "row",
|
|
110
|
+
alignItems: "center"
|
|
111
|
+
}
|
|
187
112
|
}, /* @__PURE__ */React2.createElement(Flex, {
|
|
188
113
|
sx: {
|
|
189
114
|
position: "relative"
|
|
190
115
|
}
|
|
191
|
-
}, /* @__PURE__ */React2.createElement(child.type, elementProps)),
|
|
116
|
+
}, /* @__PURE__ */React2.createElement(child.type, elementProps)), /* @__PURE__ */React2.createElement(Label, {
|
|
117
|
+
"aria-disabled": disabled,
|
|
118
|
+
htmlFor: id,
|
|
119
|
+
tooltip: labelTooltip
|
|
120
|
+
}, label));
|
|
192
121
|
}
|
|
193
122
|
return /* @__PURE__ */React2.createElement(Flex, {
|
|
194
123
|
sx: {
|
|
@@ -199,10 +128,10 @@ var FormField = /* @__PURE__ */__name(({
|
|
|
199
128
|
}, label && /* @__PURE__ */React2.createElement(Label, {
|
|
200
129
|
"aria-disabled": disabled,
|
|
201
130
|
htmlFor: id,
|
|
202
|
-
tooltip
|
|
203
|
-
}, label), /* @__PURE__ */React2.createElement(child.type, elementProps)
|
|
131
|
+
tooltip: labelTooltip
|
|
132
|
+
}, label), /* @__PURE__ */React2.createElement(child.type, elementProps));
|
|
204
133
|
});
|
|
205
|
-
}, [render, controllerReturnWithDisabled, label, disabled, id,
|
|
134
|
+
}, [render, controllerReturnWithDisabled, label, disabled, id, labelTooltip, warning]);
|
|
206
135
|
return /* @__PURE__ */React2.createElement(Flex, {
|
|
207
136
|
sx: {
|
|
208
137
|
flexDirection: "column",
|
|
@@ -235,22 +164,22 @@ var FormFieldPatternFormat = /* @__PURE__ */__name(({
|
|
|
235
164
|
const {
|
|
236
165
|
label,
|
|
237
166
|
name,
|
|
238
|
-
|
|
239
|
-
inputTooltip,
|
|
167
|
+
labelTooltip,
|
|
240
168
|
warning,
|
|
241
169
|
sx,
|
|
242
170
|
css,
|
|
243
171
|
rules,
|
|
244
172
|
id,
|
|
245
173
|
defaultValue,
|
|
174
|
+
leadingIcon,
|
|
175
|
+
trailingIcon,
|
|
246
176
|
...patternFormatProps
|
|
247
177
|
} = props;
|
|
248
178
|
return /* @__PURE__ */React.createElement(FormField, {
|
|
249
179
|
id,
|
|
250
180
|
label,
|
|
251
181
|
name,
|
|
252
|
-
|
|
253
|
-
inputTooltip,
|
|
182
|
+
labelTooltip,
|
|
254
183
|
warning,
|
|
255
184
|
sx,
|
|
256
185
|
css,
|
|
@@ -270,6 +199,8 @@ var FormFieldPatternFormat = /* @__PURE__ */__name(({
|
|
|
270
199
|
field.onChange(values.value);
|
|
271
200
|
}, "onValueChange"),
|
|
272
201
|
customInput: Input,
|
|
202
|
+
leadingIcon,
|
|
203
|
+
trailingIcon,
|
|
273
204
|
disabled: disabled ?? field.disabled,
|
|
274
205
|
"aria-invalid": fieldState.error ? "true" : void 0
|
|
275
206
|
});
|
|
@@ -325,8 +256,7 @@ var FormFieldCNPJ = /* @__PURE__ */__name(({
|
|
|
325
256
|
const {
|
|
326
257
|
label,
|
|
327
258
|
name,
|
|
328
|
-
|
|
329
|
-
inputTooltip,
|
|
259
|
+
labelTooltip,
|
|
330
260
|
warning,
|
|
331
261
|
sx,
|
|
332
262
|
css,
|
|
@@ -340,8 +270,7 @@ var FormFieldCNPJ = /* @__PURE__ */__name(({
|
|
|
340
270
|
id,
|
|
341
271
|
label,
|
|
342
272
|
name,
|
|
343
|
-
|
|
344
|
-
inputTooltip,
|
|
273
|
+
labelTooltip,
|
|
345
274
|
warning,
|
|
346
275
|
sx,
|
|
347
276
|
css,
|
package/dist/esm/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
|
|
2
|
-
import { Controller, Form, FormFieldCheckbox, FormFieldCreditCardNumber, FormFieldCurrencyInput, FormFieldInput, FormFieldNumericFormat, FormFieldPassword, FormFieldRadio, FormFieldRadioCard, FormFieldRadioCardIcony, FormFieldSelect, FormFieldSwitch, FormFieldTextarea, FormGroup, FormProvider, useController, useFieldArray, useForm, useFormContext, useFormGroup, useFormState, useWatch, yup, yupResolver } from "./chunk-
|
|
3
|
-
import { FormErrorMessage, FormField, FormFieldPatternFormat } from "./chunk-
|
|
2
|
+
import { Controller, Form, FormFieldCheckbox, FormFieldCreditCardNumber, FormFieldCurrencyInput, FormFieldInput, FormFieldNumericFormat, FormFieldPassword, FormFieldRadio, FormFieldRadioCard, FormFieldRadioCardIcony, FormFieldSelect, FormFieldSwitch, FormFieldTextarea, FormGroup, FormProvider, useController, useFieldArray, useForm, useFormContext, useFormGroup, useFormState, useWatch, yup, yupResolver } from "./chunk-GAPBDW3G.js";
|
|
3
|
+
import { FormErrorMessage, FormField, FormFieldPatternFormat } from "./chunk-UO6326GP.js";
|
|
4
4
|
export { Controller, Form, FormErrorMessage, FormField, FormFieldCheckbox, FormFieldCreditCardNumber, FormFieldCurrencyInput, FormFieldInput, FormFieldNumericFormat, FormFieldPassword, FormFieldPatternFormat, FormFieldRadio, FormFieldRadioCard, FormFieldRadioCardIcony, FormFieldSelect, FormFieldSwitch, FormFieldTextarea, FormGroup, FormProvider, useController, useFieldArray, useForm, useFormContext, useFormGroup, useFormState, useWatch, yup, yupResolver };
|
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ import * as React from 'react';
|
|
|
4
4
|
import { FieldValues, FormProviderProps, FieldName, FieldPath } from 'react-hook-form';
|
|
5
5
|
export * from 'react-hook-form';
|
|
6
6
|
export { Controller, FormProvider, useController, useFieldArray, useForm, useFormContext, useFormState, useWatch } from 'react-hook-form';
|
|
7
|
-
import { F as FormFieldProps, a as FormFieldPatternFormatProps } from './FormFieldPatternFormat-
|
|
8
|
-
export { b as FormField, c as FormFieldPatternFormat } from './FormFieldPatternFormat-
|
|
7
|
+
import { F as FormFieldProps, a as FormFieldPatternFormatProps } from './FormFieldPatternFormat-nQpHzJqa.js';
|
|
8
|
+
export { b as FormField, c as FormFieldPatternFormat } from './FormFieldPatternFormat-nQpHzJqa.js';
|
|
9
9
|
import { NumericFormatProps } from 'react-number-format';
|
|
10
10
|
import './typings.d-HZBqJJjn.js';
|
|
11
11
|
import * as yup from 'yup';
|
|
@@ -29,7 +29,7 @@ declare const FormFieldCheckbox: <TFieldValues extends FieldValues = FieldValues
|
|
|
29
29
|
type FormFieldCreditCardNumberProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldPatternFormatProps<TFieldValues, TName>;
|
|
30
30
|
declare const FormFieldCreditCardNumber: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ format, placeholder, ...formFieldPatternFormatProps }: FormFieldCreditCardNumberProps<TFieldValues, TName>) => react_jsx_runtime.JSX.Element;
|
|
31
31
|
|
|
32
|
-
type FormFieldNumericFormatProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldProps<TFieldValues, TName> & Omit<NumericFormatProps, 'name'>;
|
|
32
|
+
type FormFieldNumericFormatProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldProps<TFieldValues, TName> & Omit<NumericFormatProps, 'name'> & Pick<InputProps, 'leadingIcon' | 'trailingIcon'>;
|
|
33
33
|
declare const FormFieldNumericFormat: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ disabled, ...props }: FormFieldNumericFormatProps<TFieldValues, TName>) => react_jsx_runtime.JSX.Element;
|
|
34
34
|
|
|
35
35
|
type FormFieldCurrencyInputProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FormFieldNumericFormatProps<TFieldValues, TName> & {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ttoss/forms",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.33.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "ttoss",
|
|
6
6
|
"contributors": [
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"react": ">=16.8.0",
|
|
42
|
-
"@ttoss/
|
|
43
|
-
"@ttoss/
|
|
42
|
+
"@ttoss/react-i18n": "^2.0.23",
|
|
43
|
+
"@ttoss/ui": "^6.0.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/jest": "^30.0.0",
|
|
@@ -52,10 +52,10 @@
|
|
|
52
52
|
"yup": "^1.7.1",
|
|
53
53
|
"@ttoss/config": "^1.35.12",
|
|
54
54
|
"@ttoss/i18n-cli": "^0.7.38",
|
|
55
|
-
"@ttoss/react-i18n": "^2.0.
|
|
56
|
-
"@ttoss/react-icons": "^0.5.
|
|
57
|
-
"@ttoss/
|
|
58
|
-
"@ttoss/
|
|
55
|
+
"@ttoss/react-i18n": "^2.0.23",
|
|
56
|
+
"@ttoss/react-icons": "^0.5.4",
|
|
57
|
+
"@ttoss/ui": "^6.0.0",
|
|
58
|
+
"@ttoss/test-utils": "^4.0.0"
|
|
59
59
|
},
|
|
60
60
|
"publishConfig": {
|
|
61
61
|
"access": "public",
|