@yamada-ui/radio 1.2.16-next-20241126134247 → 1.3.0-next-20241126142838
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/chunk-27VC2SJI.mjs +30 -0
- package/dist/chunk-27VC2SJI.mjs.map +1 -0
- package/dist/chunk-AOVCDCCW.mjs +88 -0
- package/dist/chunk-AOVCDCCW.mjs.map +1 -0
- package/dist/chunk-DO4JVJRM.mjs +103 -0
- package/dist/chunk-DO4JVJRM.mjs.map +1 -0
- package/dist/{chunk-PUPRIHYJ.mjs → chunk-HFS5TQ47.mjs} +8 -115
- package/dist/chunk-HFS5TQ47.mjs.map +1 -0
- package/dist/chunk-JLL7F3NY.mjs +120 -0
- package/dist/chunk-JLL7F3NY.mjs.map +1 -0
- package/dist/chunk-NP4GICPF.mjs +124 -0
- package/dist/chunk-NP4GICPF.mjs.map +1 -0
- package/dist/chunk-Q5GTUIUF.mjs +56 -0
- package/dist/chunk-Q5GTUIUF.mjs.map +1 -0
- package/dist/chunk-YDYOLCNG.mjs +94 -0
- package/dist/chunk-YDYOLCNG.mjs.map +1 -0
- package/dist/chunk-YRIADAI7.mjs +32 -0
- package/dist/chunk-YRIADAI7.mjs.map +1 -0
- package/dist/chunk-ZLJHOIFP.mjs +26 -0
- package/dist/chunk-ZLJHOIFP.mjs.map +1 -0
- package/dist/index.d.mts +11 -4
- package/dist/index.d.ts +11 -4
- package/dist/index.js +344 -37
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +29 -5
- package/dist/radio-card-addon.d.mts +8 -0
- package/dist/radio-card-addon.d.ts +8 -0
- package/dist/radio-card-addon.js +69 -0
- package/dist/radio-card-addon.js.map +1 -0
- package/dist/radio-card-addon.mjs +9 -0
- package/dist/radio-card-addon.mjs.map +1 -0
- package/dist/radio-card-description.d.mts +8 -0
- package/dist/radio-card-description.d.ts +8 -0
- package/dist/radio-card-description.js +67 -0
- package/dist/radio-card-description.js.map +1 -0
- package/dist/radio-card-description.mjs +9 -0
- package/dist/radio-card-description.mjs.map +1 -0
- package/dist/radio-card-group.d.mts +33 -0
- package/dist/radio-card-group.d.ts +33 -0
- package/dist/radio-card-group.js +584 -0
- package/dist/radio-card-group.js.map +1 -0
- package/dist/radio-card-group.mjs +15 -0
- package/dist/radio-card-group.mjs.map +1 -0
- package/dist/radio-card-label.d.mts +22 -0
- package/dist/radio-card-label.d.ts +22 -0
- package/dist/radio-card-label.js +93 -0
- package/dist/radio-card-label.js.map +1 -0
- package/dist/radio-card-label.mjs +9 -0
- package/dist/radio-card-label.mjs.map +1 -0
- package/dist/radio-card.d.mts +61 -0
- package/dist/radio-card.d.ts +61 -0
- package/dist/radio-card.js +412 -0
- package/dist/radio-card.js.map +1 -0
- package/dist/radio-card.mjs +13 -0
- package/dist/radio-card.mjs.map +1 -0
- package/dist/radio-context.d.mts +25 -3
- package/dist/radio-context.d.ts +25 -3
- package/dist/radio-context.js +16 -0
- package/dist/radio-context.js.map +1 -1
- package/dist/radio-context.mjs +9 -1
- package/dist/radio-group.d.mts +15 -58
- package/dist/radio-group.d.ts +15 -58
- package/dist/radio-group.js +56 -39
- package/dist/radio-group.js.map +1 -1
- package/dist/radio-group.mjs +7 -7
- package/dist/radio.d.mts +14 -80
- package/dist/radio.d.ts +14 -80
- package/dist/radio.js +31 -17
- package/dist/radio.js.map +1 -1
- package/dist/radio.mjs +5 -6
- package/dist/use-radio-group.d.mts +56 -0
- package/dist/use-radio-group.d.ts +56 -0
- package/dist/use-radio-group.js +111 -0
- package/dist/use-radio-group.js.map +1 -0
- package/dist/use-radio-group.mjs +8 -0
- package/dist/use-radio-group.mjs.map +1 -0
- package/dist/use-radio.d.mts +87 -0
- package/dist/use-radio.d.ts +87 -0
- package/dist/use-radio.js +207 -0
- package/dist/use-radio.js.map +1 -0
- package/dist/use-radio.mjs +8 -0
- package/dist/use-radio.mjs.map +1 -0
- package/package.json +7 -7
- package/dist/chunk-6FMV6NX2.mjs +0 -14
- package/dist/chunk-6FMV6NX2.mjs.map +0 -1
- package/dist/chunk-PUPRIHYJ.mjs.map +0 -1
- package/dist/chunk-QAADRIFZ.mjs +0 -177
- package/dist/chunk-QAADRIFZ.mjs.map +0 -1
package/dist/chunk-QAADRIFZ.mjs
DELETED
@@ -1,177 +0,0 @@
|
|
1
|
-
"use client"
|
2
|
-
import {
|
3
|
-
Radio
|
4
|
-
} from "./chunk-PUPRIHYJ.mjs";
|
5
|
-
import {
|
6
|
-
RadioGroupProvider
|
7
|
-
} from "./chunk-6FMV6NX2.mjs";
|
8
|
-
|
9
|
-
// src/radio-group.tsx
|
10
|
-
import { useFormControl } from "@yamada-ui/form-control";
|
11
|
-
import { Flex } from "@yamada-ui/layouts";
|
12
|
-
import { useControllableState } from "@yamada-ui/use-controllable-state";
|
13
|
-
import {
|
14
|
-
cx,
|
15
|
-
getValidChildren,
|
16
|
-
isObject,
|
17
|
-
mergeRefs,
|
18
|
-
useCallbackRef
|
19
|
-
} from "@yamada-ui/utils";
|
20
|
-
import { forwardRef, useCallback, useId, useRef } from "react";
|
21
|
-
import { jsx } from "react/jsx-runtime";
|
22
|
-
var isEvent = (value) => value && isObject(value) && isObject(value.target);
|
23
|
-
var useRadioGroup = ({
|
24
|
-
id,
|
25
|
-
name,
|
26
|
-
defaultValue,
|
27
|
-
isNative,
|
28
|
-
value: valueProp,
|
29
|
-
onChange: onChangeProp,
|
30
|
-
...props
|
31
|
-
}) => {
|
32
|
-
const uuid = useId();
|
33
|
-
id != null ? id : id = uuid;
|
34
|
-
name != null ? name : name = `radio-${id}`;
|
35
|
-
const onChangeRef = useCallbackRef(onChangeProp);
|
36
|
-
const [value, setValue] = useControllableState({
|
37
|
-
defaultValue,
|
38
|
-
value: valueProp,
|
39
|
-
onChange: onChangeRef
|
40
|
-
});
|
41
|
-
const containerRef = useRef(null);
|
42
|
-
const onFocus = useCallback(() => {
|
43
|
-
const container = containerRef.current;
|
44
|
-
if (!container) return;
|
45
|
-
let query = `input:not(:disabled):checked`;
|
46
|
-
let firstInput = container.querySelector(query);
|
47
|
-
if (firstInput) {
|
48
|
-
firstInput.focus();
|
49
|
-
} else {
|
50
|
-
query = `input:not(:disabled)`;
|
51
|
-
firstInput = container.querySelector(query);
|
52
|
-
firstInput == null ? void 0 : firstInput.focus();
|
53
|
-
}
|
54
|
-
}, []);
|
55
|
-
const onChange = useCallback(
|
56
|
-
(evOrValue) => {
|
57
|
-
const nextValue = isEvent(evOrValue) ? evOrValue.target.value : evOrValue;
|
58
|
-
setValue(nextValue);
|
59
|
-
},
|
60
|
-
[setValue]
|
61
|
-
);
|
62
|
-
const getContainerProps = useCallback(
|
63
|
-
(props2 = {}, ref = null) => ({
|
64
|
-
role: "radiogroup",
|
65
|
-
...props2,
|
66
|
-
ref: mergeRefs(ref, containerRef)
|
67
|
-
}),
|
68
|
-
[]
|
69
|
-
);
|
70
|
-
const getRadioProps = useCallback(
|
71
|
-
(props2 = {}, ref = null) => {
|
72
|
-
const checked = props2.value === value;
|
73
|
-
return {
|
74
|
-
...props2,
|
75
|
-
ref,
|
76
|
-
name,
|
77
|
-
"aria-checked": checked,
|
78
|
-
[isNative ? "checked" : "isChecked"]: (
|
79
|
-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
80
|
-
value != null ? checked : void 0
|
81
|
-
),
|
82
|
-
onChange
|
83
|
-
};
|
84
|
-
},
|
85
|
-
[name, value, onChange, isNative]
|
86
|
-
);
|
87
|
-
return {
|
88
|
-
id,
|
89
|
-
name,
|
90
|
-
props,
|
91
|
-
setValue,
|
92
|
-
value,
|
93
|
-
getContainerProps,
|
94
|
-
getRadioProps,
|
95
|
-
onChange,
|
96
|
-
onFocus
|
97
|
-
};
|
98
|
-
};
|
99
|
-
var RadioGroup = forwardRef(
|
100
|
-
({
|
101
|
-
id: idProp,
|
102
|
-
className,
|
103
|
-
colorScheme,
|
104
|
-
size,
|
105
|
-
variant,
|
106
|
-
children,
|
107
|
-
direction = "column",
|
108
|
-
gap,
|
109
|
-
items = [],
|
110
|
-
...props
|
111
|
-
}, ref) => {
|
112
|
-
const {
|
113
|
-
isDisabled,
|
114
|
-
isInvalid,
|
115
|
-
isReadOnly,
|
116
|
-
isRequired,
|
117
|
-
labelId,
|
118
|
-
...computedProps
|
119
|
-
} = useFormControl({
|
120
|
-
id: idProp,
|
121
|
-
...props
|
122
|
-
});
|
123
|
-
const {
|
124
|
-
id,
|
125
|
-
name,
|
126
|
-
props: rest,
|
127
|
-
value,
|
128
|
-
getContainerProps,
|
129
|
-
onChange
|
130
|
-
} = useRadioGroup(computedProps);
|
131
|
-
const validChildren = getValidChildren(children);
|
132
|
-
let computedChildren = [];
|
133
|
-
if (!validChildren.length && items.length) {
|
134
|
-
computedChildren = items.map(({ label, value: value2, ...props2 }, i) => /* @__PURE__ */ jsx(Radio, { value: value2, ...props2, children: label }, i));
|
135
|
-
}
|
136
|
-
return /* @__PURE__ */ jsx(
|
137
|
-
RadioGroupProvider,
|
138
|
-
{
|
139
|
-
value: {
|
140
|
-
name,
|
141
|
-
colorScheme,
|
142
|
-
size,
|
143
|
-
variant,
|
144
|
-
isDisabled,
|
145
|
-
isInvalid,
|
146
|
-
isReadOnly,
|
147
|
-
isRequired,
|
148
|
-
value,
|
149
|
-
onChange
|
150
|
-
},
|
151
|
-
children: /* @__PURE__ */ jsx(
|
152
|
-
Flex,
|
153
|
-
{
|
154
|
-
ref,
|
155
|
-
className: cx("ui-radio-group", className),
|
156
|
-
gap: gap != null ? gap : direction === "row" ? "1rem" : void 0,
|
157
|
-
...getContainerProps({
|
158
|
-
id,
|
159
|
-
"aria-labelledby": labelId,
|
160
|
-
...rest
|
161
|
-
}),
|
162
|
-
direction,
|
163
|
-
children: children != null ? children : computedChildren
|
164
|
-
}
|
165
|
-
)
|
166
|
-
}
|
167
|
-
);
|
168
|
-
}
|
169
|
-
);
|
170
|
-
RadioGroup.displayName = "RadioGroup";
|
171
|
-
RadioGroup.__ui__ = "RadioGroup";
|
172
|
-
|
173
|
-
export {
|
174
|
-
useRadioGroup,
|
175
|
-
RadioGroup
|
176
|
-
};
|
177
|
-
//# sourceMappingURL=chunk-QAADRIFZ.mjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../src/radio-group.tsx"],"sourcesContent":["import type { ComponentArgs, PropGetter, ThemeProps } from \"@yamada-ui/core\"\nimport type { FormControlOptions } from \"@yamada-ui/form-control\"\nimport type { FlexProps } from \"@yamada-ui/layouts\"\nimport type { Dict } from \"@yamada-ui/utils\"\nimport type {\n ChangeEvent,\n ForwardedRef,\n ReactElement,\n RefAttributes,\n} from \"react\"\nimport type { RadioProps } from \"./radio\"\nimport type { RadioGroupContext } from \"./radio-context\"\nimport { useFormControl } from \"@yamada-ui/form-control\"\nimport { Flex } from \"@yamada-ui/layouts\"\nimport { useControllableState } from \"@yamada-ui/use-controllable-state\"\nimport {\n cx,\n getValidChildren,\n isObject,\n mergeRefs,\n useCallbackRef,\n} from \"@yamada-ui/utils\"\nimport { forwardRef, useCallback, useId, useRef } from \"react\"\nimport { Radio } from \"./radio\"\nimport { RadioGroupProvider } from \"./radio-context\"\n\nexport type RadioItem<Y extends number | string = string> = {\n label?: string\n} & RadioProps<Y>\n\nconst isEvent = (value: any): value is { target: HTMLInputElement } =>\n value && isObject(value) && isObject(value.target)\n\nexport interface UseRadioGroupProps<Y extends number | string = string> {\n /**\n * The top-level id string that will be applied to the radios.\n * The index of the radio will be appended to this top-level id.\n */\n id?: string\n /**\n * The HTML `name` attribute used for forms.\n */\n name?: string\n /**\n * The initial value of the radio group.\n */\n defaultValue?: Y\n /**\n * If `true`, input elements will receive `checked` attribute instead of `isChecked`.\n *\n * This assumes, you're using native radio inputs.\n *\n * @default false\n */\n isNative?: boolean\n /**\n * The value of the radio group.\n */\n value?: Y\n /**\n * The callback fired when any children radio is checked or unchecked.\n */\n onChange?: (value: Y) => void\n}\n\nexport const useRadioGroup = <\n Y extends number | string,\n M extends Dict = Dict,\n>({\n id,\n name,\n defaultValue,\n isNative,\n value: valueProp,\n onChange: onChangeProp,\n ...props\n}: M & UseRadioGroupProps<Y>) => {\n const uuid = useId()\n\n id ??= uuid\n name ??= `radio-${id}`\n\n const onChangeRef = useCallbackRef(onChangeProp)\n\n const [value, setValue] = useControllableState({\n defaultValue,\n value: valueProp,\n onChange: onChangeRef,\n })\n\n const containerRef = useRef<any>(null)\n\n const onFocus = useCallback(() => {\n const container = containerRef.current\n\n if (!container) return\n\n let query = `input:not(:disabled):checked`\n\n let firstInput = container.querySelector(query) as HTMLElement | undefined\n\n if (firstInput) {\n firstInput.focus()\n } else {\n query = `input:not(:disabled)`\n firstInput = container.querySelector(query) as HTMLElement | undefined\n\n firstInput?.focus()\n }\n }, [])\n\n const onChange = useCallback(\n (evOrValue: ChangeEvent<HTMLInputElement> | Y) => {\n const nextValue = (\n isEvent(evOrValue) ? evOrValue.target.value : evOrValue\n ) as Y\n\n setValue(nextValue)\n },\n [setValue],\n )\n\n const getContainerProps: PropGetter = useCallback(\n (props = {}, ref = null) => ({\n role: \"radiogroup\",\n ...props,\n ref: mergeRefs(ref, containerRef),\n }),\n [],\n )\n\n const getRadioProps: PropGetter<\n { value?: Y },\n {\n checked?: boolean\n isChecked?: boolean\n value?: Y\n }\n > = useCallback(\n (props = {}, ref = null) => {\n const checked = props.value === value\n\n return {\n ...props,\n ref,\n name,\n \"aria-checked\": checked,\n [isNative ? \"checked\" : \"isChecked\"]:\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n value != null ? checked : undefined,\n onChange,\n }\n },\n [name, value, onChange, isNative],\n )\n\n return {\n id,\n name,\n props,\n setValue,\n value,\n getContainerProps,\n getRadioProps,\n onChange,\n onFocus,\n }\n}\n\nexport type UseRadioGroupReturn<Y extends number | string = string> =\n ReturnType<typeof useRadioGroup<Y>>\n\nexport interface RadioGroupProps<Y extends number | string = string>\n extends ThemeProps<\"Radio\">,\n Omit<FlexProps, \"defaultValue\" | \"onChange\">,\n UseRadioGroupProps<Y>,\n FormControlOptions {\n /**\n * If provided, generate radios based on items.\n *\n * @default '[]'\n */\n items?: RadioItem<Y>[]\n}\n\nexport const RadioGroup = forwardRef(\n <Y extends number | string = string>(\n {\n id: idProp,\n className,\n colorScheme,\n size,\n variant,\n children,\n direction = \"column\",\n gap,\n items = [],\n ...props\n }: RadioGroupProps<Y>,\n ref: ForwardedRef<HTMLDivElement>,\n ) => {\n const {\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n labelId,\n ...computedProps\n } = useFormControl({\n id: idProp,\n ...props,\n })\n const {\n id,\n name,\n props: rest,\n value,\n getContainerProps,\n onChange,\n } = useRadioGroup(computedProps)\n\n const validChildren = getValidChildren(children)\n let computedChildren: ReactElement[] = []\n\n if (!validChildren.length && items.length) {\n computedChildren = items.map(({ label, value, ...props }, i) => (\n <Radio key={i} value={value} {...props}>\n {label}\n </Radio>\n ))\n }\n\n return (\n <RadioGroupProvider\n value={\n {\n name,\n colorScheme,\n size,\n variant,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n value,\n onChange,\n } as RadioGroupContext\n }\n >\n <Flex\n ref={ref}\n className={cx(\"ui-radio-group\", className)}\n gap={gap ?? (direction === \"row\" ? \"1rem\" : undefined)}\n {...getContainerProps({\n id,\n \"aria-labelledby\": labelId,\n ...rest,\n })}\n direction={direction}\n >\n {children ?? computedChildren}\n </Flex>\n </RadioGroupProvider>\n )\n },\n) as {\n <Y extends number | string = string>(\n props: RadioGroupProps<Y> & RefAttributes<HTMLDivElement>,\n ): ReactElement\n} & ComponentArgs\n\nRadioGroup.displayName = \"RadioGroup\"\nRadioGroup.__ui__ = \"RadioGroup\"\n"],"mappings":"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","names":["props","value"]}
|