@fuf-stack/uniform 1.8.10 → 1.10.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/dist/Checkboxes/index.cjs +3 -8
- package/dist/Checkboxes/index.cjs.map +1 -1
- package/dist/Checkboxes/index.d.cts +2 -2
- package/dist/Checkboxes/index.d.ts +2 -2
- package/dist/Checkboxes/index.js +2 -7
- package/dist/{Checkboxes-CDjOYw76.d.cts → Checkboxes-CBgO9itq.d.cts} +2 -0
- package/dist/{Checkboxes-wWzFP2sn.d.ts → Checkboxes-CFbsc6zg.d.ts} +2 -0
- package/dist/FieldArray/index.cjs +5 -8
- package/dist/FieldArray/index.cjs.map +1 -1
- package/dist/FieldArray/index.d.cts +2 -2
- package/dist/FieldArray/index.d.ts +2 -2
- package/dist/FieldArray/index.js +4 -7
- package/dist/{FieldArray-Cql1zcch.d.cts → FieldArray-72vn2MG9.d.cts} +2 -2
- package/dist/{FieldArray-Cql1zcch.d.ts → FieldArray-72vn2MG9.d.ts} +2 -2
- package/dist/FieldCard/index.cjs +19 -0
- package/dist/FieldCard/index.cjs.map +1 -0
- package/dist/FieldCard/index.d.cts +95 -0
- package/dist/FieldCard/index.d.ts +95 -0
- package/dist/FieldCard/index.js +19 -0
- package/dist/Form/index.cjs +3 -13
- package/dist/Form/index.cjs.map +1 -1
- package/dist/Form/index.js +2 -12
- package/dist/Input/index.cjs +4 -8
- package/dist/Input/index.cjs.map +1 -1
- package/dist/Input/index.d.cts +2 -2
- package/dist/Input/index.d.ts +2 -2
- package/dist/Input/index.js +3 -7
- package/dist/{Input-DMVTcinm.d.cts → Input-BGYDOpbo.d.cts} +4 -2
- package/dist/{Input-BcdS2xBM.d.ts → Input-__SqMh2n.d.ts} +4 -2
- package/dist/{RadioBoxes-DpkI28l0.d.cts → RadioBox-DnqCiTR1.d.cts} +89 -37
- package/dist/{RadioBoxes-DpkI28l0.d.ts → RadioBox-DnqCiTR1.d.ts} +89 -37
- package/dist/RadioBoxes/index.cjs +5 -8
- package/dist/RadioBoxes/index.cjs.map +1 -1
- package/dist/RadioBoxes/index.d.cts +2 -2
- package/dist/RadioBoxes/index.d.ts +2 -2
- package/dist/RadioBoxes/index.js +6 -9
- package/dist/RadioTabs/index.cjs +3 -8
- package/dist/RadioTabs/index.cjs.map +1 -1
- package/dist/RadioTabs/index.d.cts +2 -2
- package/dist/RadioTabs/index.d.ts +2 -2
- package/dist/RadioTabs/index.js +2 -7
- package/dist/{RadioTabs-DTDcAZoH.d.cts → RadioTabs-DkR5fvl4.d.cts} +18 -1
- package/dist/{RadioTabs-DTDcAZoH.d.ts → RadioTabs-DkR5fvl4.d.ts} +18 -1
- package/dist/Radios/index.cjs +3 -8
- package/dist/Radios/index.cjs.map +1 -1
- package/dist/Radios/index.d.cts +2 -2
- package/dist/Radios/index.d.ts +2 -2
- package/dist/Radios/index.js +2 -7
- package/dist/{Radios-DprlJhoq.d.cts → Radios-lLVlvY_B.d.cts} +3 -1
- package/dist/{Radios-DprlJhoq.d.ts → Radios-lLVlvY_B.d.ts} +3 -1
- package/dist/Select/index.cjs +4 -8
- package/dist/Select/index.cjs.map +1 -1
- package/dist/Select/index.d.cts +3 -2
- package/dist/Select/index.d.ts +3 -2
- package/dist/Select/index.js +3 -7
- package/dist/{Select-CDkZmZp2.d.cts → Select-DWlnKj5c.d.cts} +8 -5
- package/dist/{Select-CDkZmZp2.d.ts → Select-DWlnKj5c.d.ts} +8 -5
- package/dist/Slider/index.cjs +19 -0
- package/dist/Slider/index.cjs.map +1 -0
- package/dist/Slider/index.d.cts +10 -0
- package/dist/Slider/index.d.ts +10 -0
- package/dist/Slider/index.js +19 -0
- package/dist/Slider-CxHvafJA.d.cts +155 -0
- package/dist/Slider-CxHvafJA.d.ts +155 -0
- package/dist/SubmitButton/index.cjs +3 -13
- package/dist/SubmitButton/index.cjs.map +1 -1
- package/dist/SubmitButton/index.js +2 -12
- package/dist/Switch/index.cjs +3 -8
- package/dist/Switch/index.cjs.map +1 -1
- package/dist/Switch/index.d.cts +2 -2
- package/dist/Switch/index.d.ts +2 -2
- package/dist/Switch/index.js +2 -7
- package/dist/{Switch-Hr6PnK98.d.cts → Switch-B4AuHAMX.d.cts} +6 -4
- package/dist/{Switch-Hr6PnK98.d.ts → Switch-B4AuHAMX.d.ts} +6 -4
- package/dist/SwitchBox/index.cjs +21 -0
- package/dist/SwitchBox/index.cjs.map +1 -0
- package/dist/SwitchBox/index.d.cts +11 -0
- package/dist/SwitchBox/index.d.ts +11 -0
- package/dist/SwitchBox/index.js +21 -0
- package/dist/SwitchBox/index.js.map +1 -0
- package/dist/SwitchBox-q1I7a0NX.d.cts +146 -0
- package/dist/SwitchBox-q1I7a0NX.d.ts +146 -0
- package/dist/TextArea/index.cjs +4 -8
- package/dist/TextArea/index.cjs.map +1 -1
- package/dist/TextArea/index.d.cts +2 -2
- package/dist/TextArea/index.d.ts +2 -2
- package/dist/TextArea/index.js +3 -7
- package/dist/{TextArea-DhxNWYNg.d.cts → TextArea-CYcFOcun.d.cts} +2 -0
- package/dist/{TextArea-DhxNWYNg.d.ts → TextArea-CYcFOcun.d.ts} +2 -0
- package/dist/{chunk-EFZXZNJO.js → chunk-2EQEKXG2.js} +4 -2
- package/dist/chunk-2EQEKXG2.js.map +1 -0
- package/dist/chunk-36LBVB45.js +1 -0
- package/dist/chunk-36LBVB45.js.map +1 -0
- package/dist/chunk-3JAVQAL5.cjs +1 -0
- package/dist/{chunk-KWJMKX5J.cjs.map → chunk-3JAVQAL5.cjs.map} +1 -1
- package/dist/{chunk-NTOYCWCJ.cjs → chunk-3ZQXSGR2.cjs} +1 -1
- package/dist/{chunk-NTOYCWCJ.cjs.map → chunk-3ZQXSGR2.cjs.map} +1 -1
- package/dist/{chunk-BIC7IWER.js → chunk-4KEI3VRK.js} +6 -3
- package/dist/chunk-4KEI3VRK.js.map +1 -0
- package/dist/{chunk-PFFTE4NW.cjs → chunk-4LLSZ6GN.cjs} +6 -4
- package/dist/chunk-4LLSZ6GN.cjs.map +1 -0
- package/dist/chunk-5UGCZ7OA.js +215 -0
- package/dist/chunk-5UGCZ7OA.js.map +1 -0
- package/dist/{chunk-MEIT57H2.cjs → chunk-6UORUDZV.cjs} +5 -3
- package/dist/chunk-6UORUDZV.cjs.map +1 -0
- package/dist/chunk-7TUWJWLN.js +131 -0
- package/dist/chunk-7TUWJWLN.js.map +1 -0
- package/dist/chunk-7WBYC3BC.js +149 -0
- package/dist/chunk-7WBYC3BC.js.map +1 -0
- package/dist/{chunk-QE4J4AMH.js → chunk-BUFKWZNC.js} +2 -2
- package/dist/chunk-BUFKWZNC.js.map +1 -0
- package/dist/{chunk-A3PYIWG2.js → chunk-BZ2PD2JG.js} +1 -1
- package/dist/chunk-BZ2PD2JG.js.map +1 -0
- package/dist/{chunk-37RM7TVP.cjs → chunk-CM2LLV5N.cjs} +5 -3
- package/dist/chunk-CM2LLV5N.cjs.map +1 -0
- package/dist/{chunk-OTFX4BWZ.js → chunk-FHYUMBE3.js} +80 -46
- package/dist/chunk-FHYUMBE3.js.map +1 -0
- package/dist/chunk-FQDOJIQF.cjs +149 -0
- package/dist/chunk-FQDOJIQF.cjs.map +1 -0
- package/dist/{chunk-TN7OSO3T.js → chunk-GQF5HVA4.js} +5 -5
- package/dist/chunk-GQF5HVA4.js.map +1 -0
- package/dist/{chunk-6AQ5R4U4.cjs → chunk-HYOALQIV.cjs} +7 -7
- package/dist/chunk-HYOALQIV.cjs.map +1 -0
- package/dist/{chunk-NG2KM4CA.cjs → chunk-IZ5SPNVQ.cjs} +9 -6
- package/dist/chunk-IZ5SPNVQ.cjs.map +1 -0
- package/dist/{chunk-RRG5ZLVF.cjs → chunk-JRE5KEX3.cjs} +1 -1
- package/dist/{chunk-RRG5ZLVF.cjs.map → chunk-JRE5KEX3.cjs.map} +1 -1
- package/dist/chunk-KOV7U4QA.cjs +165 -0
- package/dist/chunk-KOV7U4QA.cjs.map +1 -0
- package/dist/{chunk-ZJDU5EPE.js → chunk-LEMQGDFE.js} +1 -1
- package/dist/chunk-M5IL7INR.js +219 -0
- package/dist/chunk-M5IL7INR.js.map +1 -0
- package/dist/{chunk-R5AOS4DQ.js → chunk-MODH7W2M.js} +5 -3
- package/dist/chunk-MODH7W2M.js.map +1 -0
- package/dist/chunk-MSJP25N4.cjs +131 -0
- package/dist/chunk-MSJP25N4.cjs.map +1 -0
- package/dist/{chunk-OYDNTOOU.cjs → chunk-MVFEXRWQ.cjs} +3 -3
- package/dist/chunk-MVFEXRWQ.cjs.map +1 -0
- package/dist/{chunk-7WHL6K5T.js → chunk-O5KAFUBE.js} +7 -4
- package/dist/chunk-O5KAFUBE.js.map +1 -0
- package/dist/{chunk-ZNX2PT6C.cjs → chunk-OED4DYBD.cjs} +6 -3
- package/dist/chunk-OED4DYBD.cjs.map +1 -0
- package/dist/chunk-OIKPQMQ2.cjs +215 -0
- package/dist/chunk-OIKPQMQ2.cjs.map +1 -0
- package/dist/{chunk-Y7YEI6T2.js → chunk-P2TT7HU5.js} +1 -1
- package/dist/chunk-P2TT7HU5.js.map +1 -0
- package/dist/{chunk-JQQ32JOD.cjs → chunk-PTCZOUQX.cjs} +1 -1
- package/dist/chunk-PTCZOUQX.cjs.map +1 -0
- package/dist/{chunk-2UHJBGKV.js → chunk-QPKHR6WH.js} +4 -2
- package/dist/chunk-QPKHR6WH.js.map +1 -0
- package/dist/{chunk-WWSJQUTT.cjs → chunk-V45YAJT4.cjs} +7 -5
- package/dist/chunk-V45YAJT4.cjs.map +1 -0
- package/dist/chunk-WRKONOOV.cjs +219 -0
- package/dist/chunk-WRKONOOV.cjs.map +1 -0
- package/dist/{chunk-DUYZ7WW3.cjs → chunk-XSS4REAS.cjs} +80 -46
- package/dist/chunk-XSS4REAS.cjs.map +1 -0
- package/dist/{chunk-GRQVGEYI.js → chunk-XSVEW3KN.js} +5 -3
- package/dist/chunk-XSVEW3KN.js.map +1 -0
- package/dist/chunk-YMXUVBQ3.js +165 -0
- package/dist/chunk-YMXUVBQ3.js.map +1 -0
- package/dist/hooks/useFormContext/index.cjs +2 -1
- package/dist/hooks/useFormContext/index.cjs.map +1 -1
- package/dist/hooks/useFormContext/index.d.cts +2 -2
- package/dist/hooks/useFormContext/index.d.ts +2 -2
- package/dist/hooks/useFormContext/index.js +1 -0
- package/dist/hooks/useInputValueDebounce/index.cjs +2 -2
- package/dist/hooks/useInputValueDebounce/index.js +1 -1
- package/dist/hooks/useUniformField/index.cjs +2 -2
- package/dist/hooks/useUniformField/index.d.cts +9 -5
- package/dist/hooks/useUniformField/index.d.ts +9 -5
- package/dist/hooks/useUniformField/index.js +1 -1
- package/dist/hooks/useUniformFieldArray/index.cjs +4 -3
- package/dist/hooks/useUniformFieldArray/index.cjs.map +1 -1
- package/dist/hooks/useUniformFieldArray/index.d.cts +6 -5
- package/dist/hooks/useUniformFieldArray/index.d.ts +6 -5
- package/dist/hooks/useUniformFieldArray/index.js +3 -2
- package/dist/index.cjs +41 -23
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -14
- package/dist/index.d.ts +17 -14
- package/dist/index.js +45 -27
- package/package.json +19 -8
- package/dist/chunk-2UHJBGKV.js.map +0 -1
- package/dist/chunk-37RM7TVP.cjs.map +0 -1
- package/dist/chunk-44STFB2F.cjs +0 -170
- package/dist/chunk-44STFB2F.cjs.map +0 -1
- package/dist/chunk-5ZMXUK6O.js +0 -170
- package/dist/chunk-5ZMXUK6O.js.map +0 -1
- package/dist/chunk-6AQ5R4U4.cjs.map +0 -1
- package/dist/chunk-7WHL6K5T.js.map +0 -1
- package/dist/chunk-A3PYIWG2.js.map +0 -1
- package/dist/chunk-BIC7IWER.js.map +0 -1
- package/dist/chunk-DUYZ7WW3.cjs.map +0 -1
- package/dist/chunk-EFZXZNJO.js.map +0 -1
- package/dist/chunk-GRQVGEYI.js.map +0 -1
- package/dist/chunk-HBPVEZJN.js +0 -105
- package/dist/chunk-HBPVEZJN.js.map +0 -1
- package/dist/chunk-JQQ32JOD.cjs.map +0 -1
- package/dist/chunk-KWJMKX5J.cjs +0 -1
- package/dist/chunk-MEIT57H2.cjs.map +0 -1
- package/dist/chunk-NG2KM4CA.cjs.map +0 -1
- package/dist/chunk-OTFX4BWZ.js.map +0 -1
- package/dist/chunk-OYDNTOOU.cjs.map +0 -1
- package/dist/chunk-PEADXODY.cjs +0 -105
- package/dist/chunk-PEADXODY.cjs.map +0 -1
- package/dist/chunk-PFFTE4NW.cjs.map +0 -1
- package/dist/chunk-QE4J4AMH.js.map +0 -1
- package/dist/chunk-R5AOS4DQ.js.map +0 -1
- package/dist/chunk-TN7OSO3T.js.map +0 -1
- package/dist/chunk-V3GDAELU.js +0 -1
- package/dist/chunk-WWSJQUTT.cjs.map +0 -1
- package/dist/chunk-Y7YEI6T2.js.map +0 -1
- package/dist/chunk-ZNX2PT6C.cjs.map +0 -1
- package/dist/hooks/index.cjs +0 -49
- package/dist/hooks/index.cjs.map +0 -1
- package/dist/hooks/index.d.cts +0 -14
- package/dist/hooks/index.d.ts +0 -14
- package/dist/hooks/index.js +0 -49
- /package/dist/{hooks → FieldCard}/index.js.map +0 -0
- /package/dist/{chunk-V3GDAELU.js.map → Slider/index.js.map} +0 -0
- /package/dist/{chunk-ZJDU5EPE.js.map → chunk-LEMQGDFE.js.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -1,49 +1,68 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useWatchUserChange
|
|
3
|
+
} from "./chunk-IKOYYA75.js";
|
|
4
|
+
import {
|
|
5
|
+
clientValidationSchemaByName,
|
|
6
|
+
useClientValidation
|
|
7
|
+
} from "./chunk-WWRIMXSN.js";
|
|
8
|
+
import {
|
|
9
|
+
RadioTabs_default
|
|
10
|
+
} from "./chunk-FHYUMBE3.js";
|
|
1
11
|
import {
|
|
2
12
|
Radios_default
|
|
3
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-2EQEKXG2.js";
|
|
4
14
|
import {
|
|
5
15
|
Select_default
|
|
6
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-MODH7W2M.js";
|
|
17
|
+
import {
|
|
18
|
+
Slider_default
|
|
19
|
+
} from "./chunk-YMXUVBQ3.js";
|
|
7
20
|
import {
|
|
8
21
|
SubmitButton_default
|
|
9
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-BZ2PD2JG.js";
|
|
10
23
|
import {
|
|
11
24
|
Switch_default
|
|
12
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-7TUWJWLN.js";
|
|
26
|
+
import {
|
|
27
|
+
SwitchBox_default,
|
|
28
|
+
switchBoxVariants
|
|
29
|
+
} from "./chunk-5UGCZ7OA.js";
|
|
13
30
|
import {
|
|
14
31
|
TextArea_default
|
|
15
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-XSVEW3KN.js";
|
|
16
33
|
import {
|
|
17
34
|
Checkboxes_default
|
|
18
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-QPKHR6WH.js";
|
|
19
36
|
import {
|
|
20
37
|
FieldArray_default
|
|
21
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-GQF5HVA4.js";
|
|
39
|
+
import {
|
|
40
|
+
useUniformFieldArray
|
|
41
|
+
} from "./chunk-BUFKWZNC.js";
|
|
22
42
|
import {
|
|
23
43
|
Form_default
|
|
24
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-P2TT7HU5.js";
|
|
45
|
+
import "./chunk-36LBVB45.js";
|
|
46
|
+
import {
|
|
47
|
+
FieldCard_default,
|
|
48
|
+
fieldCardVariants
|
|
49
|
+
} from "./chunk-7WBYC3BC.js";
|
|
25
50
|
import {
|
|
26
51
|
Grid_default
|
|
27
52
|
} from "./chunk-B62HKKMS.js";
|
|
28
53
|
import {
|
|
29
54
|
Input_default
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import {
|
|
32
|
-
RadioBoxes_default
|
|
33
|
-
} from "./chunk-5ZMXUK6O.js";
|
|
34
|
-
import {
|
|
35
|
-
RadioTabs_default
|
|
36
|
-
} from "./chunk-OTFX4BWZ.js";
|
|
37
|
-
import "./chunk-V3GDAELU.js";
|
|
55
|
+
} from "./chunk-O5KAFUBE.js";
|
|
38
56
|
import {
|
|
39
57
|
useInputValueDebounce
|
|
40
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-LEMQGDFE.js";
|
|
41
59
|
import {
|
|
42
|
-
|
|
43
|
-
|
|
60
|
+
RadioBoxes_default,
|
|
61
|
+
radioBoxVariants
|
|
62
|
+
} from "./chunk-M5IL7INR.js";
|
|
44
63
|
import {
|
|
45
64
|
useUniformField
|
|
46
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-4KEI3VRK.js";
|
|
47
66
|
import {
|
|
48
67
|
FieldCopyTestIdButton_default
|
|
49
68
|
} from "./chunk-NTDKZW4E.js";
|
|
@@ -59,13 +78,6 @@ import {
|
|
|
59
78
|
import {
|
|
60
79
|
useInputValueTransform
|
|
61
80
|
} from "./chunk-CNTOODUQ.js";
|
|
62
|
-
import {
|
|
63
|
-
useWatchUserChange
|
|
64
|
-
} from "./chunk-IKOYYA75.js";
|
|
65
|
-
import {
|
|
66
|
-
clientValidationSchemaByName,
|
|
67
|
-
useClientValidation
|
|
68
|
-
} from "./chunk-WWRIMXSN.js";
|
|
69
81
|
import {
|
|
70
82
|
checkFieldIsRequired,
|
|
71
83
|
useFormContext
|
|
@@ -84,6 +96,7 @@ import "./chunk-K2V4ULA2.js";
|
|
|
84
96
|
export {
|
|
85
97
|
Checkboxes_default as Checkboxes,
|
|
86
98
|
FieldArray_default as FieldArray,
|
|
99
|
+
FieldCard_default as FieldCard,
|
|
87
100
|
FieldCopyTestIdButton_default as FieldCopyTestIdButton,
|
|
88
101
|
FieldValidationError_default as FieldValidationError,
|
|
89
102
|
Form_default as Form,
|
|
@@ -93,15 +106,20 @@ export {
|
|
|
93
106
|
RadioTabs_default as RadioTabs,
|
|
94
107
|
Radios_default as Radios,
|
|
95
108
|
Select_default as Select,
|
|
109
|
+
Slider_default as Slider,
|
|
96
110
|
SubmitButton_default as SubmitButton,
|
|
97
111
|
Switch_default as Switch,
|
|
112
|
+
SwitchBox_default as SwitchBox,
|
|
98
113
|
TextArea_default as TextArea,
|
|
99
114
|
checkFieldIsRequired,
|
|
100
115
|
clientValidationSchemaByName,
|
|
116
|
+
fieldCardVariants,
|
|
101
117
|
flatArrayKey,
|
|
102
118
|
fromNullishString,
|
|
103
119
|
isTestEnvironment,
|
|
104
120
|
nameToTestId,
|
|
121
|
+
radioBoxVariants,
|
|
122
|
+
switchBoxVariants,
|
|
105
123
|
toFormFormat,
|
|
106
124
|
toNullishString,
|
|
107
125
|
toValidationFormat,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fuf-stack/uniform",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0",
|
|
4
4
|
"description": "fuf react form library",
|
|
5
5
|
"author": "Fröhlich ∧ Frei",
|
|
6
6
|
"homepage": "https://github.com/fuf-stack/pixels#readme",
|
|
@@ -26,6 +26,11 @@
|
|
|
26
26
|
"import": "./dist/FieldArray/index.js",
|
|
27
27
|
"require": "./dist/FieldArray/index.cjs"
|
|
28
28
|
},
|
|
29
|
+
"./FieldCard": {
|
|
30
|
+
"types": "./dist/FieldCard/index.d.ts",
|
|
31
|
+
"import": "./dist/FieldCard/index.js",
|
|
32
|
+
"require": "./dist/FieldCard/index.cjs"
|
|
33
|
+
},
|
|
29
34
|
"./Form": {
|
|
30
35
|
"types": "./dist/Form/index.d.ts",
|
|
31
36
|
"import": "./dist/Form/index.js",
|
|
@@ -41,11 +46,6 @@
|
|
|
41
46
|
"import": "./dist/helpers/index.js",
|
|
42
47
|
"require": "./dist/helpers/index.cjs"
|
|
43
48
|
},
|
|
44
|
-
"./hooks": {
|
|
45
|
-
"types": "./dist/hooks/index.d.ts",
|
|
46
|
-
"import": "./dist/hooks/index.js",
|
|
47
|
-
"require": "./dist/hooks/index.cjs"
|
|
48
|
-
},
|
|
49
49
|
"./hooks/useClientValidation": {
|
|
50
50
|
"types": "./dist/hooks/useClientValidation/index.d.ts",
|
|
51
51
|
"import": "./dist/hooks/useClientValidation/index.js",
|
|
@@ -126,6 +126,11 @@
|
|
|
126
126
|
"import": "./dist/Select/index.js",
|
|
127
127
|
"require": "./dist/Select/index.cjs"
|
|
128
128
|
},
|
|
129
|
+
"./Slider": {
|
|
130
|
+
"types": "./dist/Slider/index.d.ts",
|
|
131
|
+
"import": "./dist/Slider/index.js",
|
|
132
|
+
"require": "./dist/Slider/index.cjs"
|
|
133
|
+
},
|
|
129
134
|
"./SubmitButton": {
|
|
130
135
|
"types": "./dist/SubmitButton/index.d.ts",
|
|
131
136
|
"import": "./dist/SubmitButton/index.js",
|
|
@@ -136,6 +141,11 @@
|
|
|
136
141
|
"import": "./dist/Switch/index.js",
|
|
137
142
|
"require": "./dist/Switch/index.cjs"
|
|
138
143
|
},
|
|
144
|
+
"./SwitchBox": {
|
|
145
|
+
"types": "./dist/SwitchBox/index.d.ts",
|
|
146
|
+
"import": "./dist/SwitchBox/index.js",
|
|
147
|
+
"require": "./dist/SwitchBox/index.cjs"
|
|
148
|
+
},
|
|
139
149
|
"./TextArea": {
|
|
140
150
|
"types": "./dist/TextArea/index.d.ts",
|
|
141
151
|
"import": "./dist/TextArea/index.js",
|
|
@@ -172,7 +182,7 @@
|
|
|
172
182
|
"@dnd-kit/utilities": "3.2.2",
|
|
173
183
|
"@fuf-stack/pixel-motion": "1.0.26",
|
|
174
184
|
"@fuf-stack/pixel-utils": "1.0.5",
|
|
175
|
-
"@fuf-stack/pixels": "1.
|
|
185
|
+
"@fuf-stack/pixels": "1.6.0",
|
|
176
186
|
"@fuf-stack/veto": "0.12.6",
|
|
177
187
|
"@heroui/button": "2.2.24",
|
|
178
188
|
"@heroui/checkbox": "2.3.24",
|
|
@@ -180,6 +190,7 @@
|
|
|
180
190
|
"@heroui/number-input": "2.0.18",
|
|
181
191
|
"@heroui/radio": "2.3.24",
|
|
182
192
|
"@heroui/select": "2.4.25",
|
|
193
|
+
"@heroui/slider": "2.4.24",
|
|
183
194
|
"@heroui/switch": "2.2.22",
|
|
184
195
|
"@heroui/system": "2.4.20",
|
|
185
196
|
"@heroui/theme": "2.4.20",
|
|
@@ -197,5 +208,5 @@
|
|
|
197
208
|
"react": "19.1.1",
|
|
198
209
|
"react-dom": "19.1.1"
|
|
199
210
|
},
|
|
200
|
-
"gitHead": "
|
|
211
|
+
"gitHead": "fe6c7dd0a5c39fad2b83c0371bb3918086865b30"
|
|
201
212
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Checkboxes/Checkboxes.tsx","../src/Checkboxes/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type {\n CheckboxGroupProps as HeroCheckboxGroupProps,\n CheckboxProps as HeroCheckboxProps,\n} from '@heroui/checkbox';\nimport type { ReactNode } from 'react';\nimport type { FieldError } from 'react-hook-form';\nimport type { InputValueTransform } from '../hooks';\n\nimport {\n Checkbox as HeroCheckbox,\n CheckboxGroup as HeroCheckboxGroup,\n} from '@heroui/checkbox';\nimport { checkbox as heroCheckboxVariants } from '@heroui/theme';\n\nimport { slugify, tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks';\nimport { FieldValidationError } from '../partials/FieldValidationError';\n\nexport const checkboxesVariants = tv({\n slots: {\n base: 'group', // Needs group for group-data condition\n errorMessage: 'text-tiny',\n // see HeroUI styles for group-data condition,\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger',\n optionBase: '',\n optionIcon: '',\n optionLabel: '',\n optionLabelSubline: 'text-foreground-400 !text-small',\n optionWrapper: '',\n wrapper: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/checkbox.ts\n color: {\n info: {\n wrapper:\n 'text-info-foreground after:bg-info after:text-info-foreground',\n },\n ...heroCheckboxVariants.variants.color,\n } as const,\n lineThrough: {\n true: {\n optionLabel: [\n ...heroCheckboxVariants.variants.lineThrough.true.label,\n // fix stroke position when used with subline and enable animation\n 'relative before:transition-all before:duration-200',\n ],\n optionLabelSubline: 'group-data-[selected=true]:opacity-60',\n },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof checkboxesVariants>;\ntype ClassName = TVClassName<typeof checkboxesVariants>;\n\nexport interface CheckboxOption {\n /** option label */\n label?: ReactNode;\n /** subline displayed below the label */\n labelSubline?: ReactNode;\n /** option value */\n value: string;\n /** disables the option */\n disabled?: boolean;\n /** HTML data-testid attribute of the option */\n testId?: string;\n}\n\nexport interface CheckboxesProps extends VariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Color scheme of the checkboxes */\n color?: VariantProps['color'];\n /** Sets all checkboxes disabled */\n disabled?: boolean;\n /** Orientation of the checkboxes */\n inline?: boolean;\n /** Label displayed above the checkboxes */\n label?: ReactNode;\n /** Whether the checkboxes label should be crossed out */\n lineThrough?: boolean;\n /** Name the Field is registered on the form */\n name: string;\n /** Checkboxes that should be displayed. */\n options: CheckboxOption[];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** allows disentangled display and form values for a field */\n transform?: InputValueTransform<string[]>;\n}\n\n/**\n * Checkboxes component based on [HeroUI CheckboxGroup](https://www.heroui.com//docs/components/checkbox-group)\n */\nconst Checkboxes = ({\n className = undefined,\n color = 'primary',\n inline = false,\n lineThrough = false,\n options,\n name,\n ...uniformFieldProps\n}: CheckboxesProps) => {\n const {\n disabled,\n error: _error,\n field: { onChange, value: fieldValue, ref, onBlur },\n invalid,\n label,\n required,\n testId,\n } = useUniformField({\n name,\n ...uniformFieldProps,\n });\n\n // Ensure value is always an array (checkboxes need arrays)\n const value = Array.isArray(fieldValue) ? fieldValue : [];\n\n // Convert React Hook Form's nested error object structure to a flat array\n // RHF errors can be nested like: checkboxField.0 (individual checkbox errors)\n // and checkboxField._error (global field errors) - this flattens all\n // error values into a single array for rendering with FieldValidationError\n const errorFlat: FieldError[] =\n (_error &&\n Object.values(\n _error as unknown as Record<string, FieldError[]>,\n ).flat()) ??\n [];\n const errorMessage = (\n <FieldValidationError error={errorFlat} testId={testId} />\n );\n\n // classNames from slots\n const variants = checkboxesVariants({ lineThrough });\n const classNames = variantsToClassNames(variants, className, 'base');\n\n // map slots to HeroUI class names\n const heroCheckboxGroupClassNames: HeroCheckboxGroupProps['classNames'] = {\n base: classNames.base,\n label: classNames.label,\n wrapper: classNames.wrapper,\n };\n const heroCheckboxClassNames: HeroCheckboxProps['classNames'] = {\n base: classNames.optionBase,\n icon: classNames.optionIcon,\n label: classNames.optionLabel,\n wrapper: classNames.optionWrapper,\n };\n\n return (\n <HeroCheckboxGroup\n ref={ref}\n classNames={heroCheckboxGroupClassNames}\n color={color === 'info' ? 'primary' : color}\n // see HeroUI styles for group-data condition (data-invalid),\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-testid={testId}\n errorMessage={errorMessage}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label ? <legend>{label}</legend> : null}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n orientation={inline ? 'horizontal' : 'vertical'}\n value={value}\n >\n {options?.map((option) => {\n const optionTestId = slugify(\n `${testId}_option_${option?.testId ?? option?.value}`,\n { replaceDots: true },\n );\n\n // set content and classes depending option has subline\n const hasSubline = !!option.labelSubline;\n let labelContent: ReactNode;\n let optionClassNames = heroCheckboxClassNames;\n if (hasSubline) {\n labelContent = (\n <div className=\"flex grow flex-col items-start\">\n <span className={classNames.optionLabel}>{option.label}</span>\n <span className={classNames.optionLabelSubline}>\n {option.labelSubline}\n </span>\n </div>\n );\n // remove label classes from outer label when subline is used\n optionClassNames = { ...optionClassNames, label: '' };\n } else {\n labelContent = option.label;\n }\n\n return (\n <HeroCheckbox\n key={`index_${option.value}`}\n classNames={optionClassNames}\n data-invalid={invalid}\n data-testid={optionTestId}\n isDisabled={!!disabled || option.disabled}\n value={option?.value}\n aria-label={\n typeof option.label === 'string' ? option.label : option.value\n }\n >\n {labelContent}\n </HeroCheckbox>\n );\n })}\n </HeroCheckboxGroup>\n );\n};\n\nexport default Checkboxes;\n","import Checkboxes from './Checkboxes';\n\nexport type { CheckboxesProps, CheckboxOption } from './Checkboxes';\n\nexport { Checkboxes };\n\nexport default Checkboxes;\n"],"mappings":"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","names":["_a","Checkboxes_default"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-37RM7TVP.cjs","../src/Checkboxes/Checkboxes.tsx","../src/Checkboxes/index.ts"],"names":["_a","Checkboxes_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-37RM7TVP.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type {\n CheckboxGroupProps as HeroCheckboxGroupProps,\n CheckboxProps as HeroCheckboxProps,\n} from '@heroui/checkbox';\nimport type { ReactNode } from 'react';\nimport type { FieldError } from 'react-hook-form';\nimport type { InputValueTransform } from '../hooks';\n\nimport {\n Checkbox as HeroCheckbox,\n CheckboxGroup as HeroCheckboxGroup,\n} from '@heroui/checkbox';\nimport { checkbox as heroCheckboxVariants } from '@heroui/theme';\n\nimport { slugify, tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks';\nimport { FieldValidationError } from '../partials/FieldValidationError';\n\nexport const checkboxesVariants = tv({\n slots: {\n base: 'group', // Needs group for group-data condition\n errorMessage: 'text-tiny',\n // see HeroUI styles for group-data condition,\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger',\n optionBase: '',\n optionIcon: '',\n optionLabel: '',\n optionLabelSubline: 'text-foreground-400 !text-small',\n optionWrapper: '',\n wrapper: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/checkbox.ts\n color: {\n info: {\n wrapper:\n 'text-info-foreground after:bg-info after:text-info-foreground',\n },\n ...heroCheckboxVariants.variants.color,\n } as const,\n lineThrough: {\n true: {\n optionLabel: [\n ...heroCheckboxVariants.variants.lineThrough.true.label,\n // fix stroke position when used with subline and enable animation\n 'relative before:transition-all before:duration-200',\n ],\n optionLabelSubline: 'group-data-[selected=true]:opacity-60',\n },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof checkboxesVariants>;\ntype ClassName = TVClassName<typeof checkboxesVariants>;\n\nexport interface CheckboxOption {\n /** option label */\n label?: ReactNode;\n /** subline displayed below the label */\n labelSubline?: ReactNode;\n /** option value */\n value: string;\n /** disables the option */\n disabled?: boolean;\n /** HTML data-testid attribute of the option */\n testId?: string;\n}\n\nexport interface CheckboxesProps extends VariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Color scheme of the checkboxes */\n color?: VariantProps['color'];\n /** Sets all checkboxes disabled */\n disabled?: boolean;\n /** Orientation of the checkboxes */\n inline?: boolean;\n /** Label displayed above the checkboxes */\n label?: ReactNode;\n /** Whether the checkboxes label should be crossed out */\n lineThrough?: boolean;\n /** Name the Field is registered on the form */\n name: string;\n /** Checkboxes that should be displayed. */\n options: CheckboxOption[];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** allows disentangled display and form values for a field */\n transform?: InputValueTransform<string[]>;\n}\n\n/**\n * Checkboxes component based on [HeroUI CheckboxGroup](https://www.heroui.com//docs/components/checkbox-group)\n */\nconst Checkboxes = ({\n className = undefined,\n color = 'primary',\n inline = false,\n lineThrough = false,\n options,\n name,\n ...uniformFieldProps\n}: CheckboxesProps) => {\n const {\n disabled,\n error: _error,\n field: { onChange, value: fieldValue, ref, onBlur },\n invalid,\n label,\n required,\n testId,\n } = useUniformField({\n name,\n ...uniformFieldProps,\n });\n\n // Ensure value is always an array (checkboxes need arrays)\n const value = Array.isArray(fieldValue) ? fieldValue : [];\n\n // Convert React Hook Form's nested error object structure to a flat array\n // RHF errors can be nested like: checkboxField.0 (individual checkbox errors)\n // and checkboxField._error (global field errors) - this flattens all\n // error values into a single array for rendering with FieldValidationError\n const errorFlat: FieldError[] =\n (_error &&\n Object.values(\n _error as unknown as Record<string, FieldError[]>,\n ).flat()) ??\n [];\n const errorMessage = (\n <FieldValidationError error={errorFlat} testId={testId} />\n );\n\n // classNames from slots\n const variants = checkboxesVariants({ lineThrough });\n const classNames = variantsToClassNames(variants, className, 'base');\n\n // map slots to HeroUI class names\n const heroCheckboxGroupClassNames: HeroCheckboxGroupProps['classNames'] = {\n base: classNames.base,\n label: classNames.label,\n wrapper: classNames.wrapper,\n };\n const heroCheckboxClassNames: HeroCheckboxProps['classNames'] = {\n base: classNames.optionBase,\n icon: classNames.optionIcon,\n label: classNames.optionLabel,\n wrapper: classNames.optionWrapper,\n };\n\n return (\n <HeroCheckboxGroup\n ref={ref}\n classNames={heroCheckboxGroupClassNames}\n color={color === 'info' ? 'primary' : color}\n // see HeroUI styles for group-data condition (data-invalid),\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-testid={testId}\n errorMessage={errorMessage}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label ? <legend>{label}</legend> : null}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n orientation={inline ? 'horizontal' : 'vertical'}\n value={value}\n >\n {options?.map((option) => {\n const optionTestId = slugify(\n `${testId}_option_${option?.testId ?? option?.value}`,\n { replaceDots: true },\n );\n\n // set content and classes depending option has subline\n const hasSubline = !!option.labelSubline;\n let labelContent: ReactNode;\n let optionClassNames = heroCheckboxClassNames;\n if (hasSubline) {\n labelContent = (\n <div className=\"flex grow flex-col items-start\">\n <span className={classNames.optionLabel}>{option.label}</span>\n <span className={classNames.optionLabelSubline}>\n {option.labelSubline}\n </span>\n </div>\n );\n // remove label classes from outer label when subline is used\n optionClassNames = { ...optionClassNames, label: '' };\n } else {\n labelContent = option.label;\n }\n\n return (\n <HeroCheckbox\n key={`index_${option.value}`}\n classNames={optionClassNames}\n data-invalid={invalid}\n data-testid={optionTestId}\n isDisabled={!!disabled || option.disabled}\n value={option?.value}\n aria-label={\n typeof option.label === 'string' ? option.label : option.value\n }\n >\n {labelContent}\n </HeroCheckbox>\n );\n })}\n </HeroCheckboxGroup>\n );\n};\n\nexport default Checkboxes;\n","import Checkboxes from './Checkboxes';\n\nexport type { CheckboxesProps, CheckboxOption } from './Checkboxes';\n\nexport { Checkboxes };\n\nexport default Checkboxes;\n"]}
|
package/dist/chunk-44STFB2F.cjs
DELETED
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
var _chunkZNX2PT6Ccjs = require('./chunk-ZNX2PT6C.cjs');
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var _chunk555JRYCScjs = require('./chunk-555JRYCS.cjs');
|
|
9
|
-
|
|
10
|
-
// src/RadioBoxes/RadioBoxes.tsx
|
|
11
|
-
var _radio = require('@heroui/radio');
|
|
12
|
-
var _pixelutils = require('@fuf-stack/pixel-utils');
|
|
13
|
-
|
|
14
|
-
// src/RadioBoxes/RadioBox.tsx
|
|
15
|
-
|
|
16
|
-
var _visuallyhidden = require('@react-aria/visually-hidden');
|
|
17
|
-
|
|
18
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
19
|
-
var RadioBox = (_a) => {
|
|
20
|
-
var _b = _a, { icon = void 0 } = _b, props = _chunk555JRYCScjs.__objRest.call(void 0, _b, ["icon"]);
|
|
21
|
-
const {
|
|
22
|
-
children,
|
|
23
|
-
Component,
|
|
24
|
-
description,
|
|
25
|
-
getBaseProps,
|
|
26
|
-
getControlProps,
|
|
27
|
-
getInputProps,
|
|
28
|
-
getLabelProps,
|
|
29
|
-
getLabelWrapperProps,
|
|
30
|
-
getWrapperProps,
|
|
31
|
-
isDisabled
|
|
32
|
-
} = _radio.useRadio.call(void 0, props);
|
|
33
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
34
|
-
Component,
|
|
35
|
-
_chunk555JRYCScjs.__spreadProps.call(void 0, _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getBaseProps()), {
|
|
36
|
-
className: _pixelutils.cn.call(void 0,
|
|
37
|
-
"group inline-flex flex-auto cursor-pointer items-center justify-between gap-4 rounded-lg border-2 border-default p-4 hover:bg-content2 data-[selected=true]:border-focus",
|
|
38
|
-
{
|
|
39
|
-
// disabled styles
|
|
40
|
-
"pointer-events-none opacity-disabled": isDisabled
|
|
41
|
-
}
|
|
42
|
-
),
|
|
43
|
-
children: [
|
|
44
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _visuallyhidden.VisuallyHidden, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getInputProps())) }),
|
|
45
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", _chunk555JRYCScjs.__spreadProps.call(void 0, _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getWrapperProps()), { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getControlProps())) })),
|
|
46
|
-
icon,
|
|
47
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
48
|
-
"div",
|
|
49
|
-
_chunk555JRYCScjs.__spreadProps.call(void 0, _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getLabelWrapperProps()), {
|
|
50
|
-
className: _pixelutils.cn.call(void 0, getLabelWrapperProps().className, "grow"),
|
|
51
|
-
children: [
|
|
52
|
-
children ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", _chunk555JRYCScjs.__spreadProps.call(void 0, _chunk555JRYCScjs.__spreadValues.call(void 0, {}, getLabelProps()), { children })) : null,
|
|
53
|
-
description ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-foreground opacity-70 text-small", children: description }) : null
|
|
54
|
-
]
|
|
55
|
-
})
|
|
56
|
-
)
|
|
57
|
-
]
|
|
58
|
-
})
|
|
59
|
-
);
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
// src/RadioBoxes/RadioBoxes.tsx
|
|
63
|
-
|
|
64
|
-
var radioBoxesVariants = _pixelutils.tv.call(void 0, {
|
|
65
|
-
slots: {
|
|
66
|
-
base: "group gap-0",
|
|
67
|
-
// Needs group for group-data condition
|
|
68
|
-
itemBase: "",
|
|
69
|
-
itemControl: "bg-focus group-data-[invalid=true]:bg-danger",
|
|
70
|
-
itemDescription: "",
|
|
71
|
-
itemLabel: "text-sm",
|
|
72
|
-
itemLabelWrapper: "",
|
|
73
|
-
itemWrapper: 'group-data-[invalid=true]:!border-danger [&:not(group-data-[invalid="true"]):not(group-data-[selected="false"])]:border-focus',
|
|
74
|
-
// TODO: get rid of !.
|
|
75
|
-
// see HeroUI styles for group-data condition,
|
|
76
|
-
// e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts
|
|
77
|
-
label: "mb-2 inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:text-danger",
|
|
78
|
-
wrapper: ""
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
var RadioBoxes = (_a) => {
|
|
82
|
-
var _b = _a, {
|
|
83
|
-
className = void 0,
|
|
84
|
-
inline = false,
|
|
85
|
-
name,
|
|
86
|
-
options
|
|
87
|
-
} = _b, uniformFieldProps = _chunk555JRYCScjs.__objRest.call(void 0, _b, [
|
|
88
|
-
"className",
|
|
89
|
-
"inline",
|
|
90
|
-
"name",
|
|
91
|
-
"options"
|
|
92
|
-
]);
|
|
93
|
-
const {
|
|
94
|
-
defaultValue,
|
|
95
|
-
errorMessage,
|
|
96
|
-
invalid,
|
|
97
|
-
disabled,
|
|
98
|
-
label,
|
|
99
|
-
onBlur,
|
|
100
|
-
onChange,
|
|
101
|
-
ref,
|
|
102
|
-
required,
|
|
103
|
-
testId
|
|
104
|
-
} = _chunkZNX2PT6Ccjs.useUniformField.call(void 0, _chunk555JRYCScjs.__spreadValues.call(void 0, {
|
|
105
|
-
name
|
|
106
|
-
}, uniformFieldProps));
|
|
107
|
-
const variants = radioBoxesVariants();
|
|
108
|
-
const classNames = _pixelutils.variantsToClassNames.call(void 0, variants, className, "base");
|
|
109
|
-
const itemClassNames = {
|
|
110
|
-
base: classNames.itemBase,
|
|
111
|
-
control: classNames.itemControl,
|
|
112
|
-
description: classNames.itemDescription,
|
|
113
|
-
label: classNames.itemLabel,
|
|
114
|
-
labelWrapper: classNames.itemLabelWrapper,
|
|
115
|
-
wrapper: classNames.itemWrapper
|
|
116
|
-
};
|
|
117
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
118
|
-
_radio.RadioGroup,
|
|
119
|
-
{
|
|
120
|
-
ref,
|
|
121
|
-
classNames,
|
|
122
|
-
"data-invalid": invalid,
|
|
123
|
-
"data-required": required,
|
|
124
|
-
"data-testid": testId,
|
|
125
|
-
defaultValue,
|
|
126
|
-
errorMessage,
|
|
127
|
-
isDisabled: disabled,
|
|
128
|
-
isInvalid: invalid,
|
|
129
|
-
isRequired: required,
|
|
130
|
-
label: label ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "legend", { children: label }) : null,
|
|
131
|
-
name,
|
|
132
|
-
onBlur,
|
|
133
|
-
orientation: inline ? "horizontal" : "vertical",
|
|
134
|
-
children: options.map((option) => {
|
|
135
|
-
var _a2, _b2;
|
|
136
|
-
if ("value" in option) {
|
|
137
|
-
const optionTestId = _pixelutils.slugify.call(void 0,
|
|
138
|
-
`${testId}_option_${(_a2 = option.testId) != null ? _a2 : option.value}`,
|
|
139
|
-
{ replaceDots: true }
|
|
140
|
-
);
|
|
141
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
142
|
-
RadioBox,
|
|
143
|
-
{
|
|
144
|
-
classNames: itemClassNames,
|
|
145
|
-
"data-testid": optionTestId,
|
|
146
|
-
description: option.description,
|
|
147
|
-
icon: option.icon,
|
|
148
|
-
isDisabled: !!disabled || option.disabled,
|
|
149
|
-
onChange,
|
|
150
|
-
value: option.value,
|
|
151
|
-
children: (_b2 = option.label) != null ? _b2 : option.value
|
|
152
|
-
},
|
|
153
|
-
option.value
|
|
154
|
-
);
|
|
155
|
-
}
|
|
156
|
-
return null;
|
|
157
|
-
})
|
|
158
|
-
}
|
|
159
|
-
);
|
|
160
|
-
};
|
|
161
|
-
var RadioBoxes_default = RadioBoxes;
|
|
162
|
-
|
|
163
|
-
// src/RadioBoxes/index.ts
|
|
164
|
-
var RadioBoxes_default2 = RadioBoxes_default;
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
exports.RadioBoxes_default = RadioBoxes_default; exports.RadioBoxes_default2 = RadioBoxes_default2;
|
|
170
|
-
//# sourceMappingURL=chunk-44STFB2F.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-44STFB2F.cjs","../src/RadioBoxes/RadioBoxes.tsx","../src/RadioBoxes/RadioBox.tsx","../src/RadioBoxes/index.ts"],"names":["jsx","_a","_b","RadioBoxes_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-44STFB2F.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { RadioGroup as HeroRadioGroup } from '@heroui/radio';\n\nimport { slugify, tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks';\n//\nimport { RadioBox } from './RadioBox';\n\nexport const radioBoxesVariants = tv({\n slots: {\n base: 'group gap-0', // Needs group for group-data condition\n itemBase: '',\n itemControl: 'bg-focus group-data-[invalid=true]:bg-danger',\n itemDescription: '',\n itemLabel: 'text-sm',\n itemLabelWrapper: '',\n itemWrapper:\n 'group-data-[invalid=true]:!border-danger [&:not(group-data-[invalid=\"true\"]):not(group-data-[selected=\"false\"])]:border-focus', // TODO: get rid of !.\n // see HeroUI styles for group-data condition,\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'mb-2 inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:text-danger',\n wrapper: '',\n },\n});\n\ntype VariantProps = TVProps<typeof radioBoxesVariants>;\ntype ClassName = TVClassName<typeof radioBoxesVariants>;\n\nexport interface RadioBoxesOption {\n /** Description of the value. Works with variant radioBox. */\n description?: ReactNode;\n /** disables the option */\n disabled?: boolean;\n /** option label */\n label?: ReactNode;\n /** option icon */\n icon?: ReactNode;\n /** HTML data-testid attribute of the option */\n testId?: string;\n /** option value */\n value: string;\n}\n\nexport interface RadioBoxesProps extends VariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Determines if the Buttons are disabled or not. */\n disabled?: boolean;\n /** determines orientation of the Buttons. */\n inline?: boolean;\n /** Label displayed next to the RadioButton. */\n label?: ReactNode;\n /** Name the RadioButtons are registered at in HTML forms (react-hook-form). */\n name: string;\n /** Radio button configuration. */\n options: RadioBoxesOption[];\n /** Id to grab element in internal tests. */\n testId?: string;\n}\n\n/**\n * RadioBoxes component based on [HeroUI RadioGroup](https://www.heroui.com//docs/components/radio-group)\n */\nconst RadioBoxes = ({\n className = undefined,\n inline = false,\n name,\n options,\n ...uniformFieldProps\n}: RadioBoxesProps) => {\n const {\n defaultValue,\n errorMessage,\n invalid,\n disabled,\n label,\n onBlur,\n onChange,\n ref,\n required,\n testId,\n } = useUniformField({\n name,\n ...uniformFieldProps,\n });\n\n // classNames from slots\n const variants = radioBoxesVariants();\n const classNames = variantsToClassNames(variants, className, 'base');\n const itemClassNames = {\n base: classNames.itemBase,\n control: classNames.itemControl,\n description: classNames.itemDescription,\n label: classNames.itemLabel,\n labelWrapper: classNames.itemLabelWrapper,\n wrapper: classNames.itemWrapper,\n };\n\n return (\n <HeroRadioGroup\n ref={ref}\n classNames={classNames}\n // see HeroUI styles for group-data condition (data-invalid),\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-required={required}\n data-testid={testId}\n defaultValue={defaultValue as string}\n errorMessage={errorMessage}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label ? <legend>{label}</legend> : null}\n name={name}\n onBlur={onBlur}\n orientation={inline ? 'horizontal' : 'vertical'}\n >\n {options.map((option) => {\n if ('value' in option) {\n const optionTestId = slugify(\n `${testId}_option_${option.testId ?? option.value}`,\n { replaceDots: true },\n );\n return (\n <RadioBox\n key={option.value}\n classNames={itemClassNames}\n data-testid={optionTestId}\n description={option.description}\n icon={option.icon}\n isDisabled={!!disabled || option.disabled}\n onChange={onChange}\n value={option.value}\n >\n {option.label ?? option.value}\n </RadioBox>\n );\n }\n return null;\n })}\n </HeroRadioGroup>\n );\n};\n\nexport default RadioBoxes;\n","import type { RadioProps as HeroRadioProps } from '@heroui/radio';\nimport type { ReactNode } from 'react';\n\nimport { useRadio } from '@heroui/radio';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\n\nimport { cn } from '@fuf-stack/pixel-utils';\n\ninterface RadioProps extends HeroRadioProps {\n /** icon for the option */\n icon?: ReactNode;\n}\n\nexport const RadioBox = ({ icon = undefined, ...props }: RadioProps) => {\n const {\n children,\n Component,\n description,\n getBaseProps,\n getControlProps,\n getInputProps,\n getLabelProps,\n getLabelWrapperProps,\n getWrapperProps,\n isDisabled,\n } = useRadio(props);\n\n return (\n <Component\n {...getBaseProps()}\n className={cn(\n 'group inline-flex flex-auto cursor-pointer items-center justify-between gap-4 rounded-lg border-2 border-default p-4 hover:bg-content2 data-[selected=true]:border-focus',\n {\n // disabled styles\n 'pointer-events-none opacity-disabled': isDisabled,\n },\n )}\n >\n <VisuallyHidden>\n <input {...getInputProps()} />\n </VisuallyHidden>\n <span {...getWrapperProps()}>\n <span {...getControlProps()} />\n </span>\n {icon}\n <div\n {...getLabelWrapperProps()}\n className={cn(getLabelWrapperProps().className, 'grow')}\n >\n {children ? <span {...getLabelProps()}>{children}</span> : null}\n {description ? (\n <span className=\"text-foreground opacity-70 text-small\">\n {description}\n </span>\n ) : null}\n </div>\n </Component>\n );\n};\n\nexport default RadioBox;\n","import RadioBoxes from './RadioBoxes';\n\nexport type { RadioBoxesProps } from './RadioBoxes';\n\nexport { RadioBoxes };\n\nexport default RadioBoxes;\n"]}
|
package/dist/chunk-5ZMXUK6O.js
DELETED
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
useUniformField
|
|
3
|
-
} from "./chunk-BIC7IWER.js";
|
|
4
|
-
import {
|
|
5
|
-
__objRest,
|
|
6
|
-
__spreadProps,
|
|
7
|
-
__spreadValues
|
|
8
|
-
} from "./chunk-K2V4ULA2.js";
|
|
9
|
-
|
|
10
|
-
// src/RadioBoxes/RadioBoxes.tsx
|
|
11
|
-
import { RadioGroup as HeroRadioGroup } from "@heroui/radio";
|
|
12
|
-
import { slugify, tv, variantsToClassNames } from "@fuf-stack/pixel-utils";
|
|
13
|
-
|
|
14
|
-
// src/RadioBoxes/RadioBox.tsx
|
|
15
|
-
import { useRadio } from "@heroui/radio";
|
|
16
|
-
import { VisuallyHidden } from "@react-aria/visually-hidden";
|
|
17
|
-
import { cn } from "@fuf-stack/pixel-utils";
|
|
18
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
19
|
-
var RadioBox = (_a) => {
|
|
20
|
-
var _b = _a, { icon = void 0 } = _b, props = __objRest(_b, ["icon"]);
|
|
21
|
-
const {
|
|
22
|
-
children,
|
|
23
|
-
Component,
|
|
24
|
-
description,
|
|
25
|
-
getBaseProps,
|
|
26
|
-
getControlProps,
|
|
27
|
-
getInputProps,
|
|
28
|
-
getLabelProps,
|
|
29
|
-
getLabelWrapperProps,
|
|
30
|
-
getWrapperProps,
|
|
31
|
-
isDisabled
|
|
32
|
-
} = useRadio(props);
|
|
33
|
-
return /* @__PURE__ */ jsxs(
|
|
34
|
-
Component,
|
|
35
|
-
__spreadProps(__spreadValues({}, getBaseProps()), {
|
|
36
|
-
className: cn(
|
|
37
|
-
"group inline-flex flex-auto cursor-pointer items-center justify-between gap-4 rounded-lg border-2 border-default p-4 hover:bg-content2 data-[selected=true]:border-focus",
|
|
38
|
-
{
|
|
39
|
-
// disabled styles
|
|
40
|
-
"pointer-events-none opacity-disabled": isDisabled
|
|
41
|
-
}
|
|
42
|
-
),
|
|
43
|
-
children: [
|
|
44
|
-
/* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx("input", __spreadValues({}, getInputProps())) }),
|
|
45
|
-
/* @__PURE__ */ jsx("span", __spreadProps(__spreadValues({}, getWrapperProps()), { children: /* @__PURE__ */ jsx("span", __spreadValues({}, getControlProps())) })),
|
|
46
|
-
icon,
|
|
47
|
-
/* @__PURE__ */ jsxs(
|
|
48
|
-
"div",
|
|
49
|
-
__spreadProps(__spreadValues({}, getLabelWrapperProps()), {
|
|
50
|
-
className: cn(getLabelWrapperProps().className, "grow"),
|
|
51
|
-
children: [
|
|
52
|
-
children ? /* @__PURE__ */ jsx("span", __spreadProps(__spreadValues({}, getLabelProps()), { children })) : null,
|
|
53
|
-
description ? /* @__PURE__ */ jsx("span", { className: "text-foreground opacity-70 text-small", children: description }) : null
|
|
54
|
-
]
|
|
55
|
-
})
|
|
56
|
-
)
|
|
57
|
-
]
|
|
58
|
-
})
|
|
59
|
-
);
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
// src/RadioBoxes/RadioBoxes.tsx
|
|
63
|
-
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
64
|
-
var radioBoxesVariants = tv({
|
|
65
|
-
slots: {
|
|
66
|
-
base: "group gap-0",
|
|
67
|
-
// Needs group for group-data condition
|
|
68
|
-
itemBase: "",
|
|
69
|
-
itemControl: "bg-focus group-data-[invalid=true]:bg-danger",
|
|
70
|
-
itemDescription: "",
|
|
71
|
-
itemLabel: "text-sm",
|
|
72
|
-
itemLabelWrapper: "",
|
|
73
|
-
itemWrapper: 'group-data-[invalid=true]:!border-danger [&:not(group-data-[invalid="true"]):not(group-data-[selected="false"])]:border-focus',
|
|
74
|
-
// TODO: get rid of !.
|
|
75
|
-
// see HeroUI styles for group-data condition,
|
|
76
|
-
// e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts
|
|
77
|
-
label: "mb-2 inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:text-danger",
|
|
78
|
-
wrapper: ""
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
var RadioBoxes = (_a) => {
|
|
82
|
-
var _b = _a, {
|
|
83
|
-
className = void 0,
|
|
84
|
-
inline = false,
|
|
85
|
-
name,
|
|
86
|
-
options
|
|
87
|
-
} = _b, uniformFieldProps = __objRest(_b, [
|
|
88
|
-
"className",
|
|
89
|
-
"inline",
|
|
90
|
-
"name",
|
|
91
|
-
"options"
|
|
92
|
-
]);
|
|
93
|
-
const {
|
|
94
|
-
defaultValue,
|
|
95
|
-
errorMessage,
|
|
96
|
-
invalid,
|
|
97
|
-
disabled,
|
|
98
|
-
label,
|
|
99
|
-
onBlur,
|
|
100
|
-
onChange,
|
|
101
|
-
ref,
|
|
102
|
-
required,
|
|
103
|
-
testId
|
|
104
|
-
} = useUniformField(__spreadValues({
|
|
105
|
-
name
|
|
106
|
-
}, uniformFieldProps));
|
|
107
|
-
const variants = radioBoxesVariants();
|
|
108
|
-
const classNames = variantsToClassNames(variants, className, "base");
|
|
109
|
-
const itemClassNames = {
|
|
110
|
-
base: classNames.itemBase,
|
|
111
|
-
control: classNames.itemControl,
|
|
112
|
-
description: classNames.itemDescription,
|
|
113
|
-
label: classNames.itemLabel,
|
|
114
|
-
labelWrapper: classNames.itemLabelWrapper,
|
|
115
|
-
wrapper: classNames.itemWrapper
|
|
116
|
-
};
|
|
117
|
-
return /* @__PURE__ */ jsx2(
|
|
118
|
-
HeroRadioGroup,
|
|
119
|
-
{
|
|
120
|
-
ref,
|
|
121
|
-
classNames,
|
|
122
|
-
"data-invalid": invalid,
|
|
123
|
-
"data-required": required,
|
|
124
|
-
"data-testid": testId,
|
|
125
|
-
defaultValue,
|
|
126
|
-
errorMessage,
|
|
127
|
-
isDisabled: disabled,
|
|
128
|
-
isInvalid: invalid,
|
|
129
|
-
isRequired: required,
|
|
130
|
-
label: label ? /* @__PURE__ */ jsx2("legend", { children: label }) : null,
|
|
131
|
-
name,
|
|
132
|
-
onBlur,
|
|
133
|
-
orientation: inline ? "horizontal" : "vertical",
|
|
134
|
-
children: options.map((option) => {
|
|
135
|
-
var _a2, _b2;
|
|
136
|
-
if ("value" in option) {
|
|
137
|
-
const optionTestId = slugify(
|
|
138
|
-
`${testId}_option_${(_a2 = option.testId) != null ? _a2 : option.value}`,
|
|
139
|
-
{ replaceDots: true }
|
|
140
|
-
);
|
|
141
|
-
return /* @__PURE__ */ jsx2(
|
|
142
|
-
RadioBox,
|
|
143
|
-
{
|
|
144
|
-
classNames: itemClassNames,
|
|
145
|
-
"data-testid": optionTestId,
|
|
146
|
-
description: option.description,
|
|
147
|
-
icon: option.icon,
|
|
148
|
-
isDisabled: !!disabled || option.disabled,
|
|
149
|
-
onChange,
|
|
150
|
-
value: option.value,
|
|
151
|
-
children: (_b2 = option.label) != null ? _b2 : option.value
|
|
152
|
-
},
|
|
153
|
-
option.value
|
|
154
|
-
);
|
|
155
|
-
}
|
|
156
|
-
return null;
|
|
157
|
-
})
|
|
158
|
-
}
|
|
159
|
-
);
|
|
160
|
-
};
|
|
161
|
-
var RadioBoxes_default = RadioBoxes;
|
|
162
|
-
|
|
163
|
-
// src/RadioBoxes/index.ts
|
|
164
|
-
var RadioBoxes_default2 = RadioBoxes_default;
|
|
165
|
-
|
|
166
|
-
export {
|
|
167
|
-
RadioBoxes_default,
|
|
168
|
-
RadioBoxes_default2
|
|
169
|
-
};
|
|
170
|
-
//# sourceMappingURL=chunk-5ZMXUK6O.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/RadioBoxes/RadioBoxes.tsx","../src/RadioBoxes/RadioBox.tsx","../src/RadioBoxes/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { RadioGroup as HeroRadioGroup } from '@heroui/radio';\n\nimport { slugify, tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks';\n//\nimport { RadioBox } from './RadioBox';\n\nexport const radioBoxesVariants = tv({\n slots: {\n base: 'group gap-0', // Needs group for group-data condition\n itemBase: '',\n itemControl: 'bg-focus group-data-[invalid=true]:bg-danger',\n itemDescription: '',\n itemLabel: 'text-sm',\n itemLabelWrapper: '',\n itemWrapper:\n 'group-data-[invalid=true]:!border-danger [&:not(group-data-[invalid=\"true\"]):not(group-data-[selected=\"false\"])]:border-focus', // TODO: get rid of !.\n // see HeroUI styles for group-data condition,\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'mb-2 inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:text-danger',\n wrapper: '',\n },\n});\n\ntype VariantProps = TVProps<typeof radioBoxesVariants>;\ntype ClassName = TVClassName<typeof radioBoxesVariants>;\n\nexport interface RadioBoxesOption {\n /** Description of the value. Works with variant radioBox. */\n description?: ReactNode;\n /** disables the option */\n disabled?: boolean;\n /** option label */\n label?: ReactNode;\n /** option icon */\n icon?: ReactNode;\n /** HTML data-testid attribute of the option */\n testId?: string;\n /** option value */\n value: string;\n}\n\nexport interface RadioBoxesProps extends VariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Determines if the Buttons are disabled or not. */\n disabled?: boolean;\n /** determines orientation of the Buttons. */\n inline?: boolean;\n /** Label displayed next to the RadioButton. */\n label?: ReactNode;\n /** Name the RadioButtons are registered at in HTML forms (react-hook-form). */\n name: string;\n /** Radio button configuration. */\n options: RadioBoxesOption[];\n /** Id to grab element in internal tests. */\n testId?: string;\n}\n\n/**\n * RadioBoxes component based on [HeroUI RadioGroup](https://www.heroui.com//docs/components/radio-group)\n */\nconst RadioBoxes = ({\n className = undefined,\n inline = false,\n name,\n options,\n ...uniformFieldProps\n}: RadioBoxesProps) => {\n const {\n defaultValue,\n errorMessage,\n invalid,\n disabled,\n label,\n onBlur,\n onChange,\n ref,\n required,\n testId,\n } = useUniformField({\n name,\n ...uniformFieldProps,\n });\n\n // classNames from slots\n const variants = radioBoxesVariants();\n const classNames = variantsToClassNames(variants, className, 'base');\n const itemClassNames = {\n base: classNames.itemBase,\n control: classNames.itemControl,\n description: classNames.itemDescription,\n label: classNames.itemLabel,\n labelWrapper: classNames.itemLabelWrapper,\n wrapper: classNames.itemWrapper,\n };\n\n return (\n <HeroRadioGroup\n ref={ref}\n classNames={classNames}\n // see HeroUI styles for group-data condition (data-invalid),\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-required={required}\n data-testid={testId}\n defaultValue={defaultValue as string}\n errorMessage={errorMessage}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label ? <legend>{label}</legend> : null}\n name={name}\n onBlur={onBlur}\n orientation={inline ? 'horizontal' : 'vertical'}\n >\n {options.map((option) => {\n if ('value' in option) {\n const optionTestId = slugify(\n `${testId}_option_${option.testId ?? option.value}`,\n { replaceDots: true },\n );\n return (\n <RadioBox\n key={option.value}\n classNames={itemClassNames}\n data-testid={optionTestId}\n description={option.description}\n icon={option.icon}\n isDisabled={!!disabled || option.disabled}\n onChange={onChange}\n value={option.value}\n >\n {option.label ?? option.value}\n </RadioBox>\n );\n }\n return null;\n })}\n </HeroRadioGroup>\n );\n};\n\nexport default RadioBoxes;\n","import type { RadioProps as HeroRadioProps } from '@heroui/radio';\nimport type { ReactNode } from 'react';\n\nimport { useRadio } from '@heroui/radio';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\n\nimport { cn } from '@fuf-stack/pixel-utils';\n\ninterface RadioProps extends HeroRadioProps {\n /** icon for the option */\n icon?: ReactNode;\n}\n\nexport const RadioBox = ({ icon = undefined, ...props }: RadioProps) => {\n const {\n children,\n Component,\n description,\n getBaseProps,\n getControlProps,\n getInputProps,\n getLabelProps,\n getLabelWrapperProps,\n getWrapperProps,\n isDisabled,\n } = useRadio(props);\n\n return (\n <Component\n {...getBaseProps()}\n className={cn(\n 'group inline-flex flex-auto cursor-pointer items-center justify-between gap-4 rounded-lg border-2 border-default p-4 hover:bg-content2 data-[selected=true]:border-focus',\n {\n // disabled styles\n 'pointer-events-none opacity-disabled': isDisabled,\n },\n )}\n >\n <VisuallyHidden>\n <input {...getInputProps()} />\n </VisuallyHidden>\n <span {...getWrapperProps()}>\n <span {...getControlProps()} />\n </span>\n {icon}\n <div\n {...getLabelWrapperProps()}\n className={cn(getLabelWrapperProps().className, 'grow')}\n >\n {children ? <span {...getLabelProps()}>{children}</span> : null}\n {description ? (\n <span className=\"text-foreground opacity-70 text-small\">\n {description}\n </span>\n ) : null}\n </div>\n </Component>\n );\n};\n\nexport default RadioBox;\n","import RadioBoxes from './RadioBoxes';\n\nexport type { RadioBoxesProps } from './RadioBoxes';\n\nexport { RadioBoxes };\n\nexport default RadioBoxes;\n"],"mappings":"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","names":["jsx","_a","_b","RadioBoxes_default"]}
|