From 4d138ad6719a074f5f994006d12745ca05bec9c4 Mon Sep 17 00:00:00 2001 From: Romain Hamel Date: Mon, 31 Mar 2025 16:34:31 +0200 Subject: [PATCH] feat(RadioGroup): add `card` and `table` variants (#3178) Co-authored-by: Benjamin Canac --- docs/content/3.components/radio-group.md | 104 +- .../app/pages/components/radio-group.vue | 37 +- src/runtime/components/RadioGroup.vue | 25 +- src/theme/radio-group.ts | 82 +- test/components/RadioGroup.spec.ts | 8 +- .../__snapshots__/RadioGroup-vue.spec.ts.snap | 954 ++++++++++++------ .../__snapshots__/RadioGroup.spec.ts.snap | 954 ++++++++++++------ 7 files changed, 1541 insertions(+), 623 deletions(-) diff --git a/docs/content/3.components/radio-group.md b/docs/content/3.components/radio-group.md index 226d1989..a476a854 100644 --- a/docs/content/3.components/radio-group.md +++ b/docs/content/3.components/radio-group.md @@ -133,30 +133,6 @@ props: --- :: -### Orientation - -Use the `orientation` prop to change the orientation of the RadioGroup. Defaults to `vertical`. - -::component-code ---- -prettier: true -ignore: - - defaultValue - - items -external: - - items -externalTypes: - - RadioGroupItem[] -props: - orientation: 'horizontal' - defaultValue: 'System' - items: - - 'System' - - 'Light' - - 'Dark' ---- -:: - ### Color Use the `color` prop to change the color of the RadioGroup. @@ -181,6 +157,35 @@ props: --- :: +### Variant + +Use the `variant` prop to change the variant of the RadioGroup. + +::component-code +--- +prettier: true +ignore: + - defaultValue + - items +external: + - items +props: + color: 'primary' + variant: 'table' + defaultValue: 'pro' + items: + - label: 'Pro' + value: 'pro' + description: 'Tailored for indie hackers, freelancers and solo founders.' + - label: 'Startup' + value: 'startup' + description: 'Best suited for small teams, startups and agencies.' + - label: 'Enterprise' + value: 'enterprise' + description: 'Ideal for larger teams and organizations.' +--- +:: + ### Size Use the `size` prop to change the size of the RadioGroup. @@ -197,6 +202,57 @@ externalTypes: - RadioGroupItem[] props: size: 'xl' + variant: 'list' + defaultValue: 'System' + items: + - 'System' + - 'Light' + - 'Dark' +--- +:: + +### Orientation + +Use the `orientation` prop to change the orientation of the RadioGroup. Defaults to `vertical`. + +::component-code +--- +prettier: true +ignore: + - defaultValue + - items +external: + - items +externalTypes: + - RadioGroupItem[] +props: + orientation: 'horizontal' + variant: 'list' + defaultValue: 'System' + items: + - 'System' + - 'Light' + - 'Dark' +--- +:: + +### Indicator + +Use the `indicator` prop to change the position or hide the indicator. Defaults to `start`. + +::component-code +--- +prettier: true +ignore: + - defaultValue + - items +external: + - items +externalTypes: + - RadioGroupItem[] +props: + indicator: 'end' + variant: 'card' defaultValue: 'System' items: - 'System' diff --git a/playground/app/pages/components/radio-group.vue b/playground/app/pages/components/radio-group.vue index 3cb3c008..1c8353fa 100644 --- a/playground/app/pages/components/radio-group.vue +++ b/playground/app/pages/components/radio-group.vue @@ -2,6 +2,8 @@ import theme from '#build/ui/radio-group' const sizes = Object.keys(theme.variants.size) as Array +const variants = Object.keys(theme.variants.variant) +const variant = ref('list' as const) const literalOptions = [ 'Option 1', @@ -23,27 +25,36 @@ const itemsWithDescription = [ diff --git a/src/runtime/components/RadioGroup.vue b/src/runtime/components/RadioGroup.vue index d007a73b..38a2fd32 100644 --- a/src/runtime/components/RadioGroup.vue +++ b/src/runtime/components/RadioGroup.vue @@ -49,6 +49,10 @@ export interface RadioGroupProps exte * @defaultValue 'md' */ size?: RadioGroupVariants['size'] + /** + * @defaultValue 'list' + */ + variant?: RadioGroupVariants['variant'] /** * @defaultValue 'primary' */ @@ -58,6 +62,11 @@ export interface RadioGroupProps exte * @defaultValue 'vertical' */ orientation?: RadioGroupRootProps['orientation'] + /** + * Position of the indicator. + * @defaultValue 'start' + */ + indicator?: RadioGroupVariants['indicator'] class?: any ui?: Partial } @@ -101,7 +110,9 @@ const ui = computed(() => radioGroup({ color: color.value, disabled: disabled.value, required: props.required, - orientation: props.orientation + orientation: props.orientation, + variant: props.variant, + indicator: props.indicator })) function normalizeItem(item: any) { @@ -167,7 +178,7 @@ function onUpdate(value: any) { {{ legend }} -
+
- + + + {{ item.label }} + +

{{ item.description }}

-
+
diff --git a/src/theme/radio-group.ts b/src/theme/radio-group.ts index e8ca283c..1101eb4a 100644 --- a/src/theme/radio-group.ts +++ b/src/theme/radio-group.ts @@ -9,7 +9,7 @@ export default (options: Required) => ({ base: 'rounded-full ring ring-inset ring-(--ui-border-accented) focus-visible:outline-2 focus-visible:outline-offset-2', indicator: 'flex items-center justify-center size-full rounded-full after:bg-(--ui-bg) after:rounded-full', container: 'flex items-center', - wrapper: 'ms-2', + wrapper: 'w-full', label: 'block font-medium text-(--ui-text)', description: 'text-(--ui-text-muted)' }, @@ -24,6 +24,16 @@ export default (options: Required) => ({ indicator: 'bg-(--ui-bg-inverted)' } }, + variant: { + list: { + }, + card: { + item: 'items-center border border-(--ui-border-muted) rounded-lg' + }, + table: { + item: 'border border-(--ui-border-muted)' + } + }, orientation: { horizontal: { fieldset: 'flex-row', @@ -33,6 +43,20 @@ export default (options: Required) => ({ fieldset: 'flex-col' } }, + indicator: { + start: { + item: 'flex-row', + base: 'me-2' + }, + end: { + item: 'flex-row-reverse', + base: 'ms-2' + }, + hidden: { + base: 'sr-only', + wrapper: 'text-center' + } + }, size: { xs: { fieldset: 'gap-0.5', @@ -87,8 +111,62 @@ export default (options: Required) => ({ } } }, + compoundVariants: [ + { size: 'xs', variant: ['card', 'table'], class: { item: 'p-2.5' } }, + { size: 'sm', variant: ['card', 'table'], class: { item: 'p-3' } }, + { size: 'md', variant: ['card', 'table'], class: { item: 'p-3.5' } }, + { size: 'lg', variant: ['card', 'table'], class: { item: 'p-4' } }, + { size: 'xl', variant: ['card', 'table'], class: { item: 'p-4.5' } }, + { + orientation: 'horizontal', + variant: 'table', + class: { + item: 'first-of-type:rounded-l-lg last-of-type:rounded-r-lg', + fieldset: 'gap-0 -space-x-px' + } + }, + { + orientation: 'vertical', + variant: 'table', + class: { + item: 'first-of-type:rounded-t-lg last-of-type:rounded-b-lg', + fieldset: 'gap-0 -space-y-px' + } + }, + ...(options.theme.colors || []).map((color: string) => ({ + color, + variant: 'card', + class: { + item: `has-data-[state=checked]:border-(--ui-${color})` + } + })), + { + color: 'neutral', + variant: 'card', + class: { + item: 'has-data-[state=checked]:border-(--ui-border-elevated)' + } + }, + ...(options.theme.colors || []).map((color: string) => ({ + color, + variant: 'table', + class: { + item: `has-data-[state=checked]:bg-(--ui-${color})/10 has-data-[state=checked]:border-(--ui-${color})/50 has-data-[state=checked]:z-[1]` + } + })), + { + color: 'neutral', + variant: 'table', + class: { + item: 'has-data-[state=checked]:bg-(--ui-bg-elevated) has-data-[state=checked]:border-(--ui-border-inverted)/25 has-data-[state=checked]:z-[1]' + } + } + ], defaultVariants: { size: 'md', - color: 'primary' + color: 'primary', + variant: 'list', + orientation: 'vertical', + indicator: 'start' } }) diff --git a/test/components/RadioGroup.spec.ts b/test/components/RadioGroup.spec.ts index b65f568e..5ca469b9 100644 --- a/test/components/RadioGroup.spec.ts +++ b/test/components/RadioGroup.spec.ts @@ -8,6 +8,8 @@ import type { FormInputEvents } from '~/src/module' describe('RadioGroup', () => { const sizes = Object.keys(theme.variants.size) as any + const variants = Object.keys(theme.variants.variant) as any + const indicators = Object.keys(theme.variants.indicator) as any const items = [ { value: '1', label: 'Option 1' }, @@ -28,8 +30,10 @@ describe('RadioGroup', () => { ['with description', { props: { items: items.map((opt, count) => ({ ...opt, description: `Description ${count}` })) } }], ['with required', { props: { ...props, legend: 'Legend', required: true } }], ...sizes.map((size: string) => [`with size ${size}`, { props: { ...props, size } }]), - ['with color neutral', { props: { color: 'neutral', defaultValue: '1' } }], - ['with orientation', { props: { ...props, orientation: 'horizontal' } }], + ...variants.map((variant: string) => [`with primary variant ${variant}`, { props: { ...props, variant, defaultValue: '1' } }]), + ...variants.map((variant: string) => [`with neutral variant ${variant}`, { props: { ...props, variant, color: 'neutral', defaultValue: '1' } }]), + ...variants.map((variant: string) => [`with horizontal variant ${variant}`, { props: { ...props, variant, orientation: 'horizontal', defaultValue: '1' } }]), + ...indicators.map((indicator: string) => [`with indicator ${indicator}`, { props: { ...props, indicator } }]), ['with ariaLabel', { props, attrs: { 'aria-label': 'Aria label' } }], ['with as', { props: { ...props, as: 'section' } }], ['with class', { props: { ...props, class: 'absolute' } }], diff --git a/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap b/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap index 64997016..00446a3f 100644 --- a/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap +++ b/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap @@ -3,34 +3,34 @@ exports[`RadioGroup > renders with ariaLabel correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -39,34 +39,34 @@ exports[`RadioGroup > renders with ariaLabel correctly 1`] = ` exports[`RadioGroup > renders with as correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -75,43 +75,34 @@ exports[`RadioGroup > renders with as correctly 1`] = ` exports[`RadioGroup > renders with class correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
-
- -
" -`; - -exports[`RadioGroup > renders with color neutral correctly 1`] = ` -"
-
- +
" @@ -120,33 +111,33 @@ exports[`RadioGroup > renders with color neutral correctly 1`] = ` exports[`RadioGroup > renders with defaultValue correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -155,34 +146,34 @@ exports[`RadioGroup > renders with defaultValue correctly 1`] = ` exports[`RadioGroup > renders with description correctly 1`] = ` "
- -
-
-
+
+

Option 1

Description 0

-
-
-
-
+
+

Option 2

Description 1

-
-
-
-
+
+

Option 3

Description 2

-
+
" @@ -191,34 +182,34 @@ exports[`RadioGroup > renders with description correctly 1`] = ` exports[`RadioGroup > renders with description slot correctly 1`] = ` "
- -
-
-
+
+

Description slot

-
-
-
-
+
+

Description slot

-
-
-
-
+
+

Description slot

-
+
" @@ -227,34 +218,34 @@ exports[`RadioGroup > renders with description slot correctly 1`] = ` exports[`RadioGroup > renders with descriptionKey correctly 1`] = ` "
- -
-
-
+
+

Option 1

1

-
-
-
-
+
+

Option 2

2

-
-
-
-
+
+

Option 3

3

-
+
" @@ -263,31 +254,101 @@ exports[`RadioGroup > renders with descriptionKey correctly 1`] = ` exports[`RadioGroup > renders with disabled correctly 1`] = ` "
+ +
+ +
" +`; + +exports[`RadioGroup > renders with horizontal variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with horizontal variant list correctly 1`] = ` +"
+
-
-
-
+
-
-
-
+
-
-
-
+
@@ -296,37 +357,180 @@ exports[`RadioGroup > renders with disabled correctly 1`] = `
" `; +exports[`RadioGroup > renders with horizontal variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator end correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator hidden correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator start correctly 1`] = ` +"
+
+ +
+ +
" +`; + exports[`RadioGroup > renders with items correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -335,34 +539,34 @@ exports[`RadioGroup > renders with items correctly 1`] = ` exports[`RadioGroup > renders with label slot correctly 1`] = ` "
- -
-
-
+
+

Label slot

-
-
-
-
+
+

Label slot

-
-
-
-
+
+

Label slot

-
+
" @@ -371,34 +575,34 @@ exports[`RadioGroup > renders with label slot correctly 1`] = ` exports[`RadioGroup > renders with labelKey correctly 1`] = ` "
- -
-
-
+
+

1

-
-
-
-
+
+

2

-
-
-
-
+
+

3

-
+
" @@ -407,66 +611,136 @@ exports[`RadioGroup > renders with labelKey correctly 1`] = ` exports[`RadioGroup > renders with legend slot correctly 1`] = ` "
- -
-
-
+
+

Legend slot

-
-
-
-
+
+

Legend slot

-
-
-
-
+
+

Legend slot

-
+
" `; exports[`RadioGroup > renders with modelValue correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with neutral variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with neutral variant list correctly 1`] = ` "
-
-
-
+
-
-
-
+
-
-
-
+
@@ -475,34 +749,103 @@ exports[`RadioGroup > renders with modelValue correctly 1`] = `
" `; -exports[`RadioGroup > renders with orientation correctly 1`] = ` -"
-
+exports[`RadioGroup > renders with neutral variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with primary variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with primary variant list correctly 1`] = ` +"
+
-
-
-
+
-
-
-
+
-
-
-
+
@@ -511,37 +854,72 @@ exports[`RadioGroup > renders with orientation correctly 1`] = `
" `; +exports[`RadioGroup > renders with primary variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + exports[`RadioGroup > renders with required correctly 1`] = ` "
- Legend -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -550,34 +928,34 @@ exports[`RadioGroup > renders with required correctly 1`] = ` exports[`RadioGroup > renders with size lg correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -586,34 +964,34 @@ exports[`RadioGroup > renders with size lg correctly 1`] = ` exports[`RadioGroup > renders with size md correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -622,34 +1000,34 @@ exports[`RadioGroup > renders with size md correctly 1`] = ` exports[`RadioGroup > renders with size sm correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -658,34 +1036,34 @@ exports[`RadioGroup > renders with size sm correctly 1`] = ` exports[`RadioGroup > renders with size xl correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -694,34 +1072,34 @@ exports[`RadioGroup > renders with size xl correctly 1`] = ` exports[`RadioGroup > renders with size xs correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -730,34 +1108,34 @@ exports[`RadioGroup > renders with size xs correctly 1`] = ` exports[`RadioGroup > renders with ui correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -766,34 +1144,34 @@ exports[`RadioGroup > renders with ui correctly 1`] = ` exports[`RadioGroup > renders with valueKey correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" diff --git a/test/components/__snapshots__/RadioGroup.spec.ts.snap b/test/components/__snapshots__/RadioGroup.spec.ts.snap index 05e550f8..0f2e3469 100644 --- a/test/components/__snapshots__/RadioGroup.spec.ts.snap +++ b/test/components/__snapshots__/RadioGroup.spec.ts.snap @@ -3,34 +3,34 @@ exports[`RadioGroup > renders with ariaLabel correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -39,34 +39,34 @@ exports[`RadioGroup > renders with ariaLabel correctly 1`] = ` exports[`RadioGroup > renders with as correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -75,43 +75,34 @@ exports[`RadioGroup > renders with as correctly 1`] = ` exports[`RadioGroup > renders with class correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
-
- -
" -`; - -exports[`RadioGroup > renders with color neutral correctly 1`] = ` -"
-
- +
" @@ -120,33 +111,33 @@ exports[`RadioGroup > renders with color neutral correctly 1`] = ` exports[`RadioGroup > renders with defaultValue correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -155,34 +146,34 @@ exports[`RadioGroup > renders with defaultValue correctly 1`] = ` exports[`RadioGroup > renders with description correctly 1`] = ` "
- -
-
-
+
+

Option 1

Description 0

-
-
-
-
+
+

Option 2

Description 1

-
-
-
-
+
+

Option 3

Description 2

-
+
" @@ -191,34 +182,34 @@ exports[`RadioGroup > renders with description correctly 1`] = ` exports[`RadioGroup > renders with description slot correctly 1`] = ` "
- -
-
-
+
+

Description slot

-
-
-
-
+
+

Description slot

-
-
-
-
+
+

Description slot

-
+
" @@ -227,34 +218,34 @@ exports[`RadioGroup > renders with description slot correctly 1`] = ` exports[`RadioGroup > renders with descriptionKey correctly 1`] = ` "
- -
-
-
+
+

Option 1

1

-
-
-
-
+
+

Option 2

2

-
-
-
-
+
+

Option 3

3

-
+
" @@ -263,31 +254,101 @@ exports[`RadioGroup > renders with descriptionKey correctly 1`] = ` exports[`RadioGroup > renders with disabled correctly 1`] = ` "
+ +
+ +
" +`; + +exports[`RadioGroup > renders with horizontal variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with horizontal variant list correctly 1`] = ` +"
+
-
-
-
+
-
-
-
+
-
-
-
+
@@ -296,37 +357,180 @@ exports[`RadioGroup > renders with disabled correctly 1`] = `
" `; +exports[`RadioGroup > renders with horizontal variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator end correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator hidden correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with indicator start correctly 1`] = ` +"
+
+ +
+ +
" +`; + exports[`RadioGroup > renders with items correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -335,34 +539,34 @@ exports[`RadioGroup > renders with items correctly 1`] = ` exports[`RadioGroup > renders with label slot correctly 1`] = ` "
- -
-
-
+
+

Label slot

-
-
-
-
+
+

Label slot

-
-
-
-
+
+

Label slot

-
+
" @@ -371,34 +575,34 @@ exports[`RadioGroup > renders with label slot correctly 1`] = ` exports[`RadioGroup > renders with labelKey correctly 1`] = ` "
- -
-
-
+
+

1

-
-
-
-
+
+

2

-
-
-
-
+
+

3

-
+
" @@ -407,66 +611,136 @@ exports[`RadioGroup > renders with labelKey correctly 1`] = ` exports[`RadioGroup > renders with legend slot correctly 1`] = ` "
- -
-
-
+
+

Legend slot

-
-
-
-
+
+

Legend slot

-
-
-
-
+
+

Legend slot

-
+
" `; exports[`RadioGroup > renders with modelValue correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with neutral variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with neutral variant list correctly 1`] = ` "
-
-
-
+
-
-
-
+
-
-
-
+
@@ -475,34 +749,103 @@ exports[`RadioGroup > renders with modelValue correctly 1`] = `
" `; -exports[`RadioGroup > renders with orientation correctly 1`] = ` -"
-
+exports[`RadioGroup > renders with neutral variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with primary variant card correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`RadioGroup > renders with primary variant list correctly 1`] = ` +"
+
-
-
-
+
-
-
-
+
-
-
-
+
@@ -511,37 +854,72 @@ exports[`RadioGroup > renders with orientation correctly 1`] = `
" `; +exports[`RadioGroup > renders with primary variant table correctly 1`] = ` +"
+
+ +
+ +
" +`; + exports[`RadioGroup > renders with required correctly 1`] = ` "
- Legend -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -550,34 +928,34 @@ exports[`RadioGroup > renders with required correctly 1`] = ` exports[`RadioGroup > renders with size lg correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -586,34 +964,34 @@ exports[`RadioGroup > renders with size lg correctly 1`] = ` exports[`RadioGroup > renders with size md correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -622,34 +1000,34 @@ exports[`RadioGroup > renders with size md correctly 1`] = ` exports[`RadioGroup > renders with size sm correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -658,34 +1036,34 @@ exports[`RadioGroup > renders with size sm correctly 1`] = ` exports[`RadioGroup > renders with size xl correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -694,34 +1072,34 @@ exports[`RadioGroup > renders with size xl correctly 1`] = ` exports[`RadioGroup > renders with size xs correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -730,34 +1108,34 @@ exports[`RadioGroup > renders with size xs correctly 1`] = ` exports[`RadioGroup > renders with ui correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
" @@ -766,34 +1144,34 @@ exports[`RadioGroup > renders with ui correctly 1`] = ` exports[`RadioGroup > renders with valueKey correctly 1`] = ` "
- -
-
-
+
+

Option 1

-
-
-
-
+
+

Option 2

-
-
-
-
+
+

Option 3

-
+
"