import {
useId,
type ComponentProps,
type HTMLProps,
type ReactNode,
} from 'react'
import Field from '../field'
import './style.scss'
import Fieldset from '../fieldset'
import classNames from 'classnames'
interface CheckboxBaseProps {
id: string
required?: boolean
field: HTMLProps
}
export function CheckboxBase({ id, required, field }: CheckboxBaseProps) {
return (
)
}
interface CheckboxFieldProps {
isInvalid?: boolean
isLoading?: boolean
isRequired?: boolean
isOptional?: boolean
id?: string
label?: ReactNode
helperText?: ReactNode
error?: ReactNode
field: HTMLProps
className?: string
}
export default function CheckboxField({
isInvalid,
isLoading,
isRequired,
isOptional,
id,
label,
helperText,
error,
field,
className,
...rest
}: CheckboxFieldProps) {
const generatedId = useId()
const inputId = id ?? generatedId
return (
)
}
interface CheckboxGroupProps extends ComponentProps {
children: ReactNode
}
function CheckboxGroup({
layout = 'vertical',
legend,
isOptional,
isRequired,
children,
}: CheckboxGroupProps) {
return (
)
}
function CheckboxGroupField(props: CheckboxFieldProps) {
return (
)
}
export const Group = {
Root: CheckboxGroup,
Field: CheckboxGroupField,
}