@purr-react-styled-components/components.radio-group 0.0.7 → 0.0.8
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/_style.d.ts +3 -3
- package/dist/_types.d.ts +1 -7
- package/dist/index.cjs +1 -1
- package/dist/index.js +74 -2
- package/package.json +6 -5
- package/dist/_components/_label.d.ts +0 -4
- package/dist/_label-DEWFA00w.js +0 -11
- package/dist/_label-DnBnK4Hi.cjs +0 -1
- package/dist/index-BggW1El6.js +0 -93
- package/dist/index-D__1tkxO.cjs +0 -1
package/dist/_style.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export declare const Styled: {
|
|
2
|
-
Container: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').
|
|
3
|
-
|
|
2
|
+
Container: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
3
|
+
$direction: "row" | "column";
|
|
4
|
+
}>> & string;
|
|
4
5
|
OptionLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, {
|
|
5
6
|
$disabled?: boolean;
|
|
6
7
|
}>> & string;
|
|
7
8
|
OptionInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>> & string;
|
|
8
|
-
OptionLabelText: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
9
9
|
};
|
package/dist/_types.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { ChangeEvent, HTMLAttributes, LabelHTMLAttributes, ReactNode } from 'react';
|
|
2
|
-
import { FieldError } from 'react-hook-form';
|
|
3
2
|
import { IExtendable } from '@purr-core/utils.definitions';
|
|
4
|
-
import { IHelperTextProps } from '@purr-react-styled-components/components.helper-text';
|
|
5
3
|
|
|
6
4
|
export type TRadioGroupDirection = "column" | "row";
|
|
7
5
|
export interface IRadioGroupOption {
|
|
@@ -19,7 +17,7 @@ export interface IRadioGroupOptionProps extends IRadioGroupOption {
|
|
|
19
17
|
onChange?: (value: string, e: ChangeEvent<HTMLInputElement>) => void;
|
|
20
18
|
}
|
|
21
19
|
export interface IRadioGroupLabelProps {
|
|
22
|
-
label?:
|
|
20
|
+
label?: ReactNode;
|
|
23
21
|
htmlAttributes?: LabelHTMLAttributes<HTMLLabelElement> & IExtendable;
|
|
24
22
|
}
|
|
25
23
|
export interface IRadioGroupProps {
|
|
@@ -27,14 +25,10 @@ export interface IRadioGroupProps {
|
|
|
27
25
|
options: IRadioGroupOption[];
|
|
28
26
|
name: string;
|
|
29
27
|
value?: string;
|
|
30
|
-
label?: string;
|
|
31
28
|
isStandalone?: boolean;
|
|
32
29
|
direction?: TRadioGroupDirection;
|
|
33
|
-
error?: FieldError;
|
|
34
30
|
disabled?: boolean;
|
|
35
|
-
helperTextProps?: IHelperTextProps;
|
|
36
31
|
htmlAttributes?: HTMLAttributes<HTMLDivElement> & IExtendable;
|
|
37
|
-
labelHtmlAttributes?: HTMLAttributes<HTMLSpanElement> & IExtendable;
|
|
38
32
|
optionHtmlAttributes?: LabelHTMLAttributes<HTMLLabelElement> & IExtendable;
|
|
39
33
|
onChange?: (value: string, e: ChangeEvent<HTMLInputElement>) => void;
|
|
40
34
|
}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),y=require("clsx"),m=require("react"),_=require("@purr-core/hooks.sync-state-with-props"),f=require("styled-components"),k=require("@purr-core/utils.helpers"),b={Container:f.div.withConfig({displayName:"_style__Container",componentId:"sc-192tru7-0"})(["display:flex;flex-direction:",";align-items:",";gap:16px;position:relative;"],({$direction:e})=>e,({$direction:e})=>e==="column"?"flex-start":"inherit"),OptionLabel:f.label.withConfig({displayName:"_style__OptionLabel",componentId:"sc-192tru7-1"})(["display:flex;align-items:center;gap:12px;cursor:",";opacity:",";"],({$disabled:e})=>e?"not-allowed":"pointer",({$disabled:e})=>e?.4:1),OptionInput:f.input.withConfig({displayName:"_style__OptionInput",componentId:"sc-192tru7-2"})(['appearance:none;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:50%;background-color:#ffffff;cursor:pointer;transition:all 300ms ease-in-out;&::before{content:"";display:block;margin-top:4px;margin-left:4px;width:6px;height:6px;border-radius:50%;background-color:#ffffff;transform:scale(0);}&:checked::before{transform:scale(1);}&:checked{background-color:#44403c;border-color:#44403c;}&[type="radio" i]{margin:0;}&:hover:not(:disabled){border-color:#44403c;}'])},g=m.memo(({label:e,value:r,name:o,disabled:a,htmlAttributes:s,isStandalone:n,currentValue:p,setCurrentValue:t,onChange:i})=>{const c=n?void 0:p===r,h=m.useCallback(u=>{i==null||i(r,u),t==null||t(r)},[i,t,r]);return d.jsxs(b.OptionLabel,{$disabled:a,...s,className:"radio-group-option",children:[d.jsx(b.OptionInput,{className:y("radio-group-option-input",c?"radio-group-option-input--checked":""),name:o,type:"radio",value:r,checked:c,onChange:h,disabled:a}),e]})},k.arePropsShallowEqual(["currentValue"],(e,r,o)=>{switch(e){case"currentValue":return o.currentValue===o.value==(r.currentValue===r.value);default:return}}));g.displayName="RadioGroupOption";const x=m.forwardRef(({options:e,className:r,name:o,value:a="",onChange:s,isStandalone:n=!1,direction:p="column",disabled:t=!1,htmlAttributes:i,optionHtmlAttributes:c},h)=>{const{currentValue:u,setCurrentValue:w}=_(a,n);return d.jsx(b.Container,{...i,$direction:p,className:y("radio-group",r),children:e==null?void 0:e.map(l=>d.jsx(g,{label:l.label,value:l.value,name:o,htmlAttributes:c??l.htmlAttributes,isStandalone:n,currentValue:u,setCurrentValue:w,onChange:s,disabled:l.disabled??t},l.key))})});x.displayName="RadioGroup";exports.RadioGroup=x;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,76 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs as x, jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import h from "clsx";
|
|
3
|
+
import { memo as w, useCallback as k, forwardRef as N } from "react";
|
|
4
|
+
import _ from "@purr-core/hooks.sync-state-with-props";
|
|
5
|
+
import u from "styled-components";
|
|
6
|
+
import { arePropsShallowEqual as O } from "@purr-core/utils.helpers";
|
|
7
|
+
const f = {
|
|
8
|
+
Container: u.div.withConfig({
|
|
9
|
+
displayName: "_style__Container",
|
|
10
|
+
componentId: "sc-192tru7-0"
|
|
11
|
+
})(["display:flex;flex-direction:", ";align-items:", ";gap:16px;position:relative;"], ({
|
|
12
|
+
$direction: r
|
|
13
|
+
}) => r, ({
|
|
14
|
+
$direction: r
|
|
15
|
+
}) => r === "column" ? "flex-start" : "inherit"),
|
|
16
|
+
OptionLabel: u.label.withConfig({
|
|
17
|
+
displayName: "_style__OptionLabel",
|
|
18
|
+
componentId: "sc-192tru7-1"
|
|
19
|
+
})(["display:flex;align-items:center;gap:12px;cursor:", ";opacity:", ";"], ({
|
|
20
|
+
$disabled: r
|
|
21
|
+
}) => r ? "not-allowed" : "pointer", ({
|
|
22
|
+
$disabled: r
|
|
23
|
+
}) => r ? 0.4 : 1),
|
|
24
|
+
OptionInput: u.input.withConfig({
|
|
25
|
+
displayName: "_style__OptionInput",
|
|
26
|
+
componentId: "sc-192tru7-2"
|
|
27
|
+
})(['appearance:none;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:50%;background-color:#ffffff;cursor:pointer;transition:all 300ms ease-in-out;&::before{content:"";display:block;margin-top:4px;margin-left:4px;width:6px;height:6px;border-radius:50%;background-color:#ffffff;transform:scale(0);}&:checked::before{transform:scale(1);}&:checked{background-color:#44403c;border-color:#44403c;}&[type="radio" i]{margin:0;}&:hover:not(:disabled){border-color:#44403c;}'])
|
|
28
|
+
}, y = w(({
|
|
29
|
+
label: r,
|
|
30
|
+
value: e,
|
|
31
|
+
name: o,
|
|
32
|
+
disabled: a,
|
|
33
|
+
htmlAttributes: d,
|
|
34
|
+
isStandalone: n,
|
|
35
|
+
currentValue: p,
|
|
36
|
+
setCurrentValue: t,
|
|
37
|
+
onChange: i
|
|
38
|
+
}) => {
|
|
39
|
+
const c = n ? void 0 : p === e, b = k((s) => {
|
|
40
|
+
i == null || i(e, s), t == null || t(e);
|
|
41
|
+
}, [i, t, e]);
|
|
42
|
+
return /* @__PURE__ */ x(f.OptionLabel, { $disabled: a, ...d, className: "radio-group-option", children: [
|
|
43
|
+
/* @__PURE__ */ m(f.OptionInput, { className: h("radio-group-option-input", c ? "radio-group-option-input--checked" : ""), name: o, type: "radio", value: e, checked: c, onChange: b, disabled: a }),
|
|
44
|
+
r
|
|
45
|
+
] });
|
|
46
|
+
}, O(["currentValue"], (r, e, o) => {
|
|
47
|
+
switch (r) {
|
|
48
|
+
case "currentValue":
|
|
49
|
+
return o.currentValue === o.value == (e.currentValue === e.value);
|
|
50
|
+
default:
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
}));
|
|
54
|
+
y.displayName = "RadioGroupOption";
|
|
55
|
+
const R = N(({
|
|
56
|
+
options: r,
|
|
57
|
+
className: e,
|
|
58
|
+
name: o,
|
|
59
|
+
value: a = "",
|
|
60
|
+
onChange: d,
|
|
61
|
+
isStandalone: n = !1,
|
|
62
|
+
direction: p = "column",
|
|
63
|
+
disabled: t = !1,
|
|
64
|
+
htmlAttributes: i,
|
|
65
|
+
optionHtmlAttributes: c
|
|
66
|
+
}, b) => {
|
|
67
|
+
const {
|
|
68
|
+
currentValue: s,
|
|
69
|
+
setCurrentValue: g
|
|
70
|
+
} = _(a, n);
|
|
71
|
+
return /* @__PURE__ */ m(f.Container, { ...i, $direction: p, className: h("radio-group", e), children: r == null ? void 0 : r.map((l) => /* @__PURE__ */ m(y, { label: l.label, value: l.value, name: o, htmlAttributes: c ?? l.htmlAttributes, isStandalone: n, currentValue: s, setCurrentValue: g, onChange: d, disabled: l.disabled ?? t }, l.key)) });
|
|
72
|
+
});
|
|
73
|
+
R.displayName = "RadioGroup";
|
|
2
74
|
export {
|
|
3
|
-
|
|
75
|
+
R as RadioGroup
|
|
4
76
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purr-react-styled-components/components.radio-group",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -25,12 +25,13 @@
|
|
|
25
25
|
"react": "*",
|
|
26
26
|
"styled-components": "*",
|
|
27
27
|
"clsx": "*",
|
|
28
|
-
"@purr-core/utils.definitions": "0.0.
|
|
29
|
-
"@purr-core/utils.helpers": "0.0.
|
|
30
|
-
"@purr-react-styled-components/components.flex-box": "0.0.7",
|
|
31
|
-
"@purr-react-styled-components/components.helper-text": "0.0.6",
|
|
28
|
+
"@purr-core/utils.definitions": "0.0.10",
|
|
29
|
+
"@purr-core/utils.helpers": "0.0.10",
|
|
32
30
|
"@purr-core/hooks.sync-state-with-props": "0.0.7"
|
|
33
31
|
},
|
|
32
|
+
"devDependencies": {
|
|
33
|
+
"@purr-react-styled-components/components.form-field": "0.0.1"
|
|
34
|
+
},
|
|
34
35
|
"author": "@DinhThienPhuc",
|
|
35
36
|
"license": "ISC",
|
|
36
37
|
"description": "",
|
package/dist/_label-DEWFA00w.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import { memo as e } from "react";
|
|
3
|
-
import { S as m } from "./index-BggW1El6.js";
|
|
4
|
-
const l = e(({
|
|
5
|
-
label: o = "",
|
|
6
|
-
htmlAttributes: r
|
|
7
|
-
}) => /* @__PURE__ */ a(m.Label, { ...r, className: "radio-group-label", children: o }));
|
|
8
|
-
l.displayName = "RadioGroupLabel";
|
|
9
|
-
export {
|
|
10
|
-
l as RadioGroupLabel
|
|
11
|
-
};
|
package/dist/_label-DnBnK4Hi.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),i=require("react"),t=require("./index-D__1tkxO.cjs"),e=i.memo(({label:r="",htmlAttributes:o})=>a.jsx(t.Styled.Label,{...o,className:"radio-group-label",children:r}));e.displayName="RadioGroupLabel";exports.RadioGroupLabel=e;
|
package/dist/index-BggW1El6.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { jsx as e, jsxs as h } from "react/jsx-runtime";
|
|
2
|
-
import x from "clsx";
|
|
3
|
-
import { memo as L, useCallback as k, useMemo as R, lazy as I, forwardRef as v, Suspense as g } from "react";
|
|
4
|
-
import G from "@purr-core/hooks.sync-state-with-props";
|
|
5
|
-
import { FlexBox as S } from "@purr-react-styled-components/components.flex-box";
|
|
6
|
-
import { HelperText as z } from "@purr-react-styled-components/components.helper-text";
|
|
7
|
-
import s from "styled-components";
|
|
8
|
-
import { arePropsShallowEqual as A } from "@purr-core/utils.helpers";
|
|
9
|
-
const u = {
|
|
10
|
-
Container: s.div.withConfig({
|
|
11
|
-
displayName: "_style__Container",
|
|
12
|
-
componentId: "sc-192tru7-0"
|
|
13
|
-
})(["display:flex;flex-direction:column;gap:16px;position:relative;"]),
|
|
14
|
-
Label: s.span.withConfig({
|
|
15
|
-
displayName: "_style__Label",
|
|
16
|
-
componentId: "sc-192tru7-1"
|
|
17
|
-
})(['transition:color 200ms ease-in-out;font-size:16px;font-family:"Verdana",sans-serif;font-weight:600;']),
|
|
18
|
-
OptionLabel: s.label.withConfig({
|
|
19
|
-
displayName: "_style__OptionLabel",
|
|
20
|
-
componentId: "sc-192tru7-2"
|
|
21
|
-
})(["display:flex;align-items:center;gap:12px;cursor:", ";opacity:", ";"], ({
|
|
22
|
-
$disabled: a
|
|
23
|
-
}) => a ? "not-allowed" : "pointer", ({
|
|
24
|
-
$disabled: a
|
|
25
|
-
}) => a ? 0.4 : 1),
|
|
26
|
-
OptionInput: s.input.withConfig({
|
|
27
|
-
displayName: "_style__OptionInput",
|
|
28
|
-
componentId: "sc-192tru7-3"
|
|
29
|
-
})(['appearance:none;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:50%;background-color:#ffffff;cursor:pointer;transition:all 300ms ease-in-out;&::before{content:"";display:block;margin-top:4px;margin-left:4px;width:6px;height:6px;border-radius:50%;background-color:#ffffff;transform:scale(0);}&:checked::before{transform:scale(1);}&:checked{background-color:#44403c;border-color:#44403c;}&[type="radio" i]{margin:0;}&:hover:not(:disabled){border-color:#44403c;}']),
|
|
30
|
-
OptionLabelText: s.span.withConfig({
|
|
31
|
-
displayName: "_style__OptionLabelText",
|
|
32
|
-
componentId: "sc-192tru7-4"
|
|
33
|
-
})(['font-family:"Verdana",sans-serif;font-size:16px;'])
|
|
34
|
-
}, _ = L(({
|
|
35
|
-
label: a,
|
|
36
|
-
value: o,
|
|
37
|
-
name: l,
|
|
38
|
-
disabled: d,
|
|
39
|
-
htmlAttributes: r,
|
|
40
|
-
isStandalone: f,
|
|
41
|
-
currentValue: p,
|
|
42
|
-
setCurrentValue: n,
|
|
43
|
-
onChange: i
|
|
44
|
-
}) => {
|
|
45
|
-
const m = f ? void 0 : p === o, t = k((y) => {
|
|
46
|
-
i == null || i(o, y), n == null || n(o);
|
|
47
|
-
}, [i, n, o]), b = R(() => /* @__PURE__ */ e(u.OptionLabelText, { className: "radio-group-option-label", children: a }), [a]);
|
|
48
|
-
return /* @__PURE__ */ h(u.OptionLabel, { $disabled: d, ...r, className: "radio-group-option", children: [
|
|
49
|
-
/* @__PURE__ */ e(u.OptionInput, { className: x("radio-group-option-input", m ? "radio-group-option-input--checked" : ""), name: l, type: "radio", value: o, checked: m, onChange: t, disabled: d }),
|
|
50
|
-
b
|
|
51
|
-
] });
|
|
52
|
-
}, A(["currentValue"], (a, o, l) => {
|
|
53
|
-
switch (a) {
|
|
54
|
-
case "currentValue":
|
|
55
|
-
return l.currentValue === l.value == (o.currentValue === o.value);
|
|
56
|
-
default:
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
}));
|
|
60
|
-
_.displayName = "RadioGroupOption";
|
|
61
|
-
const V = I(() => import("./_label-DEWFA00w.js").then((a) => ({
|
|
62
|
-
default: a.RadioGroupLabel
|
|
63
|
-
}))), j = v(({
|
|
64
|
-
options: a,
|
|
65
|
-
className: o,
|
|
66
|
-
name: l,
|
|
67
|
-
value: d = "",
|
|
68
|
-
label: r = "",
|
|
69
|
-
onChange: f,
|
|
70
|
-
isStandalone: p = !1,
|
|
71
|
-
direction: n = "column",
|
|
72
|
-
error: i = null,
|
|
73
|
-
disabled: m = !1,
|
|
74
|
-
helperTextProps: t,
|
|
75
|
-
htmlAttributes: b,
|
|
76
|
-
labelHtmlAttributes: y,
|
|
77
|
-
optionHtmlAttributes: w
|
|
78
|
-
}, C) => {
|
|
79
|
-
const {
|
|
80
|
-
currentValue: N,
|
|
81
|
-
setCurrentValue: O
|
|
82
|
-
} = G(d, p);
|
|
83
|
-
return /* @__PURE__ */ h(u.Container, { ...b, className: x("radio-group", o), children: [
|
|
84
|
-
/* @__PURE__ */ e(g, { children: !!r && /* @__PURE__ */ e(V, { label: r, htmlAttributes: y }) }),
|
|
85
|
-
/* @__PURE__ */ e(S, { gap: "16px", flexDirection: n, alignItems: n === "column" ? "flex-start" : void 0, children: a == null ? void 0 : a.map((c) => /* @__PURE__ */ e(_, { label: c.label, value: c.value, name: l, htmlAttributes: w ?? c.htmlAttributes, isStandalone: p, currentValue: N, setCurrentValue: O, onChange: f, disabled: c.disabled ?? m }, c.key)) }),
|
|
86
|
-
/* @__PURE__ */ e(g, { children: ((i == null ? void 0 : i.message) || (t == null ? void 0 : t.children)) && /* @__PURE__ */ e(z, { ...t, isError: !!i, variant: "standard", children: (i == null ? void 0 : i.message) ?? (t == null ? void 0 : t.children) ?? "" }) })
|
|
87
|
-
] });
|
|
88
|
-
});
|
|
89
|
-
j.displayName = "RadioGroup";
|
|
90
|
-
export {
|
|
91
|
-
j as R,
|
|
92
|
-
u as S
|
|
93
|
-
};
|
package/dist/index-D__1tkxO.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const a=require("react/jsx-runtime"),h=require("clsx"),s=require("react"),j=require("@purr-core/hooks.sync-state-with-props"),L=require("@purr-react-styled-components/components.flex-box"),R=require("@purr-react-styled-components/components.helper-text"),d=require("styled-components"),k=require("@purr-core/utils.helpers"),u={Container:d.div.withConfig({displayName:"_style__Container",componentId:"sc-192tru7-0"})(["display:flex;flex-direction:column;gap:16px;position:relative;"]),Label:d.span.withConfig({displayName:"_style__Label",componentId:"sc-192tru7-1"})(['transition:color 200ms ease-in-out;font-size:16px;font-family:"Verdana",sans-serif;font-weight:600;']),OptionLabel:d.label.withConfig({displayName:"_style__OptionLabel",componentId:"sc-192tru7-2"})(["display:flex;align-items:center;gap:12px;cursor:",";opacity:",";"],({$disabled:e})=>e?"not-allowed":"pointer",({$disabled:e})=>e?.4:1),OptionInput:d.input.withConfig({displayName:"_style__OptionInput",componentId:"sc-192tru7-3"})(['appearance:none;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:50%;background-color:#ffffff;cursor:pointer;transition:all 300ms ease-in-out;&::before{content:"";display:block;margin-top:4px;margin-left:4px;width:6px;height:6px;border-radius:50%;background-color:#ffffff;transform:scale(0);}&:checked::before{transform:scale(1);}&:checked{background-color:#44403c;border-color:#44403c;}&[type="radio" i]{margin:0;}&:hover:not(:disabled){border-color:#44403c;}']),OptionLabelText:d.span.withConfig({displayName:"_style__OptionLabelText",componentId:"sc-192tru7-4"})(['font-family:"Verdana",sans-serif;font-size:16px;'])},g=s.memo(({label:e,value:i,name:l,disabled:c,htmlAttributes:p,isStandalone:b,currentValue:f,setCurrentValue:o,onChange:t})=>{const m=b?void 0:f===i,n=s.useCallback(y=>{t==null||t(i,y),o==null||o(i)},[t,o,i]),x=s.useMemo(()=>a.jsx(u.OptionLabelText,{className:"radio-group-option-label",children:e}),[e]);return a.jsxs(u.OptionLabel,{$disabled:c,...p,className:"radio-group-option",children:[a.jsx(u.OptionInput,{className:h("radio-group-option-input",m?"radio-group-option-input--checked":""),name:l,type:"radio",value:i,checked:m,onChange:n,disabled:c}),x]})},k.arePropsShallowEqual(["currentValue"],(e,i,l)=>{switch(e){case"currentValue":return l.currentValue===l.value==(i.currentValue===i.value);default:return}}));g.displayName="RadioGroupOption";const q=s.lazy(()=>Promise.resolve().then(()=>require("./_label-DnBnK4Hi.cjs")).then(e=>({default:e.RadioGroupLabel}))),_=s.forwardRef(({options:e,className:i,name:l,value:c="",label:p="",onChange:b,isStandalone:f=!1,direction:o="column",error:t=null,disabled:m=!1,helperTextProps:n,htmlAttributes:x,labelHtmlAttributes:y,optionHtmlAttributes:w},I)=>{const{currentValue:N,setCurrentValue:O}=j(c,f);return a.jsxs(u.Container,{...x,className:h("radio-group",i),children:[a.jsx(s.Suspense,{children:!!p&&a.jsx(q,{label:p,htmlAttributes:y})}),a.jsx(L.FlexBox,{gap:"16px",flexDirection:o,alignItems:o==="column"?"flex-start":void 0,children:e==null?void 0:e.map(r=>a.jsx(g,{label:r.label,value:r.value,name:l,htmlAttributes:w??r.htmlAttributes,isStandalone:f,currentValue:N,setCurrentValue:O,onChange:b,disabled:r.disabled??m},r.key))}),a.jsx(s.Suspense,{children:((t==null?void 0:t.message)||(n==null?void 0:n.children))&&a.jsx(R.HelperText,{...n,isError:!!t,variant:"standard",children:(t==null?void 0:t.message)??(n==null?void 0:n.children)??""})})]})});_.displayName="RadioGroup";exports.RadioGroup=_;exports.Styled=u;
|