@@ -64,6 +64,22 @@ export const CheckboxCard = forwardRef<HTMLButtonElement, ICheckboxCardProps>((p
6464 const randomId = useRandomId ( id ) ;
6565 const labelId = `${ randomId } -label` ;
6666
67+ const containerClasses = classNames (
68+ 'group flex min-w-0 cursor-pointer flex-col gap-3 outline-hidden transition-all' , // Layout
69+ 'bg-neutral-0 focus-ring-primary rounded-xl border px-4 py-3 md:gap-4 md:px-6 md:py-4' , // Style
70+ 'border-primary-400 shadow-primary hover:shadow-primary-md' , // Checked/indeterminate & hover
71+ 'data-[state=unchecked]:enabled:shadow-neutral-sm data-[state=unchecked]:enabled:border-neutral-100' , // Unchecked
72+ 'data-[state=unchecked]:enabled:hover:shadow-neutral' , // Unchecked hover
73+ 'disabled:cursor-default disabled:border-neutral-300 disabled:bg-neutral-100 disabled:shadow-none' , // Checked/indeterminate & disabled
74+ 'disabled:data-[state=unchecked]:border-neutral-200' , // Disabled & unchecked
75+ className ,
76+ ) ;
77+
78+ const labelClasses = classNames (
79+ 'max-w-full cursor-pointer truncate text-neutral-800 group-data-[state=unchecked]:text-neutral-800 md:text-base' ,
80+ 'group-data-disabled:cursor-default group-data-[state=unchecked]:group-data-disabled:text-neutral-300' ,
81+ ) ;
82+
6783 return (
6884 < RadixCheckbox . Root
6985 id = { randomId }
@@ -72,28 +88,13 @@ export const CheckboxCard = forwardRef<HTMLButtonElement, ICheckboxCardProps>((p
7288 checked = { checked }
7389 onCheckedChange = { onCheckedChange }
7490 disabled = { disabled }
75- className = { classNames (
76- 'group flex min-w-0 cursor-pointer flex-col gap-3 outline-hidden transition-all' , // Layout
77- 'bg-neutral-0 focus-ring-primary rounded-xl border px-4 py-3 md:gap-4 md:px-6 md:py-4' , // Style
78- 'border-primary-400 shadow-primary hover:shadow-primary-md' , // Checked/indeterminate & hover
79- 'data-[state=unchecked]:enabled:shadow-neutral-sm data-[state=unchecked]:enabled:border-neutral-100' , // Unchecked
80- 'data-[state=unchecked]:enabled:hover:shadow-neutral' , // Unchecked hover
81- 'disabled:cursor-default disabled:border-neutral-300 disabled:bg-neutral-100 disabled:shadow-none' , // Checked/indeterminate & disabled
82- 'disabled:data-[state=unchecked]:border-neutral-200' , // Disabled & unchecked
83- className ,
84- ) }
91+ className = { containerClasses }
8592 { ...otherProps }
8693 >
8794 < div className = { classNames ( 'flex w-full min-w-0 flex-row gap-3' , { 'items-center' : ! description } ) } >
8895 { avatar && < Avatar size = "sm" responsiveSize = { { md : 'md' } } src = { avatar } /> }
89- < div className = "flex min-w-0 flex-1 flex-col items-start gap-0.5 text-sm leading-tight font-normal md:gap-1 md:text-base" >
90- < p
91- id = { randomId }
92- className = { classNames (
93- 'max-w-full cursor-pointer truncate text-neutral-800 group-data-[state=unchecked]:text-neutral-800' ,
94- 'group-data-disabled:cursor-default group-data-[state=unchecked]:group-data-disabled:text-neutral-300' ,
95- ) }
96- >
96+ < div className = "flex min-w-0 flex-1 flex-col items-start gap-0.5 text-sm leading-tight font-normal md:gap-1" >
97+ < p id = { randomId } className = { labelClasses } >
9798 { label }
9899 </ p >
99100 { description && (
0 commit comments